:root {
    /* 1nce Color Palette 2020 (BSS-6486) */
    --light-blue: #29abe2;
    --dark-blue: #194A7D;
    --pale-blue: #effaff;
    --white: #ffffff;
    --gray: #a6a6a6;
    --light-gray: #D7D7D7;
    --darker-gray: #edeced;
    --red: #d9534f;
    
    --green: #71b84a;
    --light-green: rgb(159, 223, 124);
    --yellow:  rgb(255, 225, 120);
    --red: rgb(236, 92, 106);

    --text-muted-color: #828282;
    --normal-text-color: #4a4a4a;
    --light-text-on-dark-blue-background: var(--white);
    --light-background-color: #f9f9f9;
    --dark-background-color: var(--dark-blue);
    --outlined-text-color: var(--dark-blue);

    --footer-height: 80px;
	--simlist-action-footer-height: 175px;
    
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --breakpoint-mobile-design-max-width: 1024px;
}

.color-lightblue {
	color: var(--light-blue);
}
@font-face {
    font-family: 'PortalFont';
    src: url('../fonts/Barlow-Regular.ttf')
        format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'PortalFont';
    src: url('../fonts/Barlow-SemiBold.ttf')
        format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'OpenSans';
    src: url('../fonts/OpenSans-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'OpenSans';
    src: url('../fonts/OpenSans-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
  font-family: '1nce';
  src:  url('../fonts/1nce.eot?3auy60');
  src:  url('../fonts/1nce.eot?3auy60#iefix') format('embedded-opentype'),
    url('../fonts/1nce.ttf?3auy60') format('truetype'),
    url('../fonts/1nce.woff?3auy60') format('woff'),
    url('../fonts/1nce.svg?3auy60#1nce') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Glyphicons Halflings';
  src: url('../fonts/glyphicons-halflings-regular.eot');
  src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: '1nce' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-usage-high:before {
  content: "\e92e";
  color: #96bc3c;
}
.icon-usage-low .path1:before {
  content: "\e92f";
  color: rgb(245, 248, 250);
}
.icon-usage-low .path1-grey:before {
  content: "\e92f";
  color: #dae0e4;
}
.icon-usage-low .path2:before {
  content: "\e930";
  margin-left: -2.0400390625em;
  color: rgb(221, 34, 37);
}
.icon-usage-mid .path1:before {
  content: "\e931";
  color: rgb(239, 115, 30);
}
.icon-usage-mid .path2:before {
  content: "\e932";
  margin-left: -2.0400390625em;
  color: rgb(245, 248, 250);
}
.icon-usage-mid .path2-grey:before {
  content: "\e932";
  margin-left: -2.0400390625em;
  color: #dae0e4;
}
.icon-battery-consumption:before {
  content: "\e900";
}
.icon-bicycle:before {
  content: "\e901";
}
.icon-bidirectional-connection:before {
  content: "\e902";
}
.icon-connected-buttons:before {
  content: "\e903";
}
.icon-cylinders:before {
  content: "\e904";
}
.icon-deep-indoor-penetration:before {
  content: "\e905";
}
.icon-ease-of-use:before {
  content: "\e906";
}
.icon-high-number-of-devices:before {
  content: "\e907";
}
.icon-high-value-assets:before {
  content: "\e908";
}
.icon-lighting:before {
  content: "\e909";
}
.icon-logistics:before {
  content: "\e90a";
}
.icon-low-cost:before {
  content: "\e90b";
}
.icon-low-data-rates:before {
  content: "\e90c";
}
.icon-machine-tools:before {
  content: "\e90d";
}
.icon-pipelines:before {
  content: "\e90e";
}
.icon-public-network:before {
  content: "\e90f";
}
.icon-security-alarms:before {
  content: "\e910";
}
.icon-signal-full:before {
  content: "\e911";
  color: #8ebc4a;
}
.icon-signal-low .path1:before {
  content: "\e912";
  color: rgb(62, 102, 154);
}
.icon-signal-low .path2:before {
  content: "\e913";
  margin-left: -1em;
  color: rgb(225, 38, 49);
}
.icon-signal-low .path3:before {
  content: "\e914";
  margin-left: -1em;
  color: rgb(62, 102, 154);
}
.icon-signal-low .path4:before {
  content: "\e915";
  margin-left: -1em;
  color: rgb(62, 102, 154);
}
.icon-signal-low .path5:before {
  content: "\e916";
  margin-left: -1em;
  color: rgb(62, 102, 154);
}
.icon-signal-mid .path1:before {
  content: "\e917";
  color: rgb(62, 102, 154);
}
.icon-signal-mid .path2:before {
  content: "\e918";
  margin-left: -1em;
  color: rgb(243, 117, 41);
}
.icon-signal-mid .path3:before {
  content: "\e919";
  margin-left: -1em;
  color: rgb(62, 102, 154);
}
.icon-signal-mid .path4:before {
  content: "\e91a";
  margin-left: -1em;
  color: rgb(243, 117, 41);
}
.icon-signal-mid .path5:before {
  content: "\e91b";
  margin-left: -1em;
  color: rgb(243, 117, 41);
}
.icon-simcard:before {
  content: "\e91c";
}
.icon-skips:before {
  content: "\e91d";
}
.icon-smart-agriculture:before {
  content: "\e91e";
}
.icon-smart-city:before {
  content: "\e91f";
}
.icon-smart-meter:before {
  content: "\e920";
}
.icon-smart-parking:before {
  content: "\e921";
}
.icon-smoke-alarm:before {
  content: "\e922";
}
.icon-unknown:before {
  content: "\e923";
}
.icon-verbrauchs-tacho_high .path1:before {
  content: "\e924";
  color: rgb(142, 188, 74);
}
.icon-verbrauchs-tacho_high .path2:before {
  content: "\e925";
  margin-left: -1em;
  color: rgb(255, 255, 255);
}
.icon-verbrauchs-tacho_low .path1:before {
  content: "\e926";
  color: rgb(225, 38, 49);
}
.icon-verbrauchs-tacho_low .path2:before {
  content: "\e927";
  margin-left: -1em;
  color: rgb(255, 255, 255);
}
.icon-verbrauchs-tacho_mid .path1:before {
  content: "\e928";
  color: rgb(243, 117, 41);
}
.icon-verbrauchs-tacho_mid .path2:before {
  content: "\e929";
  margin-left: -1em;
  color: rgb(255, 255, 255);
}
.icon-warehouse-management:before {
  content: "\e92a";
}
.icon-waste-bins:before {
  content: "\e92b";
}
.icon-water-pipe:before {
  content: "\e92c";
}
.icon-white-goods:before {
  content: "\e92d";
}
.hint-icon {
    vertical-align: middle;
    margin-top: 2px;
}

body {
    font-size: 0.81em;
    font-family: 'PortalFont', 'OpenSans';
    font-style: normal;
    height: 100%;
    color: var(--normal-text-color);
    background-color: #f9f9f9;
    min-width: 359px;
}

body.portal {
	min-width: 359px;
}
smaller {
	font-size: 0.8em;
}
#wrapper {
	min-height: calc(100vh - var(--footer-height));
}

.font-size-14 {
    font-size: 14px;
}

.font-size-16 {
    font-size: 16px;
}

.word-break {
    word-break: break-word;
}

p, li, label {
    font-size: 1.3em;
    line-height: 1.8;
}

label {
    color: var(--normal-text-color);
}

p {
    margin: 0 0 30px;
}

ul {
    margin-top: 20px;
}

li {
    line-height: 2em;
}
ol li::marker{
	font-weight: bold;
}

em:not(.table-empty) {
    color: #29abe2;
    font-style: normal;
}

.full-width {
    width: 100% !important;
}

header {
    height: 95px;
    background-color: var(--dark-background-color);
}

header .top .container {
    padding: 0px;
}
header .container ul.show-menu {
    float: right;
}
header .container ul.show-menu li {
    max-width: 122px;
}

header .container nav.mainmenu li {
    max-width: 180px;
    min-width: 74px;
}


#language-selection-dropdown, #language-selection-dropdown #dropdownMenuLink, #currency-selection-dropdown, #currency-selection-dropdown #currencyDropdownMenuLink  {
	border: none;
	background-color: var(--dark-background-color);
	color: var(--light-text-on-dark-blue-background);
	font-weight: normal;
	min-width: 5em;
	z-index: 1000;
	display: flex;
    justify-content: flex-end;
	-webkit-box-orient: horizontal !important;
	-webkit-box-direction: normal !important;
	-ms-flex-direction: row !important;
	flex-direction: row !important;
	-webkit-box-align: center !important;
	-ms-flex-align: center !important;
	align-items: center !important;
	padding-left: 0.3em;
}


#language-selection-dropdown .dropdown-toggle:focus, #currency-selection-dropdown .dropdown-toggle:focus {
	box-shadow: none;
}

#language-selection-dropdown button span, #currency-selection-dropdown button span {
    margin-right: 10px;
}

#dropdownMenuLink, #currencyDropdownMenuLink {
	padding: 0;
}
#dropdownMenuLink:active, #currencyDropdownMenuLink:active, #dropdownMe{
	border: 0;
	box-shadow: none;
}

#language-selection-dropdown .dropdown-menu, #currency-selection-dropdown .dropdown-menu {
	min-width: 4.5em;
	background: var(--light-blue);
	border: 0;
	border-radius:0;
	padding:0;
	margin:0;
	-webkit-box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
}
#language-selection-dropdown .dropdown-toggle:after, #currency-selection-dropdown .dropdown-toggle:after{
	content: none;
}

#language-selection-dropdown .dropdown-menu.show, #currency-selection-dropdown .dropdown-menu.show {
    right: 0px !important;
    left: unset !important;
    top: 21px !important;
    transform: unset !important;
}

#language-selection-dropdown  *> line, #currency-selection-dropdown  *> line {
    fill: none;
    stroke: rgb(191, 191, 191);
    stroke-width: 12px;
    stroke-linecap: square;
    stroke-miterlimit: 10;
}

#language-selection-dropdown .dropdown-item, #currency-selection-dropdown .dropdown-item {
    color:var(--dark-background-color);
	text-transform: uppercase !important;
	padding-top: 10px !important;
	padding-left:1em;
	display: flex !important;
	font-size: 14px;
	line-height: 15px;
}

#language-selection-dropdown.show #dropdown-arrow-down, #currency-selection-dropdown.show #dropdown-arrow-down {
	display: none;
}

#language-selection-dropdown.show #dropdown-arrow-down, #language-selection-dropdown:not(.show) #dropdown-arrow-up, #currency-selection-dropdown.show #dropdown-arrow-down, #currency-selection-dropdown:not(.show) #dropdown-arrow-up {
	display: none;
}
#language-selection-dropdown.show #dropdown-arrow-up, #language-selection-dropdown:not(.show) #dropdown-arrow-down, #currency-selection-dropdown.show #dropdown-arrow-up, #currency-selection-dropdown:not(.show) #dropdown-arrow-down {
	display: block;
}

#language-selection-dropdown .dropdown-item.active,  #currency-selection-dropdown .dropdown-item.active {
    color:white; 
    background-color: var(--light-blue);
}

a {
	color: #29abe2;
}

.logo-row {
    margin-bottom: 0px;
}

.logo {
    position: relative;
    top: 10px;
    height: 78px;
    width: 135px;
}

ul.nav {
    margin-top: 30px;
}

ul.nav li {
    text-align: right;
}

ul.nav li a {
    cursor: pointer;
}

ul.nav li a.active{
    font-weight: bold;
}

ul.nav li a:hover, ul.nav li a:focus {
    color: #29abe2;
    background: none;
}

.nav>li.disabled>a {
	color: grey !important;
}

.navbar-toggle .icon-bar {
    width: 60px;
    height: 5px;
    margin-bottom:10px;
    border-radius: 0px;
    background-color: white;
}

.title-container {
    margin-top: 0px;
    margin-bottom: 50px;
}

.title-container .title h1 {
  font-family: 'PortalFont';
  font-size: 48px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.38;
  letter-spacing: normal;
  color: #194a7d;
}

.title-container .sub-title h2 {
    margin-top: 0px;
    font-size: 22px;
    color: var(--normal-text-color);
    text-transform: none !important;
}

.menu-modal .modal-dialog {
    margin: 0px;
}

.menu-modal .modal-content {
    border: none;
    border-radius: 0px;
    height: 100%;
    background-color: #26527f;
    font-size: 2em;
    padding: 20px;
    text-align: center;
    padding-top: inherit;
    padding-bottom: inherit;
}

.menu-modal .modal-content a {
    display: block;
    color: #a3e5ff;
}

.menu-modal .modal-content a.active {
    color: white;
}

.menu-modal .modal-content hr {
    border-top: 1px solid white;
    width: 30px;
}

.menu-modal .modal-content .nav {
    margin-top: 50%;
}

.menu-modal .close {
    font-size: 90px;
    font-weight: normal;
    line-height: 0.5;
    color: #fff;
    text-shadow: none;
    opacity: 1;
}

.text-danger {
    color: red;
}

.text-warning {
    color: #fcf8e3;
}

.text-success {
    color: #dff0d8;
}

img {
    max-width: 100%;
}
.imggrey {
    filter: gray; /* IE6-9 */
    -webkit-filter: grayscale(1); /* Google Chrome, Safari 6+ & Opera 15+ */
    filter: grayscale(1); /* Microsoft Edge and Firefox 35+ */
}

.deactivateAll {
    pointer-events: none;
    filter: gray; /* IE6-9 */
    -webkit-filter: grayscale(1); /* Google Chrome, Safari 6+ & Opera 15+ */
    filter: grayscale(1); /* Microsoft Edge and Firefox 35+ */
}

.blue {
    color: #26527f !important;
}

.bold {
    font-weight: bold;
}

header .bottom {
    position: relative;
    top: -79px;
    height: 267px;
    background-repeat: no-repeat;
    background-size: 100% 1172px;
    background-position-y: -905px;
}

.punchline {
    position: absolute;
    top: -60px;
    padding-left: 250px;
    height: 400px;
}

.punchline h1 {
    font-family: 'PortalFont';
    color: white;
    text-transform: uppercase;
    font-size: 3.6em;
    font-weight: bold;
    position: relative;
}

.punchline h2 {
    font-family: 'PortalFont';
    color: #29abe2;
    text-transform: uppercase;
    font-style: italic;
    font-weight: lighter;
    position: relative;
    margin-top: 0px;
}

.content h1 {
    font-family: 'PortalFont';
    position: relative;
    display: inline-block;
/*     text-transform: uppercase; */
    color: #194a7d;
    line-height: 1.38;
    letter-spacing: normal;
    font-size: 48px;
    font-weight: normal;
}

.content h2 {
    font-family: 'PortalFont';
    position: relative;
    display: inline-block;
/*     text-transform: uppercase; */
    color: var(--normal-text-color);
    font-size: 35px;
    letter-spacing: normal;
    font-weight: normal;
}

.content h3 {
    font-family: 'PortalFont';
    position: relative;
    display: inline-block;
/*     text-transform: uppercase; */
    font-size: 21px;
    font-weight: 600;
}

.content .underline {
    display: block;
    width: 90px;
    border-bottom: 4px solid #a3e5ff;
    margin-left: 3px;
    margin-top: 12px;
    margin-bottom: 60px;
}

.content .underline-grey {
    display: block;
    width: 90px;
    border-bottom: 2px solid #d1d1d1;
    margin-top: 12px;
    margin-bottom: 60px;
}

.row {
    margin-bottom: 20px;
    margin-right: 0px;
}

