/* 
 * IWindow plugin
 */
.tpl-window-modal-overlay {
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #000000;
opacity: 0.85;
z-index: 5000;
}

.tpl-window-placeholder {
position: absolute;
top: 0;
left: -999px;
border: 1px solid #000000;
background: var(--neutral-color-50);
opacity: 0.5;
cursor: nw-resize;
}

.tpl-window-default {
position: relative;
text-align: left;
z-index: 10;
background: #ffffff;
border-radius: var(--border-all-radius-sm);
}

.tpl-window-default .tpl-window-top {
padding: 20px 25px;
}

.tpl-window-default .tpl-window-caption {
padding-right: 30px;
padding-bottom: 0;
border: none;
font-size: 30px;
color: var(--primary-color);
font-weight: 600;
}

.tpl-window-default.tpl-sim-card-activation .tpl-window-caption {
font-size: 29px;
}

.tpl-window-default .tpl-window-middle {
position: relative;
padding: 0 25px 25px 25px;
}

.tpl-window-default .tpl-window-body-wrapper {
position: relative;
}

.tpl-window-default .tpl-window-body {
min-width: 250px;
min-height: 72px;
}

.tpl-window-default .tpl-window-body p {
font-size: 17px;
}

.tpl-window-default .tpl-window-bottom {
clear: both;
position: relative;
height: 0px;
}

.tpl-window-default .tpl-window-header-buttons {
position: absolute;
top: 0px;
right: 0px;
margin: 20px 20px 0px 0px !important;
}

.tpl-window-default .tpl-window-drag-handle {
cursor: move;
}

.tpl-window-default .tpl-window-close-buttons {
padding-top: 40px;
}

.tpl-window-default .tpl-window-close-buttons .tpl-cancel-button {
border: none;
color: var(--primary-color-300);
font-size: 16px;
background: none;
text-decoration: underline;
}

.tpl-window-default .tpl-window-sticky-close-buttons {
position: absolute;
bottom: 0;
left: 0;
right: 0;
margin-top: -40px;
}

.tpl-window-default .tpl-window-close-button {
float: right;
width: 16px;
height: 16px;
margin-right: 0px;
background: url(/css/iwindow_img/close.svg) no-repeat scroll 0 0;
background-size: 16px 16px;
cursor: pointer;
}

.tpl-window-default .tpl-window-msg {
line-height: 1.3;
padding: 2px 5px;
margin: 0;
}

.tpl-window-default .tpl-window-text {
position: absolute;
top: 3px;
left: 0;
right: 0;
bottom: 0;
padding: 5px;
overflow-y: auto;
}

.tpl-window-default .tpl-window-progress {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}

.tpl-window-default .tpl-window-progress .progress-indicator {
position: absolute;
top: 50%;
left: 50%;
margin: -12px 0 0 -110px;
}

.tpl-window-default .tpl-window-spinner {
margin-top: 64px;
}

.tpl-window-default .tpl-window-spinner .spinner-text {
margin: 52px auto 0 auto;
max-width: 350px;
font-size: 21px;
text-align: center;
}

.tpl-window-default.campaign .tpl-window-top {
padding-bottom: 10px;
}

.tpl-window-default .campaign-confirmation .details {
font-size: 16px;
line-height: 19px;
color: var(--primary-color-300);
}

.tpl-window-default .campaign-confirmation .subscription {
margin-top: 30px;
padding: 20px;
border: 1px solid var(--neutral-color-400);
border-radius: var(--border-all-radius-sm);
}

.tpl-window-default .campaign-confirmation .subscription .owner-name {
display: block;
font-size: 21px;
line-height: 26px;
color: var(--primary-color-300);
white-space: pre;
overflow: hidden;
text-overflow: ellipsis;
}

.tpl-window-default .campaign-confirmation .subscription .rate-plan {
display: block;
margin-top: 5px;
font-size: 16px;
line-height: 19px;
color: var(--primary-color);
font-weight: 600;
white-space: pre;
overflow: hidden;
text-overflow: ellipsis;
}

.tpl-window-default .campaign-confirmation form {
margin-top: 20px;
}

.tpl-window-default .campaign-confirmation form button {
width: 170px;
}

.tpl-window-default .pre-activation-confirmation .service-price {
margin-top: 20px;
font-size: 20px;
font-weight: 600;
}