.profile {
    margin-top: 5px;
    margin-bottom: 5px;
    padding-top: 30px;
    padding-bottom: 30px;
    background-color: #f7f7f7;
    text-align: center;
    height: 500px;
}

.profile-sm {
    background: none;
    width: 190px;
    height: 380px;
    
}

.profile img {
    margin-bottom: 30px;
    width: 188px;
}

.profile-sm img{
    width: 130px;
}

hr {
    width: auto;
}

.panel-body .line {
  background-image: linear-gradient(to right, rgba(0,0,0,0.25) 30%, rgba(255, 255, 255, 0) 0%);
  background-position: top;
  background-size: 7px 2px;
  background-repeat: repeat-x;
  height: 2px;
  width: 100%;
  margin-top: 15px;
  margin-bottom: 15px;
}

.panel-body .line-f-l {
  background-image: linear-gradient(to right, rgba(0,0,0,0.25) 30%, rgba(255, 255, 255, 0) 0%);
  background-position: top;
  background-size: 7px 2px;
  background-repeat: repeat-x;
  height: 2px;
  width: 100%;
  margin-top: 15px;
  margin-bottom: 15px;
  float: left;
}

.panel-body .white-line {
  background-image: linear-gradient(white, white);
  background-position: top;
  background-size: 7px 2px;
  background-repeat: repeat-x;
  height: 2px;
  width: 100%;
  margin-top: 15px;
  margin-bottom: 15px;
}

.segment {
    text-align: center;
    min-height: 410px;
}

.segment img {
    height: 140px;
    border: 5px solid #29abe2;
    border-radius: 70px;
    padding: 10px;
    margin-bottom: 25px;
}

.tariff-box {
    text-align: center;
    font-size: 2.6em;
    border: 3px solid #f4f4f4;
    width: 270px;
    height: 350px;
    margin-top: 100px;
    max-width: 100%;
}

.tariff-box .sim {
    background-image: url(../img/pricing_sim.png);
    background-size: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.tariff-box .price {
    color: #29abe2;
    font-size: 1.8em;
    font-weight: bold;
}

.tariff-sm .sim {
    height: 131px;
    width: 130px;
    top: -68px;
    margin-bottom: -34px;
}

.tariff-md .sim {
    height: 161px;
    width: 160px;
    top: -83px;
    margin-bottom: -63px;
}

.tariff-lg .sim {
    height: 182px;
    width: 180px;
    top: -93px;
    margin-bottom: -84px;
}

.tariff-box hr {
    margin-top: 30px;
    margin-bottom: 10px;
}

.tariff-box-start {
    display: inline-block;
    text-align: center;
    width: 200px;
    height: 350px;
    max-width: 100%;
}

.tariff-box-start .mb {
    position: relative;
    color: #26527f;
    top: -30px;
    -webkit-transform: rotate(-13deg);
    transform: rotate(-13deg);
    font-weight: normal;
}

.tariff-box-start .sim {
    background-image: url(../img/pricing_sim.png);
    background-size: 100%;
    background-position: bottom;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    height: 182px;
}

.tariff-box-start .years {
    font-size: 5em;
    font-weight: bolder;
    color: #26527f;
    top: -25px;
    position: relative;
}

.tariff-box-start .years label {
    display: block;
    font-size: 20px;
    font-weight: lighter;
    text-transform: uppercase;
    color: #29abe2;
    font-style: initial;
    position: relative;
    top: -15px;
}

.tariff-start-sm .sim {
    background-size: 130px;
}

.tariff-start-md .sim {
    background-size: 160px;
}

.tariff-start-lg .sim {
    background-size: 180px;
}

.tariff-start-sm .mb {
    font-size: 1.1em;
    top: -38px;
}

.tariff-start-md .mb {
    font-size: 1.2em;
    top: -50px;
}

.tariff-start-lg .mb {
    font-size: 1.8em;
    top: -57px;
}

.extendable-row {
    display: inline-flex;
    align-items: end;
    height: unset !important;
}

.cursor-pointer {
    cursor: pointer;
    padding-left: 5px;
    color: var(--light-blue) !important;
}

a:hover {
    text-decoration: none;
}

input[type=number]::-webkit-inner-spin-button {
    opacity: 1;
    font-size: 1.4em;
}

input[type=checkbox].form-control {
    display: inline-block;
    width: 30px;
}

input[type=text].form-control,
input[type=number].form-control,
input[type=password].form-control {
    background-color: #3c6897;
    border: 2px solid #3c6897;
	color: white;
    box-shadow: none;
    font-size: 1.3em;
    height: 44px;
    padding: 0px 13px;
    border-radius: 4px;
}

input[type=text].form-control.input-white,
input[type=number].form-control.input-white,
input[type=password].form-control.input-white,
select.form-control.input-white {
	background-color: #fff;
	border: solid 1px #bfbfbf;
	color: black;
}

input[type=text].form-control.input-transparent,
input[type=number].form-control.input-transparent,
input[type=password].form-control.input-transparent,
select.form-control.input-white {
	background-color: transparent;
	border: solid 1px #bfbfbf;
	color: black;
}

.portal input[type=text],
.portal input[type=password],
.portal input[type=number],
.portal textarea[type=text],
.portal input[type=text].form-control,
.portal input[type=password].form-control,
.portal input[type=number].form-control,
.portal textarea[type=text].form-control {
    border: 1px solid #bfbfbf;
    border-radius: 4px;
    background-color: transparent;
    color: var(--normal-text-color);
}

select.form-control[disabled], input.form-control[disabled],
.portal select.form-control[disabled], .portal input.form-control[disabled] {
	border:none;
	background-color: #cfcfcf;
	color: black;
}

textarea.form-control:not([rows]) {
    box-shadow: none;
    font-size: 1.3em;
    height: 92px;
    line-height: 24px;
    padding: 6px 13px;
    border-radius: 4px;
}

:-ms-input-placeholder {
  color: #999999 !important;
}

.cart-product input[type=text].form-control {
    background-color: white;
}

.cart-product .usp-info-graphic {
	font-size:18px;
	
}
.cart-china-hint {
	float: left;
	font-size: 18px;
	margin-bottom: 1em;
}
.cart-china-hint .hint-icon {
	width: 1.5em;
	float: left;
}
.cart-china-hint .hint-text {
	width: calc(100% - 2em);
	margin-left: 0.5em;
	float: left;
}

select.form-control {
    background-color: #3c6897;
    border: 2px solid #3c6897;
    border-radius: 4px;
    box-shadow: none;
    height: 44px;
    color: #21486F;
    font-size: 1.3em;
    color: white;
}

.portal select.form-control {
	color: var(--normal-text-color);
	background-color: transparent;
}

select.form-control:focus, select.form-control:hover,
input[type=text].form-control:hover, input[type=text].form-control:focus,
input[type=password].form-control:hover, input[type=password].form-control:focus {
    border-color: var(--light-blue);
}

.form-group {
    position: relative;
    margin-top: 1rem;
}

.portal .form-group {
    margin-top: 0;
    margin-bottom: 5px;
}

.has-error .text-danger {
    text-align: left;
}

textarea.output {
    border: none;
    width: 100%;
    height: 200px;
    resize: none;
}

textarea.output:focus {
    outline: none !important;
}

.left {
	float: left;
}

.menu-overflow {
	overflow: hidden;
	z-index: 500;
}

.simlist-container{
    max-width: 85%!important;
    width: 85%!important;
    margin-right: auto!important;
    margin-left: auto!important;
}

ol.carousel-indicators > li {
    background-color: #d1d1d1;
}

ol.carousel-indicators > li.active {
    background-color: #29abe2;
}

.footer {
    border-top: 3px solid white;
    background: #194a7d;
    color: #FFFFFF;
    font-weight: 400;
    width: 100%;
    height: var(--footer-height);
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 100;
    overflow-y: auto;
}

.footer .container {
    height: calc(100% - 4px);
}
.footer .container .row {
	height: 100%;
	margin: 0;
}
.footer .copyright {
    font-size: 1.3em;
}
.footer a {
	color: var(--light-blue);
}
.footer a:hover, .footer a:active, .footer a:focus, .footer a:active:focus {
	color: var(--white);
}

.imprint-links ul {
	list-style-type: none;
	display: inline;
}
.imprint-links ul li {
	float: left;
	margin-left: 2em;
}

.imprint-links *> a {
    font-size: 1.3em;
}

.btn {
    border-radius: 4px; 
    color: black;
    border: 2px solid black;
    font-weight: bold;
    padding: 10px 40px;
    font-size: 1.3em;
    white-space: nowrap;
    width: max-content;
}

.btn-primary:hover, 
.btn-primary:focus {
	background: linear-gradient(315deg, transparent 15px, var(--light-blue) 15px);
	background-color: transparent;
	box-shadow: none;
	outline: none;
}

button:focus {
	outline: none;
}

.btn-primary:active, 
.btn-primary:active:focus,
.btn-primary:not(:disabled):not(.disabled).active, 
.btn-primary:not(:disabled):not(.disabled):active, 
.show>.btn-primary.dropdown-toggle,
.btn-primary:not(:disabled):not(.disabled).active:focus, 
.btn-primary:not(:disabled):not(.disabled):active:focus, 
.show>.btn-primary.dropdown-toggle:focus{ 
	background: linear-gradient(315deg, transparent 15px, var(--dark-background-color) 15px);
	background-color: transparent;
	box-shadow: none;
}

.btn-primary, .btn-primary:disabled {
	position: relative;
    border: none;
    color: var(--light-text-on-dark-blue-background);
    background: linear-gradient(315deg, transparent 15px, var(--dark-background-color) 15px);
    padding: 15px 40px;
    vertical-align: middle;
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 1px;
    border-radius: 0;
}

.btn-logout {
	position: relative;
	padding: 10px 20px;
    border: none;
    background-color: var(--dark-background-color);
    color: var(--light-text-on-dark-blue-background);
    border: 1px solid var(--light-blue);
    vertical-align: middle;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 1px;
    border-radius: 0;
    line-height: 8px;
    z-index: 1;
}
.btn-logout:after {
	content: '';
	width: 16px;
	height: 20px;
	background: var(--dark-background-color);
	border: 1px solid var(--light-blue);
	transform: rotate(-132deg);
	position: absolute;
	border-top: 0;
	border-left: 0;
	border-bottom: 0;
	top: auto;
	right: -6px;
	bottom: -9px;
}

.btn-logout:hover,
.btn-logout:focus {
	background-color: var(--light-blue);
	border-color: var(--light-gray);
}
.btn-logout:hover:after,
.btn-logout:focus:after {
	border-color: var(--light-gray);
}

.btn-primary.disabled, .btn-primary:disabled {
	background-color: initial;
}

.btn-default {
	position: relative;
    border: none;
    background-color: var(--light-background-color);
    color: var(--outlined-text-color);
    border: 1px solid var(--outlined-text-color);
    padding: 15px 30px;
    vertical-align: middle;
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 1px;
    border-radius: 0;
}
.btn-default:after {
	content: '';
	width: 20px;
	height: 33px;
	background: var(--light-background-color);
	border: 1px solid var(--outlined-text-color);
	transform: rotate(-132deg);
	position: absolute;
	border-top: 0;
	border-left: 0;
	border-bottom: 0;
	top: auto;
	right: -5px;
	bottom: -13px;
}


.btn-default:hover, .btn-default:active, .btn-default:focus, .btn-default:active:focus {
    background-color: var(--dark-blue);
    color: var(--white) !important;
}

.btn-dark:after {
    content: '';
    width: 20px;
    height: 33px;
    background: var(--dark-background-color);
    border: 1px solid var(--outlined-text-color);
    transform: rotate(-132deg);
    position: absolute;
    border-top: 0;
    border-left: 0;
    border-bottom: 0;
    top: auto;
    right: -5px;
    bottom: -13px;
}

.btn-dark:hover, .btn-dark:active, .btn-dark:focus, .btn-dark:active:focus {
    background-color: var(--light-blue);
    color: var(--white);
}

.btn-cancel {
	position: relative;
	padding: 10px 20px;
    border: none;
    background-color: var(--light-gray);
    color: var(--outlined-text-color);
    border: 1px solid var(--light-gray);
    padding: 15px 30px;
    vertical-align: middle;
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 1px;
    border-radius: 0;
}
.btn-cancel:after {
	content: '';
	width: 20px;
	height: 33px;
	background: var(--light-background-color);
	border: 1px solid var(--light-gray);
	transform: rotate(-132deg);
	position: absolute;
	border-top: 0;
	border-left: 0;
	border-bottom: 0;
	top: auto;
	right: -5px;
	bottom: -13px;
}

.btn-cancel:hover, .btn-cancel:active, .btn-cancel:focus, .btn-cancel:active:focus {
    background-color: var(--dark-blue);
    color: var(--white);
}

.btn-test {
    background-color: #d0312d;
    color: #fff;
}
.btn-widget {
    font-size: 14px;
    line-height: 14px;
}

.btn-actionbar {
    min-width: 12em;
    justify-content: space-between;
    display: flex;
}

.btn-white-background:after {
	background: white;
}

.btn-light-background:after {
	background: var(--light-background-color) !important;
}

.btn-small {
    padding: 18px 40px;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 1px;
    border-radius: 0;
    line-height: 8px;
    text-transform: none !important;
}

.btn.disabled, .btn:disabled {
    cursor: default;
}

/* Override Bootstrap */
.btn-portal-light, .btn-portal-dark {
    border-radius: unset;
    border-color: transparent;
    font-weight: normal;
    font-size: 16px;
}

.btn-portal-light, .btn-portal-light:disabled, .btn-portal-light:hover:disabled {
    background-color: var(--light-blue);
}

.btn-portal-dark, .btn-portal-dark:disabled, .btn-portal-dark:hover:disabled {
    background-color: var(--dark-blue);
}
.btn-portal-light-outline:disabled, .btn-portal-dark-outline:disabled{
    opacity: 0.4995;
}

.btn-portal-light-outline, .btn-portal-dark-outline{
    border-radius: unset;
    border-color: var(--light-blue);
    border-width: 1px;
    font-weight: normal;
    position: relative;
    padding-top: 9px;
    padding-bottom: 9px;
    font-size: 16px;
}

.btn-portal-light-outline {
    color: var(--light-blue);
}

.btn-portal-light-outline::after, .btn-portal-dark-outline::after{
    content: '';
    width: 16px;
    height: 20px;
    background-color: var(--white);
    border: 1px solid var(--light-blue);
    transform: rotate(-132deg);
    position: absolute;
    border-top: 0;
    border-left: 0;
    border-bottom: 0;
    top: auto;
    right: -6px;
    bottom: -9px;
}

.btn-portal-light-outline:hover,
.btn-portal-light-outline:focus {
    background-color: var(--light-blue);
    border-color: var(--light-gray);
    color: white;
}

.btn-portal-light-outline:hover:disabled,
.btn-portal-light-outline:focus:disabled {
    background-color: unset;
    border-color: var(--light-blue);
    color: var(--light-blue);
}

.action-footer-button-block .btn-portal-light-outline::after {
    background-color: var(--pale-blue);
}

.panel-body .btn-portal-light-outline::after {
    background-color: var(--light-background-color);
}

.btn-modal::after {
  background-color: var(--white) !important;
}

/* Create button shape */
.btn-portal-light, .btn-portal-dark{
    border: 0px;
    clip-path:polygon(0 0, 100% 0, 100% calc(100% - 15px), calc(100% - 16px) 100%, 0% 100%);
    -webkit-clip-path:polygon(0 0, 100% 0, 100% calc(100% - 15px), calc(100% - 16px) 100%, 0% 100%);
    padding-top: 10px;
    padding-bottom: 10px;
    position: relative;
}



.btn-portal-light , .btn-portal-light:disabled, .btn-portal-dark, .btn-portal-dark:disabled {
    color: var(--white);
}

.btn-portal-dark:hover {
    background-color: var(--light-blue);
    color: var(--white);
}

.btn-portal-light-outline.btn-actionbar img {
    filter: invert(48%) sepia(74%) saturate(465%) hue-rotate(153deg) brightness(103%) contrast(98%);
}

.btn-portal-light-outline.btn-actionbar:hover img {
    filter: none;
}

.btn-danger {
    background-color: var(--red);
    color: var(--white);
}

.btn-danger:hover {
    background-color: #d0312d;
    color: #fff;
}

.btn-portal-light.btn-danger:disabled {
    background-color: var(--red);
}

/* "Grey out" disabled buttons */
.btn-portal-light-outline:disabled, .btn-portal-dark:disabled {
    opacity: 0.4995;
}


#sim-action-boost-sim {
	padding: 10px 40px;
    font-size: 16px;
}

/*
=======================
SPINNER
=======================
*/
.spinner-overlay {
  display: table;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 999;
  opacity: 0.8;
}

#cardElementContainer .spinner-overlay {
	background-color: #fafafa;
}

.invisible-spinner-overlay {
  opacity: 1 !important;
}

.spinner {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.ispinner {
  margin: auto;
}

div.ranges ul {
  margin-left: -5px !important;
}

.overlay {
  display: table;
  position: absolute;
  background-color: white;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 950;
  opacity: 0.65;
}

.spinner-complete-overlay {
    z-index: 99999999 !important;
}

.cart-product .header {
    padding-bottom: 20px;
    margin-top: 30px;
}

.cart-product .config>label {
    display: block;
    text-transform: uppercase;
    font-size: 1.1em;
    font-weight: normal;
}

.cart-product .product-name{
    font-size: 1.9em;
}

.cart-product .product-name:before {
    content: '';
    background-image: url(../img/1nce_sim_02.png);
    background-size: 100%;
    height: 249px;
    width: 396px;
    margin-right: 25px;
    background-repeat: no-repeat;
    display: block;
    float: left;
    margin-top: -20px;
}

.cart-summary-header {
    font-weight: bold;
}

.cart-summary-item {
    margin-top: 2em;
    margin-bottom: 2em;
    line-height: 100%;
}

.cart-summary-basket {
    color: var(--normal-text-color) !important;
}

.cart-summary-product-first-row {
    font-weight: bold;
}

.cart-product .config {
    display: inline-block;
    margin-right: 35px;
}

.cart-amount-info {
    color: #828282;
}

.cart-product .config label.btn-default {
    background: none;
    border-color: #ccc;
    padding: 12px 20px;
    margin-right: -2px;
    text-transform: none;
    color: var(--normal-text-color);
}

.cart-product .config select {
    background: none;
    border: 2px solid #afafaf;
    padding: 12px 20px;
    width: auto;
    box-shadow: none;
    margin-top: -2px;
    color: black;
    font-weight: bold;
    font-size: 1.3em;
}

.cart-product .config input.form-control {
    border: 2px solid #e0e0e5;
    color: black;
    font-size: 1.3em;
    padding: 12px 20px;
    width: 150px;
    margin-bottom: 0px;
    margin-top: -2px;
    height: 58px;
    font-weight: bold;
}

.cart-product .config input.form-control:hover, .cart-product .config input.form-control:focus {
    border-color: #deea34;
    box-shadow: 0 0 4px rgba(222,234,52,.5);
}

.cart-product .config input.form-control:focus {
    background-color: white;
}

.cart-product .config label.btn-default {
    font-size: inherit;
}

.cart-product .config label.btn-default.active {
    background: none;
    border: 3px solid #deea34;
    box-shadow: none;
    padding: 9px 20px;
    margin-top: -2px;
    z-index: 200;
}

.cart-product .config label.btn-default.active:after {
    content: '';
    display: inline-block;
    border-top: 4px solid #deea34;
    border-left: 4px solid #deea34;
    width: 8px;
    height: 8px;
    position: absolute;
    bottom: -4px;
    left: 45%;
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
}

.link-reset-password {
    font-size: 14px;
}

.cart-product .sim-format {
	font-weight: bold;
	font-size: 1.4em;
	line-height:3em;
}

.price {
    text-align: right;
}

.cart-product .price .unit {
    line-height: 1.8;
    font-size: 1.1em;
}

.cart-total {
    padding-top: 10px;
    padding-bottom: 10px;
}

.cart-total>div:first-of-type {
    font-size: 1.2em;
}

.remove-product {
    display: block;
    text-align: center;
}

.add-product {
    height: 70px;
    width: 100%;
    text-align: center;
    border: none;
    background-color: #e9f6fc;
    color: #29abe2;
    text-transform: none;
    padding-top: 25px;
}

.price .total {
    font-size: 2.5em;
    font-weight: bold;
}

.text-muted {
    color: var(--text-muted-color);
}

.form-control::placeholder {
	color: #aab7c4;
}

input[type=text].form-control {
    margin: 0px;
}

input.form-control.has-error {
    border-color: #a94442;
}

.has-success input.form-control {
    border-color: #2baf2e;
}

input:focus {
    outline: none !important;
}

.border-bottom {
    border-bottom: 2px solid #e0e0e0;
}

.summary-row {
    display:table;
}

.summary-config, .summary-price {
    display: block;
    height: 60px;
    padding: 15px 0px 15px 0px;
    font-size: 1.1em;
}

.summary-config>.summary-table-header, .summary-price>.summary-table-header{
    display: block;
    text-transform: uppercase;
    font-size: 1.1em;
    color: #afafaf;
    font-weight: normal;
    margin-bottom: 0.5em;
}

.summary-price {
    text-align: right;
}

.summary-config>.summary-table-cell{
    font-size: 1.2em;
    font-weight: bold;
}

.summary-price>.summary-table-cell{
    font-size: 1.8em;
    line-height: 0.8em;
    font-weight: bold;
    color: #26527f;
    text-align: right;
}

.payment-card-icon {
	height: 50px;
	margin-right: 1em;
}

h4 {
    font-weight: bold;
    margin-bottom: 1em;
}

.personal-data {
    font-size: 1.3em;
}

.sepa-payment-hint {
    margin-top: 10px;
}

ul.step-wizard {
    width: 100%;
    padding-left: 0px;
    margin-top: 0px;
    font-size: 1.2em;
    display: flex;
    justify-content: space-between;
}

ul.step-wizard li {
  display: inline-block;
/*   padding-right: 50px; */
  padding-top: 5px;
/*   height: 35px; */
  font-family: PortalFont;
  font-size: 16px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.88;
  letter-spacing: normal;
  color: #828282;
}

span.step-index {
    width: 35px !important;
    height: 35px !important;
    font-family: PortalFont;
    font-size: 16px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.88;
    letter-spacing: normal;
    text-align: center;
    color: #29abe2;
    background-color: #fff;
    vertical-align: middle;
    border-radius: 50%;
    border: 1px solid #29abe2;
    display: inline-block;
    -webkit-font-smoothing: antialiased;
    position: relative;
    top: -20px;
}

ul.step-wizard li.active span,
ul.step-wizard li.previous span {
    color: #29abe2;
}

ul.step-wizard span.step-index.active,
ul.step-wizard span.step-index.previous {
    color: #fff;
    background-color: #29abe2;
    /* color: #29abe2; */
    /* 	background-color: #fff; */
}

div.step-wizard-line {
    height: 0px;
    z-index: -1000;
    background-color: #29abe2;
    border: 2px solid #29abe2;
    width: 100%;
    position: absolute;
    right: 0px;
    float: right;
    padding: 0px;
    margin: 0px;
}

.alert-container {
	position: sticky;
	top: 10px;
	z-index: 980;
}
.alert {
    border-radius: 0px;
    font-size: 1.5em;
}

.alert-dismissable .close, .alert-dismissible .close {
    font-size: 1.6em;
}

.country-info {
    display: block;
    color: gray;
    margin-top: 10px;
}

.alert-dismissible .close {
	top: 3px;
	color: var(--green);
}

.notification-message {
	text-align: right;
}

.alert-danger {
	background-color: white;
    border: none;
    padding-top: 15px;
    padding-bottom: 15px;
    color: var(--red);
}

.alert-success {
	background-color: white;
    border: none;
    padding-top: 15px;
    padding-bottom: 15px;
    color: var(--green);
}

.status-circle {
    margin-top: 3px; 
}

.status-circle[data-status='0'] {
    color: #999;
}

.status-circle[data-status='1'] {
    color: #96bc3c;
}

.status-circle[data-status='8'], .status-circle[data-status='99'] {
    color: rgb(221, 34, 37);
}

.status-circle.orange, .status-circle[data-status='9'] {
    color: #ffaa00;
}

.panel {
    margin: 20px;
    border: none;
    border-radius: 8px;
}

.panel-sharp {
    border-radius: 0px;
    box-shadow: none !important;
}

.panel-white {
    background-color: #fff;
    -moz-box-shadow: 0 4px 8px 0 #ddd;
    -webkit-box-shadow: 0 4px 8px 0 #ddd;
    box-shadow: 0 4px 8px 0 #ddd;
}

.panel-light-grey {
    background-color: #f2f2f2;
    border-radius: 0px;
}

.panel-primary {
    background-color: #21486F;
    border-radius: 10px;
    color: white;
    text-align: center;
}

#login-panel {
    padding-left: 2em;
    padding-right: 2em;
    padding-bottom: 1em;
}

#login-panel .login-button-container {
    border-top: 2px dotted #e0e0e5;
    margin-left: 3px;
}

.gray-input {
    background-color: #21486F;
    
}

.form-control.has-error {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

.form-control.has-error ~ label {
    color: red !important;
}

.has-error input[type=text].form-control, 
.has-error textarea.form-control,
.has-error input[type=password].form-control, 
.has-error select.form-control,
.has-error .form-control:focus,
.has-error {
    border-color: #843534 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.row.nav-row {
    margin-bottom: 0;
}

.modal button.close > span {
    font-size: 2em;
    line-height: 0.75;
}

.grey-underline {
    border-bottom: 5px solid #828282;
}
.underline {
    border-bottom: 2px solid #26527f;
}

.modal-portal .modal-content {
	border-radius: 0;
	padding: 1.5em 2em;
	min-height: 15em;
}
.modal-portal .modal-body {
    padding: 1em;
}
.modal-portal .modal-header {
    padding: 1em;
	border-bottom: 0;
}
.modal-portal .modal-header .modal-title {
	font-weight: bold;
}
.modal-portal .modal-footer {
	border-top: 0;
	padding: 1rem;
}
.modal-portal .modal-header button.close {
	font-weight: normal;
}

/*
=======================
New checkbox style
=======================
*/
.checkbox {
  padding-left: 20px;
}
.checkbox label {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  padding-left: 35px;
  margin-left: 20px;
}

.checkbox label::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 17px;
  height: 17px;
  left: 0;
  margin-left: -20px;
  border: solid 1px #bfbfbf;
  border-radius: 4px;
  background-color: #fafafa;
  -webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  -o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
}
.checkbox-right label {
	margin-left:0;
	padding-left:0;
	font-size: unset;
	padding-right: 35px;
	width: 100%;
}
.checkbox-left label {
    margin-left:0;
    padding-left:35px;
    font-size: unset;
    padding-right: 0px;
    width: 100%;
}
.checkbox-right label::before {
	display: none;
}
.checkbox label::after {
  display: inline-block;
  position: absolute;
  width: 16px;
  height: 16px;
  left: 0;
  top: 0;
  margin-left: -20px;
  padding-left: 3px;
  padding-top: 1px;
  font-size: 11px;
  color: #555555;
  line-height: 1.4;
}
.checkbox-left label::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 17px;
    height: 17px;
    right: unset;
    top: 0;
    left: 0.95em;
    margin-left: -20px;
    border: solid 1px #bfbfbf;
    border-radius: 4px;
    background-color: #fafafa;
    -webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
    -o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
    transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
}
.checkbox-left label::after {
    display: none;
}
.checkbox-right label::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 17px;
  height: 17px;
  right: -70px;
  top: 0;
  left: unset;
  margin-left: -20px;
  border: solid 1px #bfbfbf;
  border-radius: 4px;
  background-color: #fafafa;
  -webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  -o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
}
.checkbox input[type="checkbox"] {
  display: none;
  opacity: 0;
  z-index: 1;
  cursor: pointer;
  width: 0px;
  position: absolute;
}
.checkbox input[type="checkbox"]:focus+label::before {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.checkbox input[type="checkbox"]:checked~label::after {
  display: inline-block;
  content: "";
  background-image: url("data:image/svg+xml,<svg class='bi bi-check' width='1.88em' height='1.88em' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor'><path fill-rule='venodd' d='M15.854 5.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L8.5 12.293l6.646-6.647a.5.5 0 01.708 0z' clip-rule='evenodd' /></svg>"); 
  background-repeat: no-repeat;
  background-size: 100%;
}
.checkbox-l-fix input[type="checkbox"]:checked + label::after {
  left: 1px !important;
  top: -2px;
}

.checkbox input[type="checkbox"]:indeterminate + label::after {
  display: block;
  content: "";
  width: 10px;
  height: 3px;
/*   background-color: #555555; */
/*   border-radius: 1px; */
  margin-left: -16.5px;
  margin-top: 7px;
}
.checkbox input[type="checkbox"]:disabled {
  cursor: not-allowed;
}
.checkbox input[type="checkbox"]:disabled + label {
  opacity: 0.65;
}
.checkbox input[type="checkbox"]:disabled + label::before {
  background-color: #eeeeee;
  cursor: not-allowed;
}
.checkbox.checkbox-circle label::before {
  border-radius: 50%;
}
.checkbox.checkbox-inline {
  margin-top: 0;
}

.checkbox-primary input[type="checkbox"]:checked + label::after {
  color: black;
}

.checkbox-danger input[type="checkbox"]:checked + label::before {
  background-color: #d9534f;
  border-color: #d9534f;
}
.checkbox-danger input[type="checkbox"]:checked + label::after {
  color: #fff;
}

.checkbox-info input[type="checkbox"]:checked + label::before {
  background-color: #5bc0de;
  border-color: #5bc0de;
}
.checkbox-info input[type="checkbox"]:checked + label::after {
  color: #fff;
}

.checkbox-warning input[type="checkbox"]:checked + label::before {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}
.checkbox-warning input[type="checkbox"]:checked + label::after {
  color: #fff;
}

.checkbox-success input[type="checkbox"]:checked + label::before {
  background-color: #5cb85c;
  border-color: #5cb85c;
}
.checkbox-success input[type="checkbox"]:checked + label::after {
  color: #fff;
}

.checkbox-primary input[type="checkbox"]:indeterminate + label::before {
  background-color: #3c6897;
  border-color: #3c6897;
}

.checkbox-primary input[type="checkbox"]:indeterminate + label::after {
  background-color: #fff;
}

.checkbox-danger input[type="checkbox"]:indeterminate + label::before {
  background-color: #d9534f;
  border-color: #d9534f;
}

.checkbox-danger input[type="checkbox"]:indeterminate + label::after {
  background-color: #fff;
}

.checkbox-info input[type="checkbox"]:indeterminate + label::before {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.checkbox-info input[type="checkbox"]:indeterminate + label::after {
  background-color: #fff;
}

.checkbox-warning input[type="checkbox"]:indeterminate + label::before {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.checkbox-warning input[type="checkbox"]:indeterminate + label::after {
  background-color: #fff;
}

.checkbox-success input[type="checkbox"]:indeterminate + label::before {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.checkbox-success input[type="checkbox"]:indeterminate + label::after {
  background-color: #fff;
}

.checkbox [type="checkbox"]~label:before,
.checkbox [type="checkbox"]:not(.filled-in)~label:after{
    width: 35px;
    height: 35px;
}

/* Checkbox-Box */
.modal-portal .checkbox label::before, .modal-portal .checkbox label::after {
	width: 20px;
	height: 20px;
	margin-top: 0.4em;
}
.modal-portal .checkbox label {
	padding-left: 0.8em;
}
.modal-portal .checkbox input[type="checkbox"]:checked~label::after {
	/* blue tick */ 
	background-image: url("data:image/svg+xml,<svg class='bi bi-check' width='1.88em' height='1.88em' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='white'><path fill-rule='venodd' d='M15.854 5.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L8.5 12.293l6.646-6.647a.5.5 0 01.708 0z' clip-rule='evenodd' /></svg>");
	background-color: var(--light-blue);
	width: 20px;
	height: 20px;
	border-radius: 4px;
	border: 1px solid var(--light-blue);
	font-size: inherit;
	background-size: 140%;
	background-position: center;
}
.modal-portal .checkbox input[type="checkbox"]:checked~label:before {
	background-color: var(--white);
}
/* Checkbox tick */
.modal-portal .checkbox [type="checkbox"]~label:before,
.modal-portal .checkbox [type="checkbox"]~label:after{
	width: 20px;
	height: 20px;
}

.alert-font {
    background-color: #f9f2f4;
    color: #c7254e;
    font-family: consolas;
}

.cut-off-text {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* The switch - the box around the slider */
.switch {
  position: relative;
  display: inline-block;
  width: 100px;
  height: 55px;
}

/* Hide default HTML checkbox */
.switch input {display:none;}

/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: 2s;
  transition: 2s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 47px;
  width: 47px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition:  2s;
  transition: 2s;
}

label.switch > input:checked + * + .slider {
  background-color: #21486F;
}

label.switch > input:focus + * + .slider {
  box-shadow: 0 0 1px #21486F;
}

label.switch > input:checked + * + .slider:before {
  -webkit-transform: translateX(45px);
  -ms-transform: translateX(45px);
  transform: translateX(45px);
}

/* Rounded sliders */
.slider.round {
  border-radius: 10px;
}

.slider.round:before {
  border-radius: 15%;
}

.usage-icon {
	font-size: 4.7em !important;
	padding-bottom: 0.2em;
	padding-top: 0.2em;
}

.usage-icon-details {
	font-size: 2.5em !important;
    margin-top: 0.4em;
}

.required:before { 
    color: red;
    content: "*";
    position: absolute;
    margin-left: -14px;
    padding-top: 15px;
    font-size: 1.5em;
}

.required-checkbox:before { 
    color: red;
    content: "*";
    position: absolute;
    margin-left: -17px;
    padding-top: 7px;
    font-size: 1.5em;
}
.checkbox-right.required-checkbox:before {
	display: none;
}
.checkbox-right.required-checkbox:after { 
    color: red;
    content: "*";
    position: absolute;
    margin-left: 17px;
    padding-top: 7px;
    font-size: 1.5em;
}
.form-group.required:before {
	content:'';
}

.form-group.required > label:after { 
    color: #000;
    content: '*';
}

.padding-top {
	padding-top: 1em;
}

.padd-top-0-2 {
	padding-top: 0.2em;
}

.padding-bottom {
	padding-bottom: 1em;
}

.padding-1em {
	padding: 1em;
}

.agree-data-processing {
	background-color: #e0e0e5;
	border-radius: 4px;
}

.dashboard-row {
	display: flex;
    flex-wrap: wrap;
}
.dashboard-row > div[class*='col-'] {
	display: flex;
    flex:1;
}
.dashboard-row > div[class*='col-'] > .panel {
	height:auto;
}

.modal-dialog {
    max-height: calc(100% - 80px);
}
#modal-stacktrace {
	width: 100%;
	height: calc(100% - 80px);
	overflow: auto;
}
#modal-stacktrace .modal-dialog {
    max-width: calc(100% - 20em);
    overflow: visible;
    height: 85%;
}
#modal-stacktrace .modal-dialog .modal-content {
	margin-bottom: 5em;
	margin-top: 5em;
}

/**
 * The CSS shown here will not be introduced in the Quickstart guide, but shows
 * how you can use CSS to style your Element's container.
 */
.StripeElement {
	box-shadow: none;
    font-size: 1.1em;
    height: 44px;
	padding: 13px 0px 13px 0px;
    border-radius: 4px;
    background-color: transparent;
    border: solid 1px #bfbfbf;
    color: black;
}

.StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--invalid {
  border-color: #fa755a;
}

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important;
}