.tpl-window-default .usage-entries,
.tpl-window-default .services-list {
position: absolute;
top: 10px;
left: -2px;
right: -2px;
bottom: 0;
margin: 0;
overflow-y: auto;
padding-right: 5px;
}

.tpl-window-default .services-list {
top: 0;
}

.tpl-window-default .packages-list {
margin: 0;
}

.tpl-window-default .usage-entries .form-section-content {
padding: 0 2px;
}

.tpl-window-default .usage-entries .dropdown-content {
box-sizing: border-box;
width: 100%;
}

.tpl-window-default .service-items-list {
margin: 0;
}
	
.tpl-window-default .service-items-list + .service-items-list {
margin-top: 6px;
}

.tpl-window-default .tip + .service-items-list {
margin-top: 40px;
}

.tpl-window-default .service-items-list h3 {
margin: 40px 0 10px 0;
}

.tpl-window-default .service-items-list .service-item,
.tpl-window-default .packages-list .package-item {
width: 100%;
box-sizing: border-box;
padding: 20px;
margin-top: 6px;
border-color: var(--neutral-color-100);
}

.tpl-window-default .service-items-list .service-item:first-child,
.tpl-window-default .packages-list .package-item:first-child {
margin-top: 0;
}

.tpl-window-default .service-items-list .service-item .service-name,
.tpl-window-default .packages-list .package-item .package-name {
font-size: 20px;
line-height: 26px;
color: var(--primary-color-300);
}

.tpl-window-default .service-items-list .service-item .service-name {
padding-bottom: 20px;
}

.tpl-window-default .service-items-list .service-item .service-price-label {
display: block;
margin-top: 6px;
color: var(--primary-color);
}

.tpl-window-default .service-items-list .service-item .service-price {
padding-top: 0;
}

.tpl-window-default .service-items-list .service-item .service-description {
margin-top: -10px;
margin-bottom: 10px;
}

.tpl-window-default .packages-list .package-item .package-price {
padding-top: 28px;
padding-bottom: 0;
}

.tpl-window-default .service-items-list .service-item .activate,
.tpl-window-default .service-items-list .service-item .active,
.tpl-window-default .packages-list .package-item .activate {
position: absolute;
left: auto;
right: 25px;
bottom: 20px;
font-size: 16px;
width: 180px;
padding-left: 0;
padding-right: 0;
}

.tpl-window-default .packages-list .package-item .activate {
width: 120px;
}

.tpl-window-default .service-items-list .service-item .activate.mobile {
display: none;
width: 100px;
}

.tpl-window-default .service-items-list .service-item .active {
background: #ffffff;
color: var(--primary-color);
border: 2px solid var(--primary-color-300);
cursor: default;
}

.tpl-window-default .service-items-list .service-item .active:hover {
background: transparent;
}

.tpl-window-default .service-items-list .service-item p,
.tpl-window-default .packages-list .package-item p {
margin-top: 25px;
font-size: 16px;
}

.tpl-window-default .service-items-list + .tip {
margin-top: 6px;
}

.tpl-window-default .service-items-list + .tip form button {
float: right;
width: 180px;
margin-right: 7px;
}

.tpl-window-default .service-item-confirmation,
.tpl-window-default .package-item-confirmation {
display: none;
}

.tpl-window-default .service-item-confirmation form,
.tpl-window-default .package-item-confirmation form {
margin-top: 20px;
}

.tpl-window-default .service-item-confirmation form button,
.tpl-window-default .package-item-confirmation form button {
width: 190px;
}

.tpl-window-default .service-item-confirmation form a,
.tpl-window-default .package-item-confirmation form a {
display: inline-block;
margin-top: 10px;
font-size: 16px;
line-height: 26px;
}

.tpl-window-default .update-call-forwarding-form {
padding-bottom: 70px;
}

.tpl-window-default .update-call-forwarding-form .input-row .input input[type=text] {
max-width: 300px;
}
	
.tpl-window-default .usage-summary {
padding: 15px;
border: 1px solid #dddedf;
}

.tpl-window-default .usage-summary .label {
font-size: 16px;
}

.tpl-window-default .usage-summary .amount {
font-size: 16px;
color: var(--primary-color);
float: right;
}

.tpl-window-default .usage-entries > .usage-entries-list {
display: block;
}

.tpl-window-default .empty-content {
position: absolute;
left: 0;
right: 0;
top: 50%;
margin-top: -10px;
}

.tpl-window-default .tpl-window-body .close-buttons {
padding-top: 25px;
}

.tpl-window-default .tpl-window-body .close-buttons a {
font-size: 17px;
line-height: 40px;
display: inline-block;
padding: 0 20px;
color: var(--primary-color);
}

.tpl-window-default .tpl-window-body .close-buttons a:hover {
color: var(--primary-color-500);
}

.tpl-window-default .tpl-window-body .close-buttons .terms-link {
float: right;
}

.tpl-window-default .contact-form .input-row {
position: relative;
}

.tpl-window-default .contact-form .input-row .input {
width: auto;
max-width: none;
}

.tpl-window-default .contact-form .input-row .textarea {
max-width: none;
width: auto;
}

.tpl-window-default .contact-form .select-input {
padding: 0;
position: relative;
background: #ffffff;
border-radius: var(--border-all-radius-sm);
}

.tpl-window-default .contact-form .select-input:hover {
background: #e5e5e5;
}

.tpl-window-default .contact-form .select-input select {
appearance: none;
background: transparent;
position: relative;
z-index: 1;
width: 100%;
box-sizing: border-box;
cursor: pointer;
}

.tpl-window-default .contact-form .select-input:before {
position: absolute;
top: 50%;
margin-top: -7px;
right: 14px;
width: 14px;
height: 14px;
content: '';
background: url(/css/main_img/arrow.svg) no-repeat scroll right center;
background-size: 14px auto;
}

.tpl-window-default .contact-form .select-input select::-ms-expand {
display: none;
}

.tpl-window-default .contact-form .select-input select option {
font-size: 14px;
font-weight: 400;
padding: 3px 12px;
background: #ffffff;
}

.tpl-window-default .marketing-consent-box {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 60px;
overflow-y: auto;
}

.tpl-window-default .marketing-consent-box p + p {
margin-bottom: 25px;
}

.tpl-window-default .fc-tip p {
font-size: 13px;
color: var(--neutral-color-200);
}

.tpl-window-default .rollover-info,
.tpl-window-default .settings-info {
margin-bottom: 27px;
}

.tpl-window-default .change-sim-card .tip,
.tpl-window-default .block-sim-card .tip {
margin-top: 20px;
margin-bottom: 10px;
max-width: 380px;
}

.tpl-window-default .block-sim-card .tip {
max-width: 400px;
}

.tpl-window-default .change-sim-card .submit-buttons {
margin-top: 10px;
margin-bottom: 25px;
}

.tpl-window-default .block-sim-card .block {
border: 2px solid var(--primary-color);
padding-left: 15px;
padding-right: 15px;
background: #ffffff;
color: var(--primary-color);
font-size: 16px;
position: relative;
margin-right: 5px;
margin-bottom: 5px;
height: auto;
padding-top: 8px;
padding-bottom: 8px;
cursor: pointer;
}

.tpl-window-default .block-sim-card .block:disabled {
cursor: default;
}

.tpl-window-default .block-sim-card .block.block-out {
margin-right: 0;
}

.tpl-window-default .block-sim-card .block .type-icon {
display: inline-block;
height: 16px;
position: relative;
top: 2px;
margin-right: 8px;
width: 16px;
}

.tpl-window-default .block-sim-card .block:not(.blocked):not(:disabled):hover {
border-color: var(--primary-color-500);
color: var(--primary-color-500);
}

.tpl-window-default .block-sim-card .block.blocked {
background: var(--primary-color);
color: #ffffff;
}

.tpl-window-default .block-sim-card .block.blocked:not(:disabled):hover {
cursor: default;
background: var(--primary-color);
}

.tpl-window-default .block-sim-card .block .status-icon {
position: absolute;
display: block;
top: -7px;
right: -7px;
width: 23px;
height: 23px;
}

.tpl-window-default .block-sim-card .block.block-in-out .type-icon {
background: url(/css/main_img/incoming_outgoing.svg) no-repeat scroll center;
background-size: auto 16px;
}

.tpl-window-default .block-sim-card .block.block-in-out:not(.blocked):not(:disabled):hover .type-icon {
background: url(/css/main_img/incoming_outgoing_hover.svg) no-repeat scroll center;
background-size: auto 16px;
}

.tpl-window-default .block-sim-card .block.block-in-out.blocked .type-icon {
background-image: url(/css/main_img/incoming_outgoing_blocked.svg);
}