/**
 * Bootstrap Tooltip overrides
 */
.tooltip-arrow {
	border-bottom-color: #e0e0e5 !important;
	border-top-color: #e0e0e5 !important;
}

.tooltip-inner {
	background-color: #e0e0e5;
	color: #21486F;
	border-color: #e0e0e5;
	padding: 1em;
}

.tooltip.in {
    opacity: 1 !important;
    filter: alpha(opacity=100) !important;
}

.table-sim-sms {
	width: 100%;
	text-align: left;
	padding: 5px;
}

.table-sim-sms th {
	color: #aaa;
	font-weight: normal;
	font-size: 12px;
	text-transform: uppercase;
	background-color: transparent;
	height: 25px;
}

.table-sim-sms a {
	font-size: 12px;
}

.table-sim-sms span {
	font-size: 12px;
}

.table-sim-sms tr th {
	padding: 12px;
	font-size: 1.1em;
	color: black;
	font-weight: bold;
	border-bottom: 2px solid #c0c0c0;
}

.table-sim-sms tr td {
	padding: 12px;
	font-size: 1.3em;
	border-bottom: 2px solid #f0f0f0;
}

.table-sim-sms tr td i {
	margin-right: 15px;
}

.table-sim-sms tr td em {
    margin-right: 15px;
}

.table-sim-sms > tbody > tr {
	background-color: #fcf8e3; 	
}

.table-select-page .white {
	background-color: #fff !important;
}

.ul-li-gt > li {
	list-style-type: none;
}

a[data-toggle="collapse"].disabled {
	color: grey;
}

a[data-toggle="collapse"][aria-expanded="false"]:not(.disabled) > div.panel-heading:before{
	content: "+";
	font-weight:bold;
	font-family: inherit;
	float: right;
	color:#29abe2;
}

a[data-toggle="collapse"]:not(.disabled) > div.panel-heading {
	background-color:#eee;
	clear:both;
}

a[data-toggle="collapse"][aria-expanded="true"]:not(.disabled) > div.panel-heading:before {
	content: "-";
	font-weight:bold;
	font-family: inherit;
	float: right;
	color:#29abe2;
}

input.number-input-no-arrows::-webkit-outer-spin-button,
input.number-input-no-arrows::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

table > tbody > tr > td > .btn-group > .btn {
	padding: 6px 12px; 
	border: none; 
	font-style: normal;
}

*::-webkit-scrollbar {
    width: 16px;
}
  
* {
    scrollbar-width: thin;
    scrollbar-color: #737373 #ECECEC;
}

*::-webkit-scrollbar-track {
    background: #ECECEC;
}

*::-webkit-scrollbar-thumb {
    background-color: #737373;
    border-radius: 8px;
    border: 4px solid #ECECEC;
}

*::-webkit-scrollbar-thumb:hover {
    background-color: #8d8b8b;
    border-radius: 8px;
    border: 4px solid #ECECEC;
}

h2.danger {
	color: #d9534f !important;
}

.info-text {
	background-color: #e0e0e5;
	border-radius: 4px;
	padding: 5px;
}

thead.table-head-small-labels > tr > th > label {
	font-size: 1.1em;
} 

table.table.first-col-padding > thead > tr > th:first-child,
table.table.first-col-padding > tbody > tr > td:first-child {
	padding-left: 10px;
}

.well.well-sm.header-notification {
	background-color: #deea34;
	text-align: center;
}

td.centered {
	text-align:center;
}

td.green {
	color: #96bc3c;
}

.btn-group > .btn+.btn {
	border-left: 1px solid #fafafa;
}

.shop-h1{
	margin-top: -10px;
}

button.burger-menu {
	padding: 10px;
}

ul.dropdown-menu {
	opacity: 1;
}

ul.dropdown-menu > li > a {
	color: #000;
}
ul.dropdown-menu > li > a:hover {
	color: #000;
	cursor: pointer;
}

ul.dropdown-menu > li > a.inactive {
	color: #999999;
}
.role-description-container {
	margin-top: 2.9em;
	min-height: 10em;
}

/* Customize the label (the container) */
.payment-mode-radio {
	display: inline-block;
	font-weight: bold;
	font-size: 1.3em;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	margin-right: 1em;
	margin-bottom: 0;
}

.payment-mode-radio label {
	cursor: pointer;
	padding-left: 0.8em;
	margin-bottom: 0;
}

/* Hide the browser's default radio button */
.payment-mode-radio input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom radio button */
.checkmark {
    position: absolute;
    top: 7px;
    left: 0;
    height: 26px;
    width: 26px;
    background-color: white;
    border-radius: 50%;
    border: 3px solid #29ABE2;
    cursor: hand;
}

/* On mouse-over, add a grey background color */
.payment-mode-radio:hover input ~ .checkmark {
	background-color: white;
}

/* Show a lighter indicator (dot/circle) when hovering */
.payment-mode-radio:hover input:not(:checked) ~ .checkmark:after {
	display: block;
	background-color: #ccc;
	border-color:white;
	top: 6px;
	left: 6px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.payment-mode-radio input:checked ~ .checkmark:after {
  display: block;
  background-color: #29ABE2;
  border-color:white;
}

/* Style the indicator (dot/circle) */
.payment-mode-radio .checkmark:after {
	top: 3px;
	left: 3px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: white;
}

#customerReferenceInputDiv label {
  font-size: 16.8px;
}

#customerReferenceInput {
  font-size: 16.8px;
}

.payment-mode .payment-card-icon{
	margin-bottom: 1em;
}

.payment-credit-card-form *> fieldset  {
	background-color: #3c6897; 
	border-radius: 5px;
}

.payment-credit-card-form *> fieldset > .row {
	display: flex; 
	margin-left: 15px; 
	align-items: center; 
	margin-bottom: 0px;
}

.payment-credit-card-form *> fieldset *> label{
	color: white; 
	width: 10%; 
	min-width: 10%;
}

.payment-credit-card-form *> fieldset *> input{
	border-style: none !important;
	background-color: #fff;
	outline: none; 
	-webkit-appearance: none; 
	box-shadow: none !important;
}

.comm-text {
	border: none;
	width: 100%;
	resize:none;
    outline: none;    
}

.communication-panel {
    border: 1px solid rgba(0,0,0,0.3);
}

.communication-type-PORTAL {
    color: white;
}

.communication-row > .panel {
	border-radius: 3px;
	padding: 0px;
	margin-top: 0px;
}

.communication-row > .panel *> .panel-heading {
	border-bottom: 1px solid rgba(0,0,0,0.3);
}

.communication-panel > a[data-toggle="collapse"][aria-expanded="true"]:not(.disabled) > .panel-heading::before {
	content: "\e114";
	position: relative;
	top: 1px;
	display: inline-block;
	font-family: 'Glyphicons Halflings';
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #979797;
}

.communication-panel > a[data-toggle="collapse"][aria-expanded="false"]:not(.disabled) > .panel-heading:before {
	content: "\e113";
	position: relative;
	top: 1px;
	display: inline-block;
	font-family: 'Glyphicons Halflings';
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	 color: #979797;
}

.communication-IN *> div.panel-heading {
	background-color: var(--light-blue);
}

.custom-file-input {
    top:0;
    width: 100%;
    height: 100%;
    z-index: 3;
    display: none;
}

.custom-file-label {
    position: relative;
    display: inline-block;
    float: right;
    cursor: pointer;
    height: 44px;
    width: 100%;
    padding:0;
    border:0px;
    background-color: var(--light-background-color);
}

.custom-file-label::after {
    left:0;
    right:auto;
    height: 100%;
    width: 100%;
    clip-path:polygon(0 0, 100% 0, 100% calc(100% - 15px), calc(100% - 16px) 100%, 0% 100%);
    -webkit-clip-path:polygon(0 0, 100% 0, 100% calc(100% - 15px), calc(100% - 16px) 100%, 0% 100%);
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-size: 16px;
    color:var(--white);
    z-index: 2;
    background-color: var(--light-blue);
    min-width: 122px;
    font-family: 'PortalFont';
}

.custom-file-label:lang(de)::after {
    content: 'Durchsuchen';
}

.custom-file-label:hover:after {
    color: black;
}

.custom-file-display {
    text-overflow: ellipsis;
    display: inline-block;
    width: 100%;
}

.text-input-no-effects:hover, .text-input-no-effects:focus{
    cursor: default !important;
    border: 1px solid #bfbfbf !important;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
    -moz-appearance:textfield; /* Firefox */
}

.product-feature::before {
	width: 35px;
	height: 35px;
	display: inline-block;
	-webkit-mask: url("data:image/svg+xml,<svg class='bi bi-check' width='1.88em' height='1.88em' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor'><path fill-rule='venodd' d='M15.854 5.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L8.5 12.293l6.646-6.647a.5.5 0 01.708 0z' clip-rule='evenodd' /></svg>") no-repeat 50% 50%;
	mask: url("data:image/svg+xml,<svg class='bi bi-check' width='1.88em' height='1.88em' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor'><path fill-rule='venodd' d='M15.854 5.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L8.5 12.293l6.646-6.647a.5.5 0 01.708 0z' clip-rule='evenodd' /></svg>") no-repeat 50% 50%;
	-webkit-mask-size: cover;
	mask-size: cover;
	background-color: #77d245;
	content: '';
	margin-right: 20px;
	position: relative;
	top: 0.5em;
}

.product-features-title {
  font-size: 21px;
  font-weight: 600;
  font-stretch: normal;
  font-style: normal;
  line-height: 3.14;
  letter-spacing: normal;
  color: #4a4a4a;
}

.product-feature {
  font-size: 18px !important;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.67;
  letter-spacing: normal;
  color: #4a4a4a;
  white-space: nowrap;
}

.sims-check::before {
	margin: 0;
	top: 0;
    width: 25px;
    height: 25px;
}

.product-image {
	position: relative; 
	float: right; 
	width: 454px; 
	height: 266px; 
	border: 1px solid red;
}

.product-sheet {
	padding-top: 30px; 
	background-color: #f3f9fb;
	padding-bottom: 20px;
}

.cart .table {
	width: 100%;
}