.tpl-window-default .block-sim-card .block.block-out .type-icon {
background: url(/css/main_img/outgoing.svg) no-repeat scroll center;
background-size: auto 14px;
}

.tpl-window-default .block-sim-card .block.block-out:not(.blocked):not(:disabled):hover .type-icon {
background: url(/css/main_img/outgoing_hover.svg) no-repeat scroll center;
background-size: auto 14px;
}

.tpl-window-default .block-sim-card .block.block-out.blocked .type-icon {
background-image: url(/css/main_img/outgoing_blocked.svg);
}

.tpl-window-default .esim-acivation-info p,
.tpl-window-default .bank-id-info p {
padding-bottom: 100px;
}

.tpl-window-default .esim-activation-tip p {
padding-bottom: 80px;
}

.tpl-window-default .esim-activation-tip p:first-child {
padding-bottom: 20px;
}

.tpl-window-default .esim-activation-tip .connection-tip {
color: var(--primary-color);
padding-left: 26px;
background: url(/css/main_img/wifi.svg) no-repeat scroll 0 2px;
background-size: 18px 18px;
font-weight: 500;
}

.tpl-window-default .sim-card-variant-items {
padding-left: 1px;
padding-right: 1px;
min-height: 115px;
}

.tpl-window-default .sim-card-variant .sim-card-type {
margin: 1px 15px 1px 1px;
padding: 29px 29px 31px 29px;
min-width: 200px;
border: 2px solid var(--neutral-color-200);
border-radius: var(--border-all-radius-sm);
background: #ffffff;
color: var(--primary-color);
font-weight: normal;
box-sizing: border-box;
}

.tpl-window-default .sim-card-variant .sim-card-type:not(.selected):hover {
border-color: var(--neutral-color-100);
}

.tpl-window-default .sim-card-variant .sim-card-type.selected {
border-color: var(--primary-color);
}

.tpl-window-default .sim-card-variant .sim-card-type span {
display: block;
width: 32px;
height: 32px;
margin: 0 4px -7px 0;
}

.tpl-window-default .sim-card-variant .sim-card-type.physical span {
background: url(/css/main_img/physical_sim_card.svg) no-repeat top center;
background-size: auto 28px;
}

.tpl-window-default .sim-card-variant .sim-card-type.esim span {
background: url(/css/main_img/esim.svg) no-repeat top center;
background-size: auto 28px;
}

.tpl-window-default .esim-acivation-info .close-buttons,
.tpl-window-default .bank-id-info .close-buttons,
.tpl-window-default .esim-activation-tip .close-buttons {
position: absolute;
bottom: 0;
}

.tpl-window-default .esim-acivation-info .close-buttons button,
.tpl-window-default .bank-id-info .close-buttons button,
.tpl-window-default .esim-activation-tip .close-buttons button {
min-width: 180px;
}

.tpl-window-default .esim-details {
margin-top: 0;
}

.tpl-window-default .esim-details .image {
float: none;
background-color: transparent;
padding: 0;
min-height: 250px;
}

.tpl-window-default .esim-details .image img {
max-width: 250px;
max-height: 250px;
margin: 0 auto;
display: block;
}

.tpl-window-default .esim-details .esim-description {
padding-left: 0;
margin: 20px auto 0 auto;
max-width: 360px;
}

.tpl-window-default .sim-card .close-buttons {
text-align: center;
padding-top: 40px;
}

.tpl-window-default .confirmation-code p {
margin-bottom: 25px;
}

.tpl-window-default .confirmation-code a {
font-size: 17px;
}

.tpl-window-default .update-port-date-form .input-row .input {
position: relative;
width: auto;
box-sizing: border-box;
}

.tpl-window-default .update-port-date-form .input-row .input.picker-input {
width: 260px;
}

.tpl-window-default .update-port-date-form .input-row .input.picker-input > input[type=text] {
padding-left: 48px;
cursor: pointer;
}

.tpl-window-default .update-port-date-form .input-row .input.picker-input > input[type=text]:focus-visible {
outline: none;
}

.tpl-window-default .update-port-date-form .input-row .icon {
position: absolute;
top: 10px;
left: 12px;
width: 32px;
height: 32px;
cursor: pointer;
}

.tpl-window-default .update-port-date-form .input-row .icon.calendar {
background: url(/css/main_img/calendar.svg) no-repeat scroll center;
background-size: 24px auto;
}