.cart .table .table-row {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

.cart .table .table-row .table-cell {
	flex: 1 1 150px;
	margin-right: 20px;
	vertical-align: middle; 
}

.cart-label {
	font-size: 18px;
	line-height: 34px;
	color: #4a4a4a;
}

.cart-summary-label {
    font-size: 18px;
	line-height: 20px;
}
.cart-summary-price {
    font-size: 18px;
    line-height: 20px;
    font-weight: bolder;
    float: right;
    white-space: nowrap;
}

.cart-summary {
    border: solid 3px #bfbfbf;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.cart-summary-item #totalGrossChargeOnce {
    font-size: 1.5em;
    font-weight: bold;
    float: right;
    white-space: nowrap;
}
.cart-summary-item.tax {
    color: var(--text-muted-color);
    white-space: nowrap;
}
.edit-button {
    float: right;
}
.edit-button img {
    height: 25px;
}

.bolder {
    font-weight: bolder;
}

.bold {
    font-weight: bold;
}

.info-note-block {
    background-color: rgba(212, 238, 249, 0.48);
    font-size: 18px;
    line-height: 30px;
    padding: 34px 37px 29px 28px;
    color: #194a7d;
}

img.cart-image {
    width: 125px !important;
    height: 125px !important;
    max-height: 125px;
    max-width: 125px;
}

.cart-product-reset  {
    color: #29abe2;
    height: 23px;
    width: 23px;
    position: relative;
}

.line {
    border: solid 1px #e5e5e5;
    height: 0px;
    width: 100%;
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}

svg.cart-x:hover {
    cursor: pointer;
}

.v-align-centered {
    position: absolute;
    top: 50%;
    width: 100%;
}

.card-element {
    padding-left: 10px;
    padding-right: 10px;
}

.cart-product-label {
    flex: 1 1 200px;
}

.cart-image-column {
    flex: 1 1 0px;
}

.cart-product-quantity-input {
    max-width: 125px;
}

.bs3-row{
    margin-right: -15px;
}

.m-l-n15{
    margin-left: -15px;
}

#shippingBillingForm .row{
	margin-right: -15px; /* reset to bootstrap default */
}

#webshop-cart-summary {
    position: relative;
    display: block;
    height: auto;
}

/*
=============================================
Modules
=============================================
*/
.cockpit-modules-wrapper {
	display: flex;
}
.cockpit-modules-wrapper .modules-container {
  position: initial !important;
}
.cockpit-modules-wrapper .modules-container:first-child {
  padding-left: 0px !important;
}
.cockpit-modules-wrapper .modules-container:last-child {
  padding-right: 0px !important;
}
.module-move-placeholder {
  background-color: #dbdbdb;
  margin-bottom: 30px;
}
.module-panel {
  padding-top: 1.25rem;
  background: #fff;
}
.module-panel .last-update,
.module-panel .panel-footer {
  color: #6e6e6e;
  font-size: 12px;
}
.module-panel .panel-header {
  color: #757575;
  border-bottom: 1px solid #dcdcdc;
  padding: 10px 10px 5px 15px;
}
.module-panel .panel-header h2 {
  font-size: 21px;
}
.module-panel .panel-header .module-actions-container {
  padding-right: 5px;
  float: right;
}
.module-panel .module-subheader {
  color: #757575;
  padding: 15px 10px 5px 30px;
}
.module-panel .module-subheader h3{
	font-weight: normal;
}

.module-panel .module-actions-container span.edit-module-action {
  display: none;
}
.module-actions-container .module-header-btn {
  padding: 8px 7px 5px 7px;
  border-radius: 4px;
  color: var(--light-blue);
}
.module-actions-container .module-header-btn[disabled],
.module-actions-container .module-header-btn[disabled]:hover {
  cursor: default;
  background: none;
  color: #dcdcdc;
}
.module-actions-container .module-header-btn:hover,
.module-actions-container .module-header-btn:focus {
  cursor: pointer;
  background: #eee;
}
.module-panel .module-panel-content {
  min-height: 90px;
}
.module-panel .panel-body {
  padding: 30px;
  padding-top: 20px;
}
.module-panel .panel-footer {
  border-top: 1px solid #dcdcdc;
  padding: 5px 0px 20px 0px;
  background: none;
}
.add-module-panel {
  padding: 70px 0px;
  margin-bottom: 30px;
  border: 1px dashed #dcdcdc;
  color: #9b9b9b;
  font-size: 28px;
  display: none;
}
.module-kachel,
.module-kachel:hover,
.module-kachel:focus {
  text-decoration: none;
  color: #383838;
  cursor: default;
}
.module-kachel > div {
  background-color: #ededed;
  border-radius: 2px;
  padding: 5px;
}
.module-kachel .module-small-kachel > div {
  padding: 5px 5px 5px 5px;
}
.module-kachel i {
  margin: 5px 0px 8px 0px;
}
.module-kachel[disabled] {
  color: #bababa;
}
.module-kachel[disabled] i,
.module-kachel[disabled] i:before,
.module-kachel[disabled] i:after {
  color: #dcdcdc;
}
.module-kachel:not([disabled]):hover > div,
.module-kachel:not([disabled]):focus > div {
  background-color: #d0d0d0;
  cursor: pointer;
}
.module-kachel .output-count {
  font-weight: bold;
  font-size: 22px;
}
.module-kachel .output-label {
  line-height: 16px;
}
.module-large-kachel {
  position: relative;
  text-align: center !important;
}
.module-large-kachel i {
  font-size: 50px;
}
.module-small-kachel i {
  font-size: 25px;
}
.configure-overlay {
  display: inline-block;
  margin-top: -10px !important;
  padding-top: 10px;
  padding-bottom: 5px;
}

.canvas-container {
  position: relative;
}
.canvas-container .canvas-label-container {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  font-size: 27px;
  height: 80px;
  color: #383838;
}
.canvas-container .canvas-label-container div:first-child {
  border-bottom: 1px solid #383838;
  text-align: center;
}
.canvas-container .canvas-label-container div:last-child {
  text-align: center;
}
.reload-icon {
	display: inline-block;
	background: url(/portal/assets/img/icons/icon_refresh.svg);
	width: 24px;
	height: 24px;
}
/*
=============================================
Doughnuts
=============================================
*/
.module-panel .doughnut-module-canvas-wrapper {
  float: left;
}
.module-panel .doughnut-module-canvas-wrapper .doghnut-header h1 {
  font-weight: bold;
  font-size: 16px;
}
.module-panel .doughnut-module-canvas-wrapper .doghnut-header h2 {
  color: #7c7c7c;
  font-size: 14px;
  font-weight: normal;
}
.module-panel .doughnut-chart-legend {
  overflow: hidden;
}
.module-panel .doughnut-chart-legend ul {
  list-style: none;
  font-size: 16px;
  margin-bottom: 0px;
  margin-left: 20px;
}
.module-panel .doughnut-chart-legend ul li {
  border-bottom: 1px solid #dcdcdc;
  padding: 5px 0px;
}
.module-panel .doughnut-chart-legend ul li.legend-header{
	font-weight: bold;
	border-bottom: none;
	margin-bottom: 1em;
}
.module-panel .doughnut-chart-legend ul li.legend-header .legend-count{
	color: inherit;
	font-size: 1.05em;
}
.module-panel .doughnut-chart-legend ul li div {
  display: inline-block;
}
.module-panel .doughnut-chart-legend .legend-label a {
  color: #888;
  text-decoration: none;
  font-size: 15px;
}
.module-panel .doughnut-chart-legend .legend-label a:focus, .module-panel .doughnut-chart-legend .legend-label a:hover {
  color: black;
  text-decoration: underline;
}
.module-panel .doughnut-chart-legend .legend-label-description {
  display: block;
  margin-left: 35px;
  font-size: 14px;
}
.module-panel .doughnut-chart-legend .legend-label-description a {
  color: #888;
  text-decoration: underline;
}
.module-panel .doughnut-chart-legend .legend-label-description a:focus {
  color: black;
  text-decoration: none !important;
}
.module-panel .doughnut-chart-legend .legend-count {
  text-align: right;
  float: right;
  font-size: 15px;
  color: var(--light-blue); 
}
.float-right {
  float: right;
}
.f-z-15 {
  font-size: 15px;
}
.module-panel .doughnut-chart-legend .legend-color {
  width: 12px;
  height: 12px;
  margin-right: 15px;
  display: inline-block;
  border-radius: 15px;
  -webki-tborder-radius: 15px;
  -moz-border-radius: 15px;
  border-width: 2px;
  border-style: solid;
  background: none !important;
}

.table .legend-color {
  width: 12px;
  height: 12px;
  display: inline-block;
  border-radius: 15px;
  -webki-tborder-radius: 15px;
  -moz-border-radius: 15px;
  border-width: 2px;
  border-style: solid;
  background: none !important;
}

.legend-green {
	color: var(--light-green);
}

.legend-yellow {
	color: var(--yellow);
}

.legend-red {
	color: var(--red);
}

/* Table Modules */
table.table-module tr {
  border-bottom: 1px solid #dcdcdc;
  font-size: 14px;
}
table.table-module th {
  padding: 3px 5px 3px 7px;
}
table.table-module td {
  padding: 7px 5px 7px 7px;
}

/* ############## Content of old 1nce-csc.css should eventually be moved /sorted where the other classes are ############# */

a {
    color: var(--light-blue);
}

.input-disabled {
    border: none;
    display: inline;
    font-family: inherit;
    font-size: inherit;
    padding: none;
    width: auto;
    background: transparent;
}

.mainmenu {
    overflow-x: auto;
}

.mainmenu ul {
    padding: 0;
    margin-bottom: 0px;
    margin-top: 0px;
    white-space: nowrap
}

.mainmenu ul li, #submenu ul li {
    list-style: none;
    display: inline-block;
    text-align: center;
}

.mainmenu ul li .fa {
    display: block;
    font-size: 1.3em;
    color: var(--light-blue);
}

.mainmenu ul li a {
    font-size: 16px;
    display: block;
    color: #fff;
    padding: 20px 10px;
    height: 95px;
    transition: color 0.5s ease;
    -webkit-transition: color 0.5s ease;
    -moz-transition: color 0.5s ease;
    -o-transition: color 0.5s ease;
}

.mainmenu ul li a:hover {
    background-color: var(--light-blue);
}

.mainmenu ul li.active a {
    color: white;
    background-color: var(--light-blue);
}

.mainmenu ul li a:hover, .mainmenu ul li a.active, .mainmenu ul li a:active,
.mainmenu ul li a:focus {
    text-decoration: none;
}

#submenu {
    float: right;
}

.tabmenu ul {
    padding: 0;
    margin-bottom: 0px;
    margin-top: 0px;
}

.tabmenu ul li {
    list-style: none;
    display: inline-block;
    text-align: center;
}

.tabmenu ul li .fa {
    display: block;
    font-size: 1.5em;
    color: var(--light-blue);
}

.tabmenu ul li a {
    font-size: 16px;
    display: block;
    color: #fff;
    padding: 0px 0px;
    transition: color 0.5s ease;
    -webkit-transition: color 0.5s ease;
    -moz-transition: color 0.5s ease;
    -o-transition: color 0.5s ease;
}

.tabmenu ul li a:hover {
    border-bottom: 3px solid var(--dark-background-color);
    color: var(--dark-background-color) !important;
}

.tabmenu ul li.active a {
    border-bottom: 3px solid var(--dark-background-color);
    color: var(--dark-background-color) !important;
}

.tabmenu ul li a:hover, .tabmenu ul li a.active, .tabmenu ul li a:active,
.tabmenu ul li a:focus {
    text-decoration: none;
    color: #26527f;
}

.sim-tabcontainer {
    margin-top: -20px;
    margin-bottom: -20px;
    height: 95px;
}

@media ( min-width: 768px) {
    .table-filter {
        position: relative;
        padding: 0 60px;
    }
}

.table-filter .col-sm-12 {
    margin-bottom: 1.2em;
}

#filter-type {
    height: 62px;
    font-size: 20px;
    background-color: #9aabbb;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    padding-left: 5px;
    border: 2px solid #AAAAAA;
    border-radius: 4px;
    color: #fafafa;
}

.table-filter i {
    position: absolute;
    top: 10px;
    right: 35px;
    z-index: 2;
    display: block;
    width: 34px;
    height: 34px;
    line-height: 34px;
    text-align: center;
    font-size: 28px;
    color: #fafafa;
    cursor: pointer;
    pointer-events: none;
}

#searchSubmit {
    position: absolute;
    top: 10px;
    right: 35px;
    z-index: 3;
    display: block;
    width: 34px;
    height: 34px;
    line-height: 34px;
    text-align: center;
    font-size: 28px;
    color: #fafafa;
    cursor: pointer;
}

#searchSubmit i {
    position: static;
    top: 0px;
    right: 0px;
    z-index: 0;
    display: inline;
    width: auto;
    height: auto;
    pointer-events: none;
}

.table-filter i.fa-chevron-down {
    right: 25px;
    font-size: 20px;
}

.table-filter .table-filter-select {
    position: absolute;
    width: 72%;
    top: 62px;
    left: 17%;
    border: 2px solid #aaa;
    background: #fff;
    z-index: 100;
    display: none;
}

.table-filter .table-filter-select .close-table-filter-select {
    color: #aaa;
    font-size: 30px;
    cursor: pointer;
}

.table-filter .table-filter-select .close-table-filter-select:hover {
    color: #000;
    text-decoration: none;
}

.table-filter .table-filter-select .table-filter-select-menu {
    padding: 0 20px 10px;
}

.table-filter .table-filter-select .table-filter-select-menu .title {
    color: #aaa;
}

.table-filter .table-filter-select .table-filter-select-menu ul {
    padding-left: 0;
}

ul.table-filter-menu-list li, .table-filter-selected ul li {
    display: inline-block;
    list-style: none;
    padding: 5px 0;
}

ul.table-filter-menu-list {
    display: inline-block;
    padding: 0px;
    margin: 0px;
}

.table-filter .table-filter-selected ul li {
    margin: 5px;
    display: inline-block;
}

.table-filter-selected {
    padding-top: 20px;
    text-align: center;
}

.table-buttons {
    padding-top: 20px;
    text-align: right;
}

.table-buttons .btn {
    width: 40px;
    height: 40px;
    text-align: center;
    padding: 0;
    border-color: var(--light-blue);
    color: var(--light-blue);
    line-height: 35px;
}

.table-buttons .btn :not(:last-child) {
    margin-right: 10px;
}

.table-buttons .btn:hover {
    border-color: #26527f;
    color: #26527f;
}

.table-buttons .btn.btn-primary {
    color: #fff;
}

.table-buttons .btn .material-icons {
    font-size: 35px;
}

.table tbody {
	background-size: 6px 1px;
    background-repeat: round;
    border-radius: 8px;
    background-image:none;
}

.table th {
    background: #fafafa;
    border-top: none;
    height: 50px;
    color: #9baaba;
}

.table > thead > tr > th {
    border: 0;
}

.table th, .table td {
    font-size: 16px;
}

.table tr {
    background: transparent;
}

.table > thead > tr > th.table-row-checkbox, .table > tbody > tr > td.table-row-checkbox {
    vertical-align: initial;
    padding: 20px 0;
    text-align: center;
}
.table > thead > tr > th:first-child, .table > tbody > tr > td:first-child {
	padding-left: 15px;
}
.sims-table > thead > tr > th:first-child, .sims-table > tbody > tr > td:first-child {
    padding-left: 2px;
}

.sims-table > thead > tr > th:last-child, .sims-table > tbody > tr > td:last-child {
    padding-right: 2px;
}

.table > tbody > tr.collapse-row > td, .table > tbody > tr > td:empty {
    padding: 0;
}

.table:not(.no-hover-effect) tbody tr:hover td {
    background-color: #feffff !important;
}

.table thead tr th {
	background-color: white;
	font-weight: normal;
}

.table tbody tr:first-child td {
    border-top: 0;
}

.table tbody tr:not(:first-child) td {
    border-top: 1px solid lightgray !important;
}

#simExportPanel .table tbody tr:first-child td {
    border-top: 1px solid lightgray !important;
}

#simExportPanel .table tbody td:not(:last-child) {
	width: 200px;
}

.table:not(.no-hover-effect) tbody tr:hover td:first-child {
    border-left: 5px solid var(--light-blue);
}

.table:not(.no-hover-effect) tbody tr td:first-child {
    border-left: 5px solid transparent;
}

.table tbody tr:first-child td:first-child {
    border-top-left-radius: 8px;
}

.table tbody tr:first-child td:last-child {
    border-top-right-radius: 8px;
}

.table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 8px;
}

.table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 8px;
}

.table tfoot tr {
    background-color: transparent;
}

.table tfoot tr td {
    border-top: 0;
}

.table [type="checkbox"] + label:before, .table [type="checkbox"]:not(.filled-in) + label:after {
    width: 20px;
    height: 20px;
}

.table [type="checkbox"] + label:before, .table [type="checkbox"]:not(.filled-in) + label:after {
    width: 20px;
    height: 20px;
}

.table input[type="radio"], .table input[type="checkbox"] {
    margin-top: 0;
}

.table input[type="radio"] + label, .table [type="checkbox"] + label {
    padding-left: 0;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 10px;
    font-size: 16px;
    line-height: 16px;
}

.sims-table {
	width: 100%; 
	overflow-x: auto; 
	min-width: 560px;
}

.usage-column {
	padding-top:22px!important;
}

.w-50px {
	width: 50px;
}

.w-100px {
	width: 100px;
}

.w-150px {
	width: 150px;
}

.w-auto {
	width: auto;
}

.custom-accordion {
    background-color: white;
}

.custom-accordion .card-header{
    padding: 0!important;
    background-color: white;
}
.custom-accordion .card-header a {
    color : var(--normal-text-color);
    width: 100%;
    padding: 0.75em 1.5em;
}
.custom-accordion .card-header p {
    margin: .5rem 0;
}

.custom-accordion .card-header a[aria-expanded=false]::before {
    content: '';
    display: inline-block;
    border: solid #555;
    border-width: 0 2px 2px 0;
    padding: 6px;
    position: absolute;
    top: 52px;
    right: 50px;
    transform: rotate(45deg);
    transition: transform .2s linear;
  }

  .custom-accordion .card-header a[aria-expanded=true]::before {
    content: '';
    border: solid #555;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 6px;
    position: absolute;
    top: 54px;
    right: 50px;
    transform: rotate(-135deg);
    transition: transform .2s linear;
  }

.custom-accordion .panel-body {
    background-color: white;
}

.sims-session {
	font-size: 0.6em !important;
	padding-top: 22px !important;
}

.status-circle {
    margin-top: 3px;
}

.status-circle[data-status='3'] {
    color: #f44336;
}

.status-circle[data-status='4'] {
    color: #bdbdbd;
}

.status-circle.green {
    color: #8bc34a;
}

.status-circle.gray {
    color: #999;;
}

.status-circle.yellow {
    color: #efd10e;
}

.status-circle.orange, .status-circle[data-status='9'] {
    color: #ffaa00;
}

.table .glyphicon {
    font-size: 20px;
}

.table svg.usage-guage {
    transform: rotate(-90deg);
    background: #f5f5f5;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin: -10px 5px;
}

.table .usage-guage > circle {
    fill: #f5f5f5;
    stroke: #81d4fa;
    stroke-width: 50;
}

.table .usage-guage[data-usage='-80'] > circle {
    stroke-dasharray: 80 189;
}

.table .usage-guage[data-usage='+80'] > circle {
    stroke-dasharray: 130 189;
}

.table .usage-guage[data-usage='100'] > circle {
    stroke-dasharray: 189 189;
}

.sim-usage svg.usage-guage {
    transform: rotate(-90deg);
    background: #f5f5f5;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    margin-bottom: -10px;
}

.sim-usage .usage-guage > circle {
    fill: #f5f5f5;
    stroke: #81d4fa;
    stroke-width: 50;
}

.sim-usage .usage-guage[data-usage='-80'] > circle {
    stroke-dasharray: 80 189;
}

.sim-usage .usage-guage[data-usage='+80'] > circle {
    stroke-dasharray: 130 189;
}

.sim-usage .usage-guage[data-usage='100'] > circle {
    stroke-dasharray: 189 189;
}

.table-control .table-results {
    font-size: 16px;
    padding-top: 10px;
}

.table-control .table-results select.form-control {
    max-width: 100px;
    width: auto;
    min-width: 50px;
    display: inline-block;
    border-bottom: none;
    font-size: 16px;
    color: black;
    font-weight: bold;
    height: auto;
    margin: 0;
    padding: 0;
}

.table-control .table-results select.form-control:hover, .table-control .table-results select.form-control:focus,
.table-control .table-results select.form-control:active {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.table-select-page {
    width: 100%;
    border-radius: 4px;
    display: flex;
    justify-content: space-between;
}

.table-select-page .table-page-control, .table-select-page ul {
    display: inline-block;
    font-size: 16px;
}

.table-select-page a.table-page-control {
    text-align: center;
    line-height: 1em;
    padding: 13px 0 11px;
    color: var(--normal-text-color);
    top:-3px;
    position: relative;
}

.table-select-page a.table-page-control.disabled, .table-select-page a.table-page-control.disabled a {
    cursor: not-allowed;
    color: #aaa;
}

.table-select-page ul {
    margin: 0 -3px;
    text-align: center;
    height: 100%;
    padding: 0;
}

.table-select-page ul li {
    display: inline-block;
    line-height: 1em;
    width: 30px;
    font-weight: bold;
    color: var(--text-muted-color);
    height: 100%;
    margin-bottom: -2px;
}

.table-select-page ul li a:hover, .table-select-page ul li a:active,
.table-select-page ul li a:focus {
    text-decoration: none;
}

.table-select-page ul li.page-select a {
	color: #29abe2;
    font-weight: normal;
}

.table-select-page ul li.page-select:hover a, .table-select-page ul li.page-select:active a,
.table-select-page ul li.page-select:focus a, .table-select-page ul li.page-select.active a {
    color: var(--dark-background-color);
}

.sky-blue {
    color: var(--light-blue);
}

.table > tbody > tr.click-link {
    cursor: pointer;
}

.table > tbody > tr.collapse-open > td, .table > tbody > tr.click-link:hover > td {
    background: #e8f5e9;
}

.no-hover-effect > tbody > tr.collapse-open > td, .table > tbody > tr.click-link:hover > td {
    background: inherit !important;
}

.table-results .glyphicon {
    font-size: 10px;
    color: #aaa;
}

tr.collapsible {
    cursor: pointer;
}

.collapse-row:hover {
    background: transparent;
}

.centered-small-icon {
    width: 24px;
    height: 24px;
    margin-left: 5px;
    margin-top: 0px;
    margin-bottom: 2px;
    vertical-align: middle;
}

.table-sim-detail .row {
    margin: 0;
}

.table-sim-detail > .row > div {
    padding: 0;
}

.table-sim-detail .sim-data {
    padding: 15px 25px;
}

.action-container-wrapper {
	background-color: var(--pale-blue);	
	width: 100%;
	display: inline-block;
}

#action-footer-container-wrapper {
	width: 100%;
	background-color: var(--pale-blue);
	position: absolute;
	height: var(--simlist-action-footer-height);
	bottom: var(--footer-height);
    left: 0;
}
#action-footer-container-wrapper.floating {
	position: fixed;
	bottom: var(--footer-height);
	height: var(--simlist-action-footer-height);
	margin-bottom: 0;
}
#bulk-action-footer {
	background-color: var(--pale-blue);
	min-width: 560px; /* min-width of the sim table */
}
.action-footer {
    padding: 10px;
    font-size: 1em;
}
.action-footer .add-booster.btn {
	width: 21em;
}
.action-footer-reload-block h2 {
	margin-bottom: 0.6em;
}
.action-footer-button-block .action {
	margin-bottom: 0.7em;
}
.action-footer-button-header {
	margin-left: 0;
	font-size: 1.5em;
	margin-bottom: 0.5em;
}

.sim-details-boost-button-container {
	top: 39px;
}

.sim-details-headline-row {
	background-color: #fff!important;
}

.sim-details-headline-row h3 {
	font-weight: normal;
    margin-bottom: 0;
}

.sim-details-headline-row h3 em {
    color: var(--text-muted-color);
}

#lifeTimeChart {
	display: block !important; 
	width: auto !important; 
	height: 60px !important;
}

.table-sim-detail label {
    position: relative;
    font-size: 1.5em;
    margin-bottom: 0px;
    margin-top: 5px;
    font-weight: bold;
}

.sim-usage .row, .sim-lifetime .row {
    margin: 0 -15px;
}

.sim-usage .module-panel {
	margin-top: 10px;
}

.sim-usage .panel-header {
	padding-left: 25px;
}

.modules-container[data-column="RIGHT"] .sim-data {
	padding-left: 45px;
}

.sim-data-headline {
    padding: 15px 25px;
}

.modules-container[data-column="RIGHT"] .usage-container {
	padding-left: 30px !important;
}

.table-sim-detail .form-group > div {
    font-size: 1.3em;
}

.table-sim-detail .sim-data .form-group > div {
    font-size: 1.3em;
}

.centered-container {
    display:flex;
    align-items: center;
}

.imei-info {
    margin: 5px 0 0 5px;
}

.category-info1 {
    margin: 3px 0 0 5px;
}

.category-info2 {
    margin: 0 0 0.3rem 5px;
}


.table-last-event {
    width: 100%;
    text-align: left;
    padding: 5px;
}

.table-last-event th {
    color: #aaa;
    font-weight: normal;
    font-size: 12px;
    background-color: transparent;
    height: 25px;
}

.table-last-event a {
    font-size: 12px;
}

.table-last-event span {
    font-size: 12px;
}

.buttons-row {
	border-bottom: 1px solid var(--dark-blue);
    margin-bottom: 0px !important;
}

.sim-usage div[data-module-type="SMS_USAGE"] {
	margin-right: 0;
}

.sim-usage div[data-module-type="DATA_USAGE"] {
	margin-left: 0;
}

.btn-sm {
    font-size: 12px;
}

.btn-sm.btn-primary:hover {
    border-color: #26527f;
}

.tag {
    border: none;
    background: #26527f;
    color: white;
    padding: 7px 20px;
    text-transform: uppercase;
    font-size: 14px;
}

p {
    margin: 0px;
}

a.tag:focus, a.tag:hover {
    color: white;
    background: var(--light-blue);
}

.tag i, .add-tag i {
    font-weight: bold;
    color: #93a9bf;
    top: 3px;
    position: relative;
    font-size: 16px;
}

.add-tag {
    padding: 5px 20px;
    text-transform: uppercase;
    font-size: 14px;
    color: #26527f;
    border-color: #26527f;
}

.table > thead > tr > th, .table > tbody > tr > td {
    padding: 17px 8px;
}

.table-last-event tr th {
    padding: 15px;
    font-size: 1.4em;
    color: var(--text-muted-color);
}

.table-last-event tr td {
    padding: 15px;
    font-size: 1.3em;
    border-bottom: 2px solid #f0f0f0;
}

.table-last-event tr td i {
    margin-right: 15px;
}

.table-last-event tr td em {
    margin-right: 15px;
}

.table-last-event > tbody > tr.success {
    background-color: #dff0d8;
}

.table-last-event > tbody > tr:hover.success {
    background-color: #bce0ad;
}

.table-last-event > tbody > tr.warning {
    background-color: #fcf8e3;
}

.table-last-event > tbody > tr:hover.warning {
    background-color: #f5e9a0;
}

.table-last-event > tbody > tr.danger {
    background-color: #f2dede;
}

.table-last-event > tbody > tr:hover.danger {
    background-color: #dda8a8;
}

tr.selected {
    background-color: #feffff;
    border-left: 3px solid var(--light-blue);
}

.alert {
    border-radius: 0px;
    font-size: 1.3em;
}

#sim-export-table-div {
	border-bottom: 1px solid darkgray;
}

/*
=======================
PASSWORD STENGTH METER
=======================
*/
div.pw-strength-container {
    margin-left: 0px !important;
    margin-right: 0px !important;
    margin-top: 0px;
}

div.pw-strength-container > div.pw-strength-label {
    font-weight: bold;
    text-align: center !important;
    margin-top: 3px;
    color: #666666;
}

div.pw-strength-container > div.pw-strength-left, div.pw-strength-container > div.pw-strength-middle,
div.pw-strength-container > div.pw-strength-right {
    height: 5px;
}

div.pw-strength-container > div.pw-strength-middle {
    border-left: 1px solid white;
    border-right: 1px solid white;
}

div.pw-strength-color-weak > div.pw-strength-left {
    background-color: #E18585 !important;
}

div.pw-strength-color-weak > div.pw-strength-label {
    color: #E18585 !important;
}

div.pw-strength-color-sufficient > div.pw-strength-left,
div.pw-strength-color-sufficient > div.pw-strength-middle {
    background-color: #BBBD5A !important;
}

div.pw-strength-color-sufficient > div.pw-strength-label {
    color: #BBBD5A !important;
}

div.pw-strength-color-strong > div.pw-strength-left, div.pw-strength-color-strong > div.pw-strength-middle,
div.pw-strength-color-strong > div.pw-strength-right {
    background-color: #6BB224 !important;
}

div.pw-strength-color-strong > div.pw-strength-label {
    color: #6BB224 !important;
}

.fits-for-strength {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.password {
    margin-bottom: 0px;
    font-size: 1.5em;
}

.panel-primary {
    border-color: var(--light-blue);
}

.panel-default > .panel-heading {
    color: #333;
    background-color: #eee;
    border-color: #eee;
}

.panel-list {
	margin: 0;
}
.expandable-panels-wrapper {
	margin-top: 50px;
	padding-bottom: 20px;
}
.panel.panel-expandable .panel-header {
	border-top: 1px solid darkgray;
	color: var(--dark-background-color);
	font-size: 1.6em;
	padding-bottom: 20px;
	padding-top: 20px;
}

.panel.panel-expandable .panel-header a {
	color: inherit;
	outline: none;
	width: 100%;
	display: inline-block;
}
.panel.panel-expandable .panel-header a:before {
	content: '';
	display: inline-block;
	width: 37px;
	height: 37px;
	background-image: url(../img/icons/icon_open.svg);
	vertical-align: middle;
	margin-right: 20px;
}

.panel.panel-expandable .panel-header a.disabled:before{
    filter: grayscale(100%);
    cursor: default;
}

.panel.panel-expandable .panel-header a.disabled{
    color:grey;
    cursor: default;
}

.panel.panel-expandable .panel-header a[aria-expanded="true"]:before {
	background-image: url(../img/icons/icon_close.svg);
}
.panel.panel-expandable > .panel-body {
	margin-left: 4.5em;
}

.panel-expandable {
	margin: 0;
}
.panel-expandable h2 {
	font-size: 24px;
	font-weight: bold;
}
.panel-expandable h3 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 20px;
}
.panel-expandable ol hr{
	margin-left: -15px;
}

.help-center-link {
    display: inline-block;
    font-size: 16px;
}

.panel-primary > .panel-heading {
    color: #fff;
    background-color: var(--light-blue);
    border-color: var(--light-blue);
}

.panel h3 {
    margin-top: 10px;
}