.tpl-window-default .update-port-date-form .input-row .icon.arrow {
top: 19px;
left: auto;
right: 20px;
width: 14px;
height: 14px;
background: url(/css/main_img/arrow.svg) no-repeat scroll right center;
background-size: 14px auto;
}

.tpl-window-default .update-port-date-form .input-row .icon.arrow.toggled {
transform: rotateZ(180deg);
}

.tpl-window-default .update-port-date-form .close-buttons {
padding-top: 20px;
}

.tpl-window-default .update-port-date-form button[type=submit] {
width: 259px;
padding: 0;
}

@media screen and (max-width: 650px) {
	.tpl-window-default .campaign-confirmation .left-col {
	max-width: 60%;
	}
}

@media screen and (max-width: 480px) {
	.tpl-window-default .tpl-window-body .close-buttons .buttons-separator {
	display: block;
	}
	
	.current-subscription .service-items-list .service-item .service-name {
	font-size: 30px;
	}
	
	body .tpl-window-default .tpl-window-body .close-buttons a,
	body .tpl-window-default .tpl-window-body .close-buttons .terms-link {
	padding: 0;
	display: block;
	float: none;
	}
	
	body .tpl-window-default .tpl-window-caption {
	font-size: 26px;
	padding-top: 2px;
	}
	
	.tpl-window-default .campaign-confirmation .subscription {
	padding: 20px;
	}
	
	.tpl-window-default .campaign-confirmation .subscription .owner-name,
	.tpl-window-default .campaign-confirmation .subscription .rate-plan {
	white-space: normal;
	}

	.tpl-window-default .campaign-confirmation .left-col {
	float: none;
	max-width: 100%;
	}

	.tpl-window-default .campaign-confirmation .right-col {
	float: none;
	width: auto;
	text-align: left;
	}
	
	.tpl-window-default .campaign-confirmation form button {
	width: 100%;
	}

	.tpl-window-default .service-items-list .service-item,
	.tpl-window-default .packages-list .package-item {
	padding: 15px;
	}
	
	.tpl-window-default .service-items-list .service-item .service-name,
	.tpl-window-default .packages-list .package-item .package-name {
	font-size: 18px;
	}

	.tpl-window-default .service-items-list .service-item .activate,
	.tpl-window-default .service-items-list .service-item .active {
	right: 15px;
	bottom: 15px;
	width: 100px;
	}
	
	.tpl-window-default .service-items-list .service-item .activate.desktop {
	display: none;
	}
	
	.tpl-window-default .service-items-list .service-item .activate.mobile {
	display: inline;
	}

	.tpl-window-default .service-items-list .service-item .service-price,
	.tpl-window-default .packages-list .package-item .package-price {
	font-size: 22px;
	line-height: 25px;
	}
	
	.tpl-window-default .packages-list .package-item .package-price {
	padding-top: 20px;
	padding-bottom: 10px;
	}
	
	.tpl-window-default .packages-list .package-item .activate {
	width: 100px;
	right: 15px;
	bottom: 15px;
	}
	
	.tpl-window-default .service-items-list .service-item p,
	.tpl-window-default .packages-list .package-item p {
	font-size: 16px;
	margin-top: 15px;
	}
	
	.tpl-window-default .service-item-confirmation form button,
	.tpl-window-default .package-item-confirmation form button {
	width: 100%;
	}
	
	.tpl-window-default .service-items-list + .tip form button {
	width: 100px;
	margin-right: 0;
	}
	
	body .tpl-window-default.tpl-sim-card-activation .tpl-window-caption {
	font-size: 22px;
	}
	
	.tpl-window-default .sim-card-variant .sim-card-type {
	width: 100%;
	margin-right: 0;
	margin-bottom: 10px;
	}
	
	.tpl-window-default .esim-details .image {
	min-height: 150px;
	}
	
	.tpl-window-default .esim-details .image img {
	max-width: 150px;
	max-height: 150px;
	}
	
	.tpl-window-default .esim-details .esim-description {
	max-width: 100%;
	}
	
	.tpl-window-default .update-call-forwarding-form {
	padding-bottom: 110px;
	}
}

@media screen and (max-width: 370px) {
	body .tpl-window-default .tpl-window-caption {
	font-size: 20px;
	line-height: 23px;
	}
}