.dashboard .panel {
    flex-grow: 1;
    border-width: 2px;
    min-height: 280px;
    margin-left: 0px;
    margin-right: 0px;
}

.dashboard .order-id {
    color: #00a5c8;
    font-weight: bold;
}

.dashboard .dashboard-order-status {
    font-size: 1.8em;
    font-weight: bold;
    text-align: center;
}

.dashboard .dashboard-sim-count {
    font-size: 2.5em;
    font-weight: bold;
}

.dashboard .panel .panel-handle {
    float: none;
    margin: auto;
    height: 6px;
    width: 16px;
    border-radius: 5px;
    margin-bottom: 15px;
    background-color: var(--light-blue);
}

.dashboard-panel-header {
    text-transform: uppercase;
    font-weight: bold;
}

.dashboard .dashboard-actions {
    margin-top: 15px;
}

.dashboard .dashboard-actions a {
    font-size: 1.1em;
    text-transform: uppercase;
    font-weight: bold;
}

.panel-primary a:hover {
    color: white;
}

.dashboard .status-circle {
    padding: 10px 0px;
}

.dashboard p {
    line-height: 1.1;
}

.upper-bold {
    text-transform: uppercase;
    font-weight: bold;
}

#sim-label {
    background-color: transparent !important;
    border-color: #e0e0e5;
    color: var(--normal-text-color);
    font-size: 16px;    
}

#sim-label.input-disabled {
    border: none;
    background-color: white;
    padding: 0px;
}

.skeleton-circle {
    background-color: #e7e7e7;
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 50%;
}

.skeleton-circle-space {
    padding:30px;
}

.skeleton-circle-wrapper {
    margin: 0px;
    position: relative;
    width: 100%;
}

.skeleton-circle-wrapper::after {
    content: "";
    display: block;
    padding-bottom: 100%;
}

.skeleton-text {
    width: 100%;
    height: 25px;
    background-color: #e7e7e7;
    margin-top: 50px;
}

.skeleton {
    padding: 30px;
}

.skeleton-graph {
    clip-path: polygon(83% 71%, 100% 100%, 0% 100%, 12% 62%, 37% 89%, 52% 57%);
    height: 300px;
}

.animate {
    animation: shimmer 2s infinite;
    background: linear-gradient(to right, #eff1f3 4%, #e2e2e2 25%, #eff1f3 36%);
    background-size: 1000px 100%;
}

@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

.adjust-columns {
    margin: 14px;
    display: inline-block;
    font-size: 14px;
    margin-left: 10px;
}

.sim-table-hint {
    background-color: #e5e5e5;
    font-size: 16px;
    padding: 10px 20px;
}

@media (min-width: 1660px) {
    .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
        float: left;
    }

    .col-xl-12 {
        width: 100%;
    }

    .col-xl-11 {
        width: 91.66666667%;
    }

    .col-xl-10 {
        width: 83.33333333%;
    }

    .col-xl-9 {
        width: 75%;
    }

    .col-xl-8 {
        width: 66.66666667%;
    }

    .col-xl-7 {
        width: 58.33333333%;
    }

    .col-xl-6 {
        width: 50%;
    }

    .col-xl-5 {
        width: 41.66666667%;
    }

    .col-xl-4 {
        width: 33.33333333%;
    }

    .col-xl-3 {
        width: 25%;
    }

    .col-xl-2 {
        width: 16.66666667%;
    }

    .col-xl-1 {
        width: 8.33333333%;
    }
}

.text-align-right {
    text-align: right !important;
}

.text-align-left {
    text-align: left !important;
}

.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

.sim-stats-count .status-circle {
    padding: 0px 0px;
    line-height: 0.6;
}

.sim-stats-count {
    text-transform: uppercase;
}

.no-side-padding {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.no-right-padding {
    padding-right: 0px !important;
}

.simlist-container {
    max-width: 85%!important;
    width: 85%!important;
    margin-right: auto!important;
    margin-left: auto!important;
}

.icon-connectivitysuite::before {
    content: "\e800";
    font-size: 1.2em;
    line-height: 0.85em;
}

.panel-heading,
.panel-body {
    padding: 0.3em;
}

.ip-space-details th,
.ip-space-details td {
    font-size: 1.3em;
    font-weight: normal;
    padding: 1em;
}

.ip-space-details th {
	background-color: var(--white);
	color: var(--gray);
}

.account-settings .data-header, .portal .data-table .data-header {
	font-size: 18px;
	font-weight: bold;
	margin-top: 1em;
}
.portal .data-table .data-value {
	font-size: 18px;
}
.delete-delivery-address-btn img{
	height: 22px;
	margin-left: 0.5em;
}

.close {
    padding: 0.6rem 1.2rem !important;
}

/* Custom Portal Styles Modification*/

.panel {
	font-size: 13px;
}

.col-xs-12 {
	font-size: 13px;
}

.imprint-links p {
	font-size: 13px;
}



.mainmenu ul li, #submenu ul li {
    list-style: none;
    display: inline-block;
    text-align: center;
}

.mainmenu ul li a {
	font-size: 13.5px;
	font-weight: normal;
	display: block;
	color: white;
	height: 95px;
	-webkit-transition: color 0.5s ease;
    -moz-transition: color 0.5s ease;
    -o-transition: color 0.5s ease;
}

.mainmenu ul {
	margin: 0;
}

.mainmenu svg {
	height: 30px;
}

.mainmenu img {
    height: 25px;
    width: 25px;
}

.mobile-navigation svg {
	height: 30px;
}

.mainmenu ul li a:hover, .mainmenu ul li a.active, .mainmenu ul li a:active, .mainmenu ul li a:focus {
	background-color: var(--light-blue);
}

.dashboard .panel {
    flex-grow: 1;
    border-width: 2px;
    min-height: 280px;
    margin-left: 0px;
    margin-right: 0px;
}

.jumbotron {
    background-color: var(--light-blue);
    color: white;
    padding: 1em 1.5em;
}
.jumbotron a {
	color: var(--light-gray);
}

#alertBox {
    border-radius: 0;
}

.icn-alert {
    min-width:64px;
}

.icn-alert img{
    height: 100%;
}

.modal-content .blue-banner {
    background-color: var(--light-blue);
    color: white;
    text-align: center;
    padding:1.5em 2em;
    margin:0 -2.7em;
}

.onceblue {
    color: var(--dark-blue) !important;
}

.login-content {
    float:none; 
    margin:auto;
}

#login-submit-button {
    margin-right: 1em;
}

#endpointNameEdit {
	top: -5px;
}

#reset-password-container {
    margin-top: -60px;
    padding: 0px;
    margin-left: 10px;
}

.action-reload-module {
    font-size: 1.3em;
}



.simlist-search-input {
    border: 0;
    border-bottom: 1px solid var(--gray);
    background: var(--light-grey);
    font-size: 18px;
    width: 18em;
}

.simlist-header-btn {
    padding-top: 0.6em;
    padding-bottom: 0.6em;
    padding-right: 2em;
    padding-left: 2em;
    font-size: 16px;
    text-transform: none !important;
}

.simlist-pagination-info, .table-pagination-info {
    font-size: 14px;
}

.pagination-arrow-prev {
	-webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
     transform: rotate(180deg);
}

.simlist-dropdown, .portal-dropdown, .portal select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid var(--gray);
    border-radius: 2px;
    margin-right: 10px;
    padding: 10px 40px 10px 10px;
    background-color: var(--light-background-color);
    font-size: 16px;
    background-image:
        linear-gradient(45deg, transparent 50%, #a9a9a9),
        linear-gradient(135deg,#a9a9a9, transparent 50%);
    background-position:
        calc(100% - 15px) calc(1em + 4px),
        calc(100% - 10px) calc(1em + 4px);
    background-size:
        5px 5px,
        5px 5px,
        2.5em 2.5em;
    background-repeat: no-repeat;
}
.simlist-dropdown {
	margin-left: 10px;
}

.organisation select {
    border: 1px solid #bfbfbf;
    border-radius: 4px;
}

.simlist-dropdown-cols {
    background-color: white;
    background-image: none;        
    border: 1px solid var(--light-blue);
    border-radius: 0px;
    color: var(--light-blue);
}

.simlist-filter-grid-container {
    display: grid;
    grid-template-columns: 2fr 7fr 2fr;
    grid-template-rows: 1fr;
}

.simlist-filter-all { 
    grid-column: 1;
    grid-row: 1;
}

.simlist-filter-details { 
    grid-column: 2;
    grid-row: 1;
}

.simlist-filter-columnselect { 
    grid-column: 2;
    grid-row: 4;
}

.one-px-up {
    position: relative;
    top: -1px;
}

.two-px-up {
    position: relative;
    top: -2px;
}

.sim-list-x {
    width: 24px;
    height: 24px;
    object-fit: contain;
    vertical-align: middle;
}

.sim-list-x-small {
    width: 16px;
    height: 16px;
    display: inline-block;
    transform: translateY(4px);
    object-fit: contain;
}

.one-px-down {
    position: relative;
    top: 1px;
}

.pos-r-minus-25 {
    position: relative;
    right: -25px;
}

.simlist-filter-innergrid {
    display: grid;
    grid-template-columns: 1fr 6fr;
    grid-template-rows: 1fr 1fr;
}

.simlist-filter-inner-order {
    grid-column: 1;
    grid-row: 1;
}.sim-list-x {
     width: 24px;
     height: 24px;
     object-fit: contain;
 }

.simlist-filter-inner-order-values {
    grid-column: 2;
    grid-row: 1;
}

.simlist-filter-inner-status {
    grid-column: 1;
    grid-row: 2;
}

.simlist-filter-inner-status-values {
    grid-column: 2;
    grid-row: 2;
}

.simlist-filter-inner-volume {
    grid-column: 1;
    grid-row: 2;
}

.simlist-filter-inner-volume-values {
    grid-column: 2;
    grid-row: 2;
}

.simlist-filter-inner-sms-volume {
    grid-column: 1;
    grid-row: 2;
}

.simlist-filter-inner-volume-sms-values {
    grid-column: 2;
    grid-row: 2;
}

.once-radio {
    -moz-appearance: None;
    -webkit-appearance: none;
    border: 1px solid var(--light-blue);
    width: 15px;
    height: 15px;
    border-radius: 15px;
    position: relative;
    top: 2px;
}

.once-radio:checked {
    background-image: url(../img/light-blue-circle.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 15px;
}

.display-none {
    display: none;
}

.height-20px {
    height: 20px;
}

.margin-Neg5px {
    margin-top: -5px;
}
.font-size-24 {
    font-size: 24px !important;
}

.font-size-16 {
    font-size: 16px !important;
}

.bg-ececec {
    background-color: #ececec !important;
}

.bg-darker-gray {
    background-color: var(--darker-gray);
}

#button-show-phone-support {
    position: relative;
    top: 3px;
}

.full-width-child {
    width: 100vw;
    position: relative;
    left: calc(-50vw + 50%);
}

.bg-light-blue {
    background-color: var(--light-blue);
}

.min-w-150{
    min-width: 150px;
}

.c-white {
    color: white;
}

.tab {
    color: var(--light-blue);
    padding: 8px;
    font-size: 16px;
    position: relative;
    bottom: -2px;
    cursor: pointer;
}

.tabs {
    border-bottom: solid 2px var(--light-blue);
}

.tab.active {
    color: var(--dark-blue);
    border-bottom: solid 5px var(--dark-blue);
}

#performance-table td, #incident-table td{
    vertical-align: middle;
}

.min-width-700 {
    min-width: 700px;
}

.table-scroll-horizontal {
    overflow-x: auto;
}

.performance-reload, .incident-reload {
    cursor: pointer;
    margin: 16px;
    position: absolute;
    top: 0;
    right: 0;
}

.performance-status {
    padding: 25px !important;
}

.mobile-menu-container {
    background-color: var(--dark-background-color);
    z-index: 99999;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    display: none;
    overflow-y: auto;
    max-height: 100vh;
}

.mobile-navigation-item {
    height: 119px;
    width: 119px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--light-blue);
    margin: 1px;
}

.mobile-navigation-icon {
    text-align: center;
    color: white;
    font-size: 16px;
}

.mobile-navigation {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.mobile-menu-toggle {
    position: absolute;
    top: 30px;
    right: 30px;
    cursor: pointer;
}

.mobile-footer {
    padding: 32px;
    padding-bottom: 90px;
}

.mobile-header {    
    height: 95px;
}

.mobile-logo {
    height: 78px;
    width: 135px;
    left: -15px;
    top: 10px;
    position: relative;
}

.mobile-footer #language-selection-dropdown, .mobile-footer #language-selection-dropdown #dropdownMenuLink,.mobile-footer #currency-selection-dropdown, .mobile-footer #currency-selection-dropdown #currencyDropdownMenuLink {
    padding-left: 0px;
    justify-content: start;
    display: inline-flex;
}

.mobile-menu-container .btn-logout {
    width: 150px;
    padding-top: 15px;
    padding-bottom: 15px;
}

.mobile-menu-header {
    padding: 24px;
    font-size: 16px;
    margin-right: 40px;
}

.header-company-name {
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100px;
    white-space: nowrap;
    display: inline-block;
    margin-top: 5px;
    margin-bottom: -5px;
}

.mobile-header-company-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.simlist-filter-circles{
    margin-left: 5px !important;
    margin-right: 10px !important;
    position: relative;
    top: -1px;
}

.w-15px {
    width: 15px;
}

.expired-icon {
    width: 22px;
    height: 22px;
}

.simlist-search-input {
    padding: 0;
    margin: 0 15px;
}

.panel h3.panel-h3-override{
    margin: 0; 
    font-size: 21px;
    font-weight: normal;
}

.initial-d-none{
    display: none;
}


.aws-link {
    font-size: 16px;
    bottom: 0;
    position: absolute;
    padding-bottom: 11px;
}

.no-pointer-events {
    pointer-events: none;
}

.extension-dropdown {
    font-size: 16px !important;
}

/* Start Media Tag */

@media screen and (max-width: 1280px) {
    header {
        background-position-y: 0px;
        background-size: 1280px 781px;
        height: 95px;
    }
    header .top {
        background-position-y: 0px;
        background-size: 100% 315px;
        top: 0px;
    }
    header .bottom {
        top: -139px;
        background-size: 100% 600px;
        background-position-y: -463px;
    }
    .punchline {
        padding-left: 15%;
    }
    
    .content {
        top: -70px;
    }
    
    ul.nav {
        margin-top: 00px;
    }
    .newsletter-detail-toggle {
        display: none;
    }
}

.readme-tile {
    height: 100%;
    padding: 50px;
    text-align: center;
}

.readme-tile-icon {
    margin-top: -100px;
}

.readme-tile-header {
    display: block !important;
    margin-top: 10px;
    font-weight: bold;
    font-size: 1.3rem;
}

.readme-tile-description {
    margin: 10px;
}

.readme-tile-link {
    font-size: 1.2rem;
}

.readme-tile-link img {
    margin: 0px 8px 8px -5px; 
}

.searchbox {
    background-color: white;
    position: relative;
    padding-left: 0px;
    padding-right: 0px;
    -moz-box-shadow: 0 4px 8px 0 #ddd;
    -webkit-box-shadow: 0 4px 8px 0 #ddd;
    box-shadow: 0 4px 8px 0 #ddd;
}

.searchbox-input {
    font-weight: bold;
    font-size: 20px;
    padding: 20px;
    display: flex;
}

.searchbox-input-text {
    border: 0;
    border-bottom: var(--normal-text-color) 1px solid;
    flex: 1;
    min-width: 100px;
}

.searchbox-input-icon {
    padding-left: 10px;
}

.searchbox-items {
    position: absolute;
    background-color: white;
    width: 100%;
    z-index: 10;
    max-height: 300px;
    overflow: auto;
    -moz-box-shadow: 0 8px 8px 0 #ddd;
    -webkit-box-shadow: 0 8px 8px 0 #ddd;
    box-shadow: 0 8px 8px 0 #ddd;
}

.searchbox-item {
    font-size: 1.2rem;
    cursor: pointer;
    padding: 5px 50px 5px 10px;
}

.searchbox-headline {
    font-size: 1.4rem;
    cursor: pointer;
    padding: 5px 50px 5px 10px;
    text-transform: uppercase;
    font-weight: bold;
    width: inherit;
    height: inherit;
    display: inline-table;
}

.searchbox-headline-starting img{
    max-height: 25px;
    max-width: 25px;
    margin-left: 10px;
}

.searchbox-headline-developer img{
    max-height: 20px;
    max-width: 20px;
    margin-left: 10px;
}

.searchbox-item:hover {
    background-color: #effaff;
}

.searchbox-label {
    padding-right: 10px;
    margin: 0px;
    font-size: 1.3rem;
}
    
.newsletter-consent {
    color: #6e6e6e;
    font-size: 12px;
}

.white-space-pre-wrap {
    white-space: pre-wrap;
}

.breakout-radio {
    display: inline-block;
    font-size: 1.1em;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-right: 1em;
    margin-bottom: 0;
}

.breakout-radio label {
	cursor: pointer;
	margin-bottom: 0;
}

.breakout-radio.disabled label, .breakout-radio.disabled {
    cursor: default;
}

/* Hide the browser's default radio button */
.breakout-radio input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom radio button */
.breakout-radio .checkmark {
    position: absolute;
    top: 7px;
    left: 0;
    height: 20px;
    width: 20px;
    background-color: white;
    border-radius: 50%;
    border: 3px solid #29ABE2;
    cursor: hand;
}

.breakout-radio input:disabled + .checkmark {
    border-color: gray;
    cursor: default;
} 

/* On mouse-over, add a grey background color */
.breakout-radio:hover input ~ .checkmark {
	background-color: white;
}

/* Show a lighter indicator (dot/circle) when hovering */
.breakout-radio:hover input:not(:checked) ~ .checkmark:after {
	display: block;
	background-color: #ccc;
	border-color:white;
	top: 4px;
	left: 4px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
}

.breakout-radio:hover input:not(:checked):disabled ~ .checkmark:after {
	background-color: white;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.breakout-radio .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.breakout-radio input:checked ~ .checkmark:after {
  display: block;
  background-color: #29ABE2;
  border-color:white;
}

.breakout-radio input:checked:disabled ~ .checkmark:after {
    background-color: gray;
}

/* Style the indicator (dot/circle) */
.breakout-radio .checkmark:after {
	top: 2px;
	left: 2px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: white;
}

.tooltip li {
    padding: 0px;
    margin: 0px;
    font-size: 1em;
}

@media screen and (min-width: 1200px) {
    .container {
          max-width: 1650px;
          width: 100%;
    }

}

@media (max-width: 1199px) {
    .cockpit-modules-wrapper .add-module-panel:not(.lastPanel) {
      display: none !important;
    }
  }

@media screen and (min-width: 1026px) {
    .desktop-menu-hidden {
        display: none !important;
    }
}

@media (min-width: 1025px) {
	.pad-right-3 {
	   padding-right: 3em;
	}

    .p-l-desktop-15 {
        padding-left: 15px !important;
    }

    .md-pull-right {
        float: right;
    }

    .mr-md-20{
        margin-right: 20px !important;
    }

    .simlist-header-grid-container {
        display: grid;
        grid-template-columns: 1fr 2fr;
        grid-template-rows: 2fr 1fr;
        grid-row-gap: 20px; 
    }

    .simlist-header-search { 
        grid-column: 2;
        grid-row: 1;
    }
    .simlist-header-page-size, .table-header-page-size { 
        grid-column: 1;
        grid-row: 2;
    }
    
    .simlist-header-top-level-actions { 
        grid-column: 2;
        grid-row: 2;
    }

    .desktop-d-block {
        display: block !important;
    }
    .payment-mode-icons {
        display: contents;
    }
}

@media screen and (max-width: 1024.999px) { /* --breakpoint-mobile-design-max-width */
    header .container .mainmenu ul li {
        display: none;
    }
    header .container ul.show-menu li {
        float: none;
        display: block;
        background-color: var(--dark-background-color);
        min-width: 122px;
    }

    .modules-container[data-column="RIGHT"] .sim-data {
        padding-left: 25px !important;
    }

    .modules-container[data-column="RIGHT"] .usage-container {
        padding-left: 25px !important;
    }
    

    .container-header-portal{
        max-width: unset !important;
    }
    .mainmenu ul li a {
        height: 101px !important;
    }

    .mobile-menu-hidden {
        display: none;
    }

    .mobile-menu-shown {
        display: block;
    }

    .modal-mobile-overlay {
        padding: 0 !important;
    }

    .modal-mobile-overlay .modal-dialog{
        margin: 0 !important;
        max-width: 100vw;
    }

    .modal-mobile-overlay .modal-content{
        min-height: 100vh;
        background-color: var(--pale-blue);
        position: relative;
        padding-bottom: 7em;
    }

    .modal-mobile-overlay .modal-header .close span{
        color: var(--light-blue);
    }

    .modal-mobile-overlay .modal-footer {
        position: absolute;
        left: 0;
        bottom: 0;
        padding: 1.5em 2.5em;
        width: 100%;
    }

    .modal-mobile-overlay .modal-footer .btn-portal-light-outline::after {
        background-color: var(--pale-blue) !important;
    }

    .mobile-overlay {
        display: none;
        position: fixed !important;
        left: 0;
        top: 0;
        right: 0;
        height: 100vh !important;
        z-index: 1000;
    }

    body.mobile-sim-actions-open {
        overflow: hidden;
    }

    .mobile-overlay .close {
        display: none;
    }

    .mobile-sim-actions-open .mobile-overlay {
        display: block;
    }

    .mobile-sim-actions-open #displayActionContainerButton, body.modal-open #displayActionContainerButton{
        display: none !important;
    }

    .mobile-sim-actions-open .close {
        display: block;
        position: fixed;
        right: 10px;
        top: 10px;
        color: var(--light-blue);
        font-size: 4em;
        line-height: 0.75;
        cursor: pointer;
        font-weight: normal;
    }    

    .mobile-sim-actions-open #command {
        margin-top: 75px;
    }

    .mobile-sim-actions-open #bulk-action-footer {
        min-width: unset;
    }

    .mobile-sim-actions-open .display-sim-action-button {
        display: none !important;
    }

    .display-sim-action-button {
        position: fixed;
        bottom: 10px;
        right: 10px;
        z-index: 10000;
        height: 90px;
        width: 90px;
        cursor: pointer;
    }

    .mobile-sim-actions-open #displayActionContainerButton {
        display: none;
    }

    .modal-footer .submitButtons {
        width: 100%;
    }
    .modal-footer .submitButtons button{
        margin-top: .25rem;
        margin-bottom: .25rem;
    }
    body {
        margin-bottom: 0; /* footer is not sticky any more */
    }
    header {
        background-attachment: scroll;
    }
    header .container {
        padding-right: 0px;
    }
    .newsletter-details {
    	display:none;
    }
    
    .mobile-d-none{
        display: none;
    }
    
    .newsletter-detail-toggle {
        display: block;
        margin-top: -10px;
        margin-left: 5px;
    }
    .punchline {
        padding-left: 5%;
        top: 0px;
    }
    .punchline h1 {
        font-size: 2.8em;
    }
    
    .punchline h2 {
        font-size: 2.2em;
    }
    
    .profile, .tariff-box {
        margin-left: auto;
        margin-right: auto;
    }
    
    .cart-product-label {
        max-width: 50%;
        flex: 1 1 0px;
    }
    
    .footer {
        height: auto;
        min-height: 80px;
        max-height: 148px;
        position: relative;
        bottom: 0px;
        left: 0px;
    }
	#action-footer-container-wrapper.floating, #action-footer-container-wrapper { /* Footer is not sticky any more so action bar should also not float. */
		position: relative;
		bottom: 0;
		height: unset;
	}

    .footer .copyright {
        font-size: 14px;
    }

    .imprint-links *> a {
        font-size: 14px;
    }

	#webshop-cart-summary-mobile {
		width: 100vw; /* make it 100% of the viewport width (vw) */
    	margin-left: calc((100% - 100vw) / 2); /* then remove the gap to the left of the container with this equation */
    	margin-bottom: 2em;
	}

    .cart-summary {
        border-left: none;
        border-right: none;
        padding-left: 37px;
        padding-right: 37px;
    }
    
    .cart-summary-header.cart-label {
    	padding-right: 1em;
    }

    .cart-w-50 {
        min-width: 50%;
        max-width: 50%;
    }

    .content h1 {
        font-size: 44px;
    }

    .cart-amount-info {
        text-align: center;
    }
    .form-group > label {
        margin-right: 5px;
    }
    .form-group:not(.required) > label:after {
        content: ' ';
        width: 6.7px;
        position: relative;
        display: block;
    }

    .form-group:not(.required).checkbox > label:after {
        position: absolute;
    }

    .btn-mobile {
        width:100%;
    }

    .payment-mode-radio {
        margin-right: 0.2em;
    }

    .payment-mode-radio label {
        padding-left: 0.5em;
    }

    .payment-card-icon {
        height:2em;
        margin-right: 0;
    }
    #webshop-page-content .form-group {
        margin-left: 20px;
    }
    #webshop-page-content .form-group label {
    	width: 5px;
    	margin-left: -20px;
    }
    #webshop-page-content .form-group input, #webshop-page-content .form-group select {
		display: inline;
    }
    
    .mt-sx-e1{
        margin-top: 1em;
    }

    .mt-sx-10{
        margin-top: 10px;
    }

    .panel {
        margin: 5px;
    }
	.module-panel {
		margin: 10px;
	}

    .panel-collapse{
        font-size: 0.71em;
    }

    .sx-left {
        margin-right: 25%;
    }

    .mobile-hidden {
        display: none;
    }

    .mobile-show {
        display: block;
    }

    .simlist-header-grid-container {
        display: grid;
        grid-template-columns: 1fr 2fr;
        grid-template-rows: 2fr 1fr ;
        grid-row-gap: 20px;    
    }

    .simlist-header-search { 
        grid-column: 2 / 2;
        grid-row: 1;
    }
        
    .simlist-header-page-size, .table-header-page-size { 
        grid-column: 1;
        grid-row: 2;
    }
    
    .simlist-header-top-level-actions { 
        grid-column: 2;
        grid-row: 2;
    }

    .simlist-filter-innergrid {
        display: grid;
        grid-template-columns: 1fr 3fr;
        grid-template-rows: 3fr 4fr 4fr 1.5fr;
        grid-row-gap: 15px; 
    }

    .p-mobile-0 {
        padding: 0 !important;
    }

    .sim-usage div[data-module-type="SMS_USAGE"] {
        margin-right: 0;
        margin-left: 0;
    }
    
    .sim-usage div[data-module-type="DATA_USAGE"] {
        margin-left: 0;
        margin-right: 0;
    }

    #new-data-stream-form .modal-body {
        margin-bottom: 50px;
    }

    #modal-edit-billing-address-form .modal-body {
        margin-bottom: 80px;
    }

    #modal-edit-delivery-address-form .modal-body {
        margin-bottom: 80px;
    }

    #modal-new-delivery-address-form .modal-body {
        margin-bottom: 80px;
    }

    #modalNewUserDetail-form .modal-body {
        margin-bottom: 80px;
    }

    #modalEditUserDetail-form .modal-body {
        margin-bottom: 160px;
    }

    #modal-change-password-form .modal-body {
        margin-bottom: 50px;
    }

    #modalNewSupportRequest-form .modal-body {
        margin-bottom: 80px;
    }

    #modalNewSupportRequest-form .modal-footer {
        top: 400px;
        bottom: unset;
    }

    #change-password-form .password-details {
        color: var(--normal-text-color);
        background: transparent;
        text-align: left;
        font-size: 1rem;
        padding: 0;
        margin: 0px;
        margin-left: -15px;
    }
    .payment-mode-icons {
        padding-left: 48px;
    }
}

@media screen and (min-width: 992px) {
    body {
        margin-bottom: var(--footer-height);
    }
    body.floating-action-bar #wrapper {
        padding-bottom: calc(var(--footer-height) + var(--simlist-action-footer-height));
        min-height: 100vh;
        position: absolute;
        width: 100%;
    }
} 

@media screen and (min-width: 768px){
    .btn-mobile {
        width:auto;
    }
    .mobile-only {
        display: none;
    }
    .desktop-only {
        display: block;
    }
    .modal-footer .submitButtons {
        width: auto;
    }
}

@media (max-width: 767.99px) {
    .mobile-only {
        display: block;
    }
    .desktop-only {
        display: none;
    }
    .simlist-header-grid-container {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 2fr 2fr 1fr;
        grid-row-gap: 20px;    
    }
    
    .simlist-header-search { 
        grid-column: 1 / span 2;
        grid-row: 1;
    }
        
    .simlist-header-page-size, .table-header-page-size { 
        grid-column: 1;
        grid-row: 3;
    }
    
    .simlist-header-top-level-actions { 
        grid-column: 1;
        grid-row: 2;
    }

    .simlist-filter-columnselect { 
        grid-column: 1 / span 2;
        grid-row: 4;
    }

    .simlist-filter-innergrid{
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 0.5fr 3fr 0.5fr 4fr 0.5fr 4fr 1.5fr;
        grid-row-gap: 15px; 
    }

    .simlist-filter-inner-order {
        grid-column: 1;
        grid-row: 1;
        text-align: left;
    }
    
    .simlist-filter-inner-order-values {
        grid-column: 1;
        grid-row: 2;
    }
    
    .simlist-filter-inner-status{
        grid-column: 1;
        grid-row: 3;
        text-align: left;
    }

    .simlist-filter-inner-status-values {
        grid-column: 1;
        grid-row: 4;
    }
    .simlist-filter-inner-volume {
        grid-column: 1;
        grid-row: 3;
        text-align: left;
    }

    .simlist-filter-inner-volume-values {
        grid-column: 1;
        grid-row: 4;
    }

    .simlist-filter-inner-sms-volume {
        grid-column: 1;
        grid-row: 3;
        text-align: left;
    }

    .simlist-filter-inner-volume-sms-values {
        grid-column: 1;
        grid-row: 4;
    }

    .simlist-filter-columnselect {
        grid-column: 1;
        grid-row: 7;
    }
    
    .aws-link {
        position: unset;
    }

    #new-data-stream-form .modal-body {
        margin-bottom: 100px;
    }
}


@media screen and (max-width: 414px) {
    
    header .top {
        background-size: 200% 315px;
    }
    
    header .bottom {
        background-size: 200% 300px;
        background-position-y: -163px;
    }
    
    .punchline {
        padding-left: 8%;
        top: -10px;
    }
    
    .punchline h1 {
        font-size: 3em;
        line-height: 1em;
    }
    
    .punchline h2 {
        font-size: 1.6em;
    }
    
    .tariff-box-start {
        width: 100%;
    }

    .sim-usage .panel-body {
        padding: 30px 0px;
        padding-top: 20px;
    }
}