/*! Imjs (imjs) | 2023-10-27 00:17:14 */
/* File: /src/features/css-general/general.css */
.im-bold {font-weight: bold;}
.im-semibold {font-weight: 600;}
.im-normal {font-weight: normal;}

.im-center {text-align: center;}
.im-left {text-align: left;}
.im-right {text-align: right;}

.im-no-selection,
.im-checkbox,
.im-radio,
.im-tabs,
.im-button{-webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}

.im-break-text {overflow-wrap: break-word; word-wrap: break-word; word-break: break-all;}

.im-hidden, .imjs-hidden {display: none !important;}
.imjs-outside-of-viewport {position: absolute !important; left: -10000px; top: -10000px;}
.imjs-invisible{opacity:0 !important;}

/* File: /src/features/css-general/dimensions.css */
/**
Should be used only for tables, forms and controls
Ex: .im-form width-500, .im-textarea height-120
*/
.width-10 {width: 10px;}
.width-20 {width: 20px;}
.width-30 {width: 30px;}
.width-40 {width: 40px;}
.width-50 {width: 50px;}
.width-60 {width: 60px;}
.width-70 {width: 70px;}
.width-80 {width: 80px;}
.width-90 {width: 90px;}
.width-100 {width: 100px;}
.width-110 {width: 110px;}
.width-120 {width: 120px;}
.width-130 {width: 130px;}
.width-140 {width: 140px;}
.width-150 {width: 150px;}
.width-160 {width: 160px;}
.width-170 {width: 170px;}
.width-180 {width: 180px;}
.width-190 {width: 190px;}
.width-200 {width: 200px;}
.width-210 {width: 210px;}
.width-220 {width: 220px;}
.width-230 {width: 230px;}
.width-240 {width: 240px;}
.width-250 {width: 250px;}
.width-300 {width: 300px;}
.width-400 {width: 400px;}
.width-500 {width: 500px;}
.width-600 {width: 600px;}
.width-700 {width: 700px;}
.width-800 {width: 800px;}
.width-900 {width: 900px;}
.width-1000 {width: 1000px;}

.height-10 {height: 10px;}
.height-20 {height: 20px;}
.height-30 {height: 30px;}
.height-40 {height: 40px;}
.height-50 {height: 50px;}
.height-60 {height: 60px;}
.height-70 {height: 70px;}
.height-80 {height: 80px;}
.height-90 {height: 90px;}
.height-100 {height: 100px;}
.height-100 {height: 100px;}
.height-110 {height: 110px;}
.height-120 {height: 120px;}
.height-130 {height: 130px;}
.height-140 {height: 140px;}
.height-150 {height: 150px;}
.height-160 {height: 160px;}
.height-170 {height: 170px;}
.height-180 {height: 180px;}
.height-190 {height: 190px;}
.height-200 {height: 200px;}
.height-210 {height: 210px;}
.height-220 {height: 220px;}
.height-230 {height: 230px;}
.height-240 {height: 240px;}
.height-250 {height: 250px;}
.height-260 {height: 260px;}
.height-270 {height: 270px;}
.height-280 {height: 280px;}
.height-290 {height: 290px;}
.height-300 {height: 300px;}
.height-350 {height: 350px;}
.height-400 {height: 400px;}
.height-450 {height: 450px;}
.height-500 {height: 500px;}

/* Width */
.im-table td.x1, .im-table th.x1, .im-flex .cell.x1 {width: 1%;}
.im-table td.x2, .im-table th.x2, .im-flex .cell.x2 {width: 2%;}
.im-table td.x3, .im-table th.x3, .im-flex .cell.x3 {width: 3%;}
.im-table td.x4, .im-table th.x4, .im-flex .cell.x4 {width: 4%;}
.im-table td.x5, .im-table th.x5, .im-flex .cell.x5 {width: 5%;}
.im-table td.x6, .im-table th.x6, .im-flex .cell.x6 {width: 6%;}
.im-table td.x7, .im-table th.x7, .im-flex .cell.x7 {width: 7%;}
.im-table td.x8, .im-table th.x8, .im-flex .cell.x8 {width: 8%;}
.im-table td.x9, .im-table th.x9, .im-flex .cell.x9 {width: 9%;}
.im-table td.x10, .im-table th.x10, .im-flex .cell.x10 {width: 10%;}
.im-table td.x11, .im-table th.x11, .im-flex .cell.x11 {width: 11%;}
.im-table td.x12, .im-table th.x12, .im-flex .cell.x12 {width: 12%;}
.im-table td.x13, .im-table th.x13, .im-flex .cell.x13 {width: 13%;}
.im-table td.x14, .im-table th.x14, .im-flex .cell.x14 {width: 14%;}
.im-table td.x15, .im-table th.x15, .im-flex .cell.x15 {width: 15%;}
.im-table td.x16, .im-table th.x16, .im-flex .cell.x16 {width: 16%;}
.im-table td.x17, .im-table th.x17, .im-flex .cell.x17 {width: 17%;}
.im-table td.x18, .im-table th.x18, .im-flex .cell.x18 {width: 18%;}
.im-table td.x19, .im-table th.x19, .im-flex .cell.x19 {width: 19%;}
.im-table td.x20, .im-table th.x20, .im-flex .cell.x20 {width: 20%;}
.im-table td.x21, .im-table th.x21, .im-flex .cell.x21 {width: 21%;}
.im-table td.x22, .im-table th.x22, .im-flex .cell.x22 {width: 22%;}
.im-table td.x23, .im-table th.x23, .im-flex .cell.x23 {width: 23%;}
.im-table td.x24, .im-table th.x24, .im-flex .cell.x24 {width: 24%;}
.im-table td.x25, .im-table th.x25, .im-flex .cell.x25 {width: 25%;}
.im-table td.x30, .im-table th.x30, .im-flex .cell.x30 {width: 30%;}
.im-table td.x33, .im-table th.x33, .im-flex .cell.x33 {width: 33.3%;}
.im-table td.x35, .im-table th.x35, .im-flex .cell.x35 {width: 35%;}
.im-table td.x40, .im-table th.x40, .im-flex .cell.x40 {width: 40%;}
.im-table td.x45, .im-table th.x45, .im-flex .cell.x45 {width: 45%;}
.im-table td.x50, .im-table th.x50, .im-flex .cell.x50 {width: 50%;}
.im-table td.x55, .im-table th.x55, .im-flex .cell.x555 {width: 55%;}
.im-table td.x60, .im-table th.x60, .im-flex .cell.x60 {width: 60%;}
.im-table td.x65, .im-table th.x65, .im-flex .cell.x65 {width: 65%;}
.im-table td.x70, .im-table th.x70, .im-flex .cell.x70 {width: 70%;}
.im-table td.x75, .im-table th.x75, .im-flex .cell.x75 {width: 75%;}
.im-table td.x80, .im-table th.x80, .im-flex .cell.x80 {width: 80%;}
.im-table td.x85, .im-table th.x85, .im-flex .cell.x85 {width: 85%;}
.im-table td.x90, .im-table th.x90, .im-flex .cell.x90 {width: 90%;}
.im-table td.x95, .im-table th.x95, .im-flex .cell.x95 {width: 95%;}
.im-table td.x100, .im-table th.x100, .im-flex .cell.x100 {width: 100%;}
.im-table td.fullwidth, .im-table th.fullwidth, .im-flex .cell.fullwidth {width: 100%;}

/* File: /src/features/css-general/margins.css */
.mt-0{margin-top:0;}
.mt-5{margin-top:5px;}
.mt-10{margin-top:10px;}
.mt-15{margin-top:15px;}
.mt-20{margin-top:20px;}
.mt-25{margin-top:25px;}
.mt-30{margin-top:30px;}

.mr-0{margin-right:0;}
.mr-5{margin-right:5px;}
.mr-10{margin-right:10px;}
.mr-15{margin-right:15px;}
.mr-20{margin-right:20px;}
.mr-25{margin-right:25px;}
.mr-30{margin-right:30px;}

.mb-0{margin-bottom:0;}
.mb-5{margin-bottom:5px;}
.mb-10{margin-bottom:10px;}
.mb-15{margin-bottom:15px;}
.mb-20{margin-bottom:20px;}
.mb-25{margin-bottom:25px;}
.mb-30{margin-bottom:30px;}

.ml-0{margin-left:0;}
.ml-5{margin-left:5px;}
.ml-10{margin-left:10px;}
.ml-15{margin-left:15px;}
.ml-20{margin-left:20px;}
.ml-25{margin-left:25px;}
.ml-30{margin-left:30px;}

.no-margin{margin:0;}

/* File: /src/features/css-general/animations.css */
@keyframes imjs-fade-in {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

/* File: /src/features/css-buttons/buttons.css */
.im-button {
    display: inline-block; vertical-align: middle; overflow: hidden; margin: 2px 2px;
    text-decoration: none; text-align: left; white-space: nowrap;
    transition: all 0.2s ease-out; cursor: pointer;
    border: 0;
}

/* Defaults */
.im-button {position: relative; height: 32px; line-height: 32px; font-size: 13px; border-radius: 2px; padding: 0 12px; text-align: center;}
.im-button i {position: relative; height: 100%; line-height: 32px; margin-right: 4px; font-size: 14px;}
.im-button i.icon {width: 16px; background-size: 14px 14px; font-size: 0; height: 100%; background-position: center center; background-repeat: no-repeat;}

/* Global */
.im-button.fullwidth {display: block; width: 100%; margin-left: 0; margin-right: 0; text-align: center;}
.im-button.semibold {font-weight: 600;}
.im-button.bold {font-weight: 700;}

.im-button.no-margins {margin: 0 0;}
.im-button.right {text-align: right;}
.im-button.center {text-align: center;}
.im-button.left {text-align: left;}


/* Font icon */
.im-button i {display: inline-block; position: relative; vertical-align: top; margin-right: 4px; font-weight: normal;}
.im-button i.h12 {font-size: 12px;}
.im-button i.h13 {font-size: 13px;}
.im-button i.h14 {font-size: 14px;}
.im-button i.h15 {font-size: 15px;}
.im-button i.h16 {font-size: 16px;}

/* SVG icon */
.im-button i > svg{position: absolute; left:50%; top:50%; transform:translate(-50%, -50%); width:16px; height:16px; fill: currentColor;}
.im-button i.h12 > svg{width:12px; height:12px;}
.im-button i.h13 > svg{width:13px; height:13px;}
.im-button i.h14 > svg{width:14px; height:14px;}
.im-button i.h15 > svg{width:15px; height:15px;}
.im-button i.h16 > svg{width:16px; height:16px;}

/* Sizes */
.im-button.xs {height: 24px; line-height: 24px; font-size: 12px; border-radius: 2px; padding: 0 10px;}
.im-button.xs i {line-height: 24px; margin-right: 2px; font-size: 12px;}
.im-button.xs i.icon {width: 12px; background-size: 12px 12px;}
.im-button.xs i.icon > svg{width:12px; height:12px;}

.im-button.small {height: 28px; line-height: 28px; font-size: 12px; border-radius: 2px; padding: 0 12px;}
.im-button.small i {line-height: 28px; margin-right: 4px; font-size: 14px;}
.im-button.small i.icon {width: 14px; background-size: 14px 14px;}
.im-button.small i.icon > svg{width:14px; height:14px;}

.im-button.medium {height: 36px; line-height: 36px; font-size: 13px; border-radius: 3px; padding: 0 12px;}
.im-button.medium i {line-height: 36px; margin-right: 4px; font-size: 16px;}
.im-button.medium i.icon {width: 16px; background-size: 16px 16px;}
.im-button.medium i.icon > svg{width:16px; height:16px;}

.im-button.large {height: 40px; line-height: 40px; font-size: 14px; border-radius: 3px; padding: 0 14px;}
.im-button.large i {line-height: 40px; margin-right: 4px; font-size: 16px;}
.im-button.large i.icon {width: 18px; background-size: 18px 18px;}
.im-button.large i.icon > svg{width:18px; height:18px;}

.im-button.xl {height: 44px; line-height: 44px; font-size: 15px; border-radius: 3px; padding: 0 14px;}
.im-button.xl i {line-height: 44px; margin-right: 4px; font-size: 16px;}
.im-button.xl i.icon {width: 18px; background-size: 18px 18px;}
.im-button.xl i.icon > svg{width:18px; height:18px;}

/* Iconic */
.im-button.iconic {width: 32px; padding: 0 0;}
.im-button.iconic i,
.im-button.iconic i.icon {display: block; width: 100%; margin: 0; padding: 0; text-align: center;}
.im-button.xs.iconic {width: 24px;}
.im-button.small.iconic {width: 28px;}

.im-button.medium.iconic {width: 36px;}
.im-button.medium.iconic i {font-size: 16px;}
.im-button.medium.iconic i::before {top: 0 !important;}

.im-button.large.iconic {width: 40px;}
.im-button.large.iconic i {font-size: 18px;}
.im-button.large.iconic i::before {top: 0 !important;}

.im-button.xl.iconic {width: 44px;}
.im-button.xl.iconic i {font-size: 18px;}
.im-button.xl.iconic i::before {top: 0 !important;}

/* File: /src/features/css-buttons/buttons-minimal.css */
/* Colors */
.im-button.minimal {color: #333;}

/* States */
.im-button.minimal.gray:hover {background-color: #e2e2e2; color:#111;}
.im-button.minimal.gray:active {background-color: #d8d8d8;}

/* File: /src/features/css-buttons/buttons-modern.css */
.im-button.modern {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.22); background-color: #ececec; color: #111;}
.im-button.modern:hover {background-color: #e2e2e2; box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.25);}
.im-button.modern:active {background-color: #d8d8d8;}

.im-button.modern.red {background-color: #ea2929; color: #fff;}
.im-button.modern.red:hover {background-color: #e22828;}
.im-button.modern.red:active {background-color: #dc2727;}

.im-button.modern.green {background-color: #2e9061; color: #fff;}
.im-button.modern.green:hover {background-color: #2a855a;}
.im-button.modern.green:active {background-color: #287e55;}

.im-button.modern.blue {background-color: #205ecf; color: #fff;}
.im-button.modern.blue:hover {background-color: #1e58c2;}
.im-button.modern.blue:active {background-color: #1d53b8;}

.im-button.modern.light-blue {background-color: #2468e2; color: #fff;}
.im-button.modern.light-blue:hover {background-color: #2363d7;}
.im-button.modern.light-blue:active {background-color: #205dca;}

.im-button.modern.white {background-color: #fff; color: #111;}
.im-button.modern.white:hover {background-color: #f3f3f3;}
.im-button.modern.white:active {background-color: #e8e8e8;}

.im-button.modern.teal {background-color: #01a3a3; color: #fff;}
.im-button.modern.teal:hover {background-color: #029797;}
.im-button.modern.teal:active {background-color: #018e8e;}

.im-button.modern.purple {background-color: #7a3ad0; color: #fff;}
.im-button.modern.purple:hover {background-color: #7236c3;}
.im-button.modern.purple:active {background-color: #6e34bc;}

.im-button.modern.orange {background-color: #fd8024; color: #fff;}
.im-button.modern.orange:hover {background-color: #f57d34;}
.im-button.modern.orange:active {background-color: #ec7731;}

/* Overlays */
.im-button.modern.red.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #f0babd;}
.im-button.modern.green.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #aed5c2;}
.im-button.modern.blue.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #abcafe;}
.im-button.modern.light-blue.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #abcafe;}
.im-button.modern.teal.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #a9e1e1;}
.im-button.modern.purple.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #d7b9fe;}
.im-button.modern.orange.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #fcc8a9;}

.im-button.modern.large.red.overlay:hover,
.im-button.modern.xl.red.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 3px #f0babd;}
.im-button.modern.large.green.overlay:hover,
.im-button.modern.xl.green.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 3px #aed5c2;}
.im-button.modern.large.blue.overlay:hover,
.im-button.modern.xl.blue.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 3px #abcafe;}
.im-button.modern.large.light-blue.overlay:hover,
.im-button.modern.xl.light-blue.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 3px #abcafe;}
.im-button.modern.large.teal.overlay:hover,
.im-button.modern.xl.teal.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 3px #a9e1e1;}
.im-button.modern.large.purple.overlay:hover,
.im-button.modern.xl.purple.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #d7b9fe;}
.im-button.modern.large.orange.overlay:hover,
.im-button.modern.xl.orange.overlay:hover {box-shadow: inset 0 -1px 0 0 rgba(0, 0, 0, 0.3), 0 0 0 2px #fcc8a9;}

/* File: /src/features/css-buttons/buttons-solid.css */
/* Colors */
.im-button.solid {color: #333;}

/* States */
.im-button.solid.gray {background-color: #e9e9e9;}
.im-button.solid.gray:hover {background-color: #e2e2e2; color: #111;}
.im-button.solid.gray:active {background-color: #d8d8d8;}

.im-button.solid.blue {background-color: #1850f8; color: #fff;}
.im-button.solid.blue:hover {background-color: #144bf3;}
.im-button.solid.blue:active {background-color: #1848d9;}

.im-button.solid.red {background-color: #ea2929; color: #fff;}
.im-button.solid.red:hover {background-color: #e22828;}
.im-button.solid.red:active {background-color: #dc2727;}

.im-button.solid.green {background-color: #2e9061; color: #fff;}
.im-button.solid.green:hover {background-color: #2a855a;}
.im-button.solid.green:active {background-color: #287e55;}

.im-button.solid.teal {background-color: #01a3a3; color: #fff;}
.im-button.solid.teal:hover {background-color: #029797;}
.im-button.solid.teal:active {background-color: #018e8e;}

.im-button.solid.purple {background-color: #7a3ad0; color: #fff;}
.im-button.solid.purple:hover {background-color: #7236c3;}
.im-button.solid.purple:active {background-color: #6e34bc;}

.im-button.solid.orange {background-color: #f9722f; color: #fff;}
.im-button.solid.orange:hover {background-color: #fa651b;}
.im-button.solid.orange:active {background-color: #f25a0f;}

/* File: /src/features/css-form-controls/form.css */
.im-form > .row {display: flex; flex-flow: row nowrap; align-items: center; margin: 0 0 7px 0;}
.im-form > .row:last-child {margin-bottom: 0;}
.im-form > .row > .label {display: block; flex: 0 0 auto; width: 170px; font-size: 14px; line-height: 18px; color: #222; cursor: default;}
.im-form > .row > .value {display: block; flex: 1 1 auto;}

.im-form .cells {display: flex; flex-flow: row nowrap; align-items: center; flex: 1 1 auto;}
.im-form .cells > .cell {display: flex; flex-flow: row nowrap; align-items: center; flex: 0 0 auto; margin-left: 15px;}
.im-form .cells > .cell:first-child {margin-left: 0;}
.im-form .cells > .cell > .label {flex: 0 0 auto; margin-right: 15px; font-size: 14px; color: #222; cursor: default;}
.im-form .cells > .cell > .value {flex: 1 1 auto;}
.im-form .cells > .cell.auto {flex: 1 1 auto;}

.im-form > .divider {display: block; margin: 20px 0; height: 1px; background: #eee;}

.im-form.label-w70 > .row > .label {width: 80px;}
.im-form.label-w80 > .row > .label {width: 80px;}
.im-form.label-w90 > .row > .label {width: 90px;}
.im-form.label-w100 > .row > .label {width: 100px;}
.im-form.label-w110 > .row > .label {width: 110px;}
.im-form.label-w120 > .row > .label {width: 120px;}
.im-form.label-w130 > .row > .label {width: 130px;}
.im-form.label-w140 > .row > .label {width: 140px;}
.im-form.label-w150 > .row > .label {width: 150px;}

.im-form.label-bold > .row > .label,
.im-form > .row > .label.bold {font-weight: bold;}
.im-form.label-semibold > .row > .label,
.im-form > .row > .label.semibold {font-weight: 600;}

.im-form > .actions { margin-top: 20px; }
.im-form > .actions.align-center {text-align: center;}
.im-form > .actions.align-right {text-align: right;}
.im-form > .actions.with-separator {border-top: 1px solid #ddd; padding-top: 20px;}

/* File: /src/features/css-form-controls/checkbox.css */
.im-checkbox {display: inline-block; vertical-align: middle; position: relative; user-select: none; min-width: 22px; min-height: 22px; cursor: pointer;}
.im-checkbox.fullwidth {display: block;}
.im-checkbox > input {display: block; position: absolute; z-index: 2; left: 0; top: 0; opacity: 0; width: 100%; height: 100%; cursor: pointer;}
.im-checkbox > .checkmark {position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; border: 1px solid #ccc; border-radius: 3px; background: #fff; transition: all 0.25s ease-out;}
.im-checkbox > .checkmark::after {display: block; opacity: 0; content: ""; position: absolute; width: 100%; height: 100%; background: url('images/icon-tick-blue.svg') 4px 4px no-repeat; background-size: 11px 11px; transition: all 0.15s ease-out;}

.im-checkbox > .text {display: block; padding:2px 0 2px 30px; line-height: 18px;}
.im-checkbox > .text > .caption {display:block; margin-bottom: 2px; font-size: 13px; line-height: 16px; font-weight: 600; color: #333;}
.im-checkbox > .text > .hint {display:block; font-size: 13px; line-height: 16px; color: #777;}

/* Hover */
.im-checkbox:hover input:not([disabled]) ~ .checkmark{border-color: #a8a8a8;}
.im-checkbox input:focus:not([disabled]) ~ .checkmark { border-color: #2460cd;}

/* Checked */
.im-checkbox input:checked ~ .checkmark {border-color: #2460cd;}
.im-checkbox:hover input:not([disabled]):checked ~ .checkmark {border-color: #2460cd;}
.im-checkbox input:checked ~ .checkmark::after {display: block; opacity: 1;}

/* Error */
.im-checkbox > input.error ~ .checkmark {border-color: #ec4148;}
.im-checkbox > input.error ~ .checkmark:after {background-image: url('images/icon-tick-red.svg');}
.im-checkbox > input.error ~ .text {color: #e32229;}
.im-checkbox > input.error ~ .text > a {color: #e32229;}

.im-checkbox:hover > input.error ~ .checkmark,
.im-checkbox:hover > input.error:checked ~ .checkmark,
.im-checkbox > input.error:focus ~ .checkmark {border-color: #ec4148;}

/* Disabled */
.im-checkbox > input:disabled{cursor: default;}
.im-checkbox > input:disabled ~ .checkmark {border-color: #bbb; background-color: #f5f5f5; cursor: default;}
.im-checkbox > input:disabled ~ .checkmark::after {background-image: url('images/icon-tick-gray.svg');}

/* File: /src/features/css-form-controls/radio.css */
.im-radio {display: inline-block; vertical-align: middle; position: relative; user-select: none; min-width: 22px; min-height: 22px; cursor: pointer;}
.im-radio.fullwidth {display: block;}
.im-radio > input {display: block; position: absolute; z-index: 2; left: 0; top: 0; opacity: 0; width: 100%; height: 100%; cursor: pointer;}
.im-radio > .checkmark {position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; border: 1px solid #ccc; border-radius: 50%; background: #fff; transition: all 0.25s ease-out;}
.im-radio > .checkmark::after {display: block; opacity: 0; content: ""; position: absolute; left: 6px; top: 6px; width: 6px; height: 6px; border-radius: 50%; transition: all 0.15s ease-out;}

.im-radio > .text {display: block; padding:2px 0 2px 30px; line-height: 18px;}
.im-radio > .text > .caption {display:block; margin-bottom: 2px; font-size: 13px; line-height: 16px; font-weight: 600; color: #333;}
.im-radio > .text > .hint {display:block; font-size: 13px; line-height: 16px; color: #777;}

/* Hover */
.im-radio:hover input:not([disabled]) ~ .checkmark {border-color: #a8a8a8;}
.im-radio input:not([disabled]):focus ~ .checkmark { border-color: #2460cd;}

/* Checked */
.im-radio input:checked ~ .checkmark {border-color: #2460cd;}
.im-radio:hover input:not([disabled]):checked ~ .checkmark {border-color: #2460cd;}
.im-radio input:checked ~ .checkmark::after {display: block; opacity: 1; background: #2460cd;}

/* Error */
.im-radio > input.error ~ .checkmark {border-color: #ec4148;}
.im-radio > input.error ~ .checkmark:after {background-color: #e32229;}
.im-radio > input.error ~ .text {color: #e32229;}
.im-radio > input.error ~ .text > a {color: #e32229;}

.im-radio:hover > input.error ~ .checkmark,
.im-radio:hover > input.error:checked ~ .checkmark,
.im-radio > input.error:focus ~ .checkmark {border-color: #ec4148;}

/* Disabled */
.im-radio > input:disabled{cursor: default;}
.im-radio > input:disabled ~ .checkmark {border-color: #bbb; background-color: #f5f5f5; cursor: default;}
.im-radio > input:disabled ~ .checkmark::after {background-color: #888;}

/* File: /src/features/css-form-controls/input.css */
/* Reset */
.im-input, .im-textarea {outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;}

/* Input */
.im-input { display: inline-block; height: 36px; padding: 0 9px; line-height: 36px;}
.im-textarea { display: block; height: 90px; padding: 5px 9px; line-height: 20px;}

.im-select { display: inline-block; height: 36px; line-height: 26px; padding: 5px 4px;}
.im-select option, .im-select optgroup { padding: 0 5px; font-size: 14px; line-height: 20px; color: #222;}
.im-select optgroup { font-weight: 600;}

/* Defaults */
.im-input, .im-textarea, .im-select {
    width: 250px;
    color: #222; font-size: 14px;
    border: 1px solid #ccc; border-radius: 3px;
    background: #fff; transition: border-color 0.25s ease-out, background-color 0.25s ease-out;
}

.im-input.fullwidth, .im-textarea.fullwidth, .im-select.fullwidth {display: block; width: 100%;}
.im-input.text-left, .im-textarea.text-left, .im-select.text-left {text-align: left;}
.im-input.text-center, .im-textarea.text-center, .im-select.text-center {text-align: center;}
.im-input.text-right, .im-textarea.text-right, .im-select.text-right {text-align: right;}

/* Sizes */
.im-input.small {height: 30px; line-height: 30px; padding:0 5px; font-size:13px; border-radius: 3px;}
.im-input.medium {height: 40px; line-height: 40px;}
.im-input.large {height: 44px; line-height: 44px; padding: 0 10px; font-size: 15px;}

.im-select.small {height: 30px; line-height: 22px; padding: 4px 4px; font-size:13px; border-radius: 2px;}
.im-select.medium {height: 40px; line-height: 30px; padding: 5px 4px;}
.im-select.large {height: 44px; line-height: 34px; padding: 5px 6px; font-size: 15px;}

/* States */
.im-input::placeholder, .im-textarea::placeholder {color: #bbb;}
.im-input::-ms-input-placeholder, .im-textarea::-ms-input-placeholder {color: #bbb;}

.im-input:hover, .im-textarea:hover, .im-select:hover {border-color: #b0b0b0;}
.im-input:focus, .im-textarea:focus, .im-select:focus {border-color: #2460cd;}
.im-input:disabled, .im-textarea:disabled, .im-select:disabled {border-color: #ccc; background: #eee;}

.im-input.error, .im-textarea.error, .im-select.error {color: #e32229; border-color: #ec4148;}

/* Overlay */
.im-input.overlay:focus, .im-textarea.overlay:focus, .im-select.overlay:focus {box-shadow: 0 0 0 2px rgba(32, 94, 207, 0.2);}
.im-input.error.overlay:focus, .im-textarea.error.overlay:focus, .im-select.error.overlay:focus {box-shadow: 0 0 0 2px rgba(222, 57, 66, 0.2);}


/* Field notices */
.imjs-field-notice{display:block; padding:3px 2px; font-size:13px; line-height:15px; color:#e32229;}

/* File: /src/features/css-form-controls/input-with-unit.css */
/* input with unit */
.im-input-with-unit {position: relative; width:100%;}
.im-input-with-unit > .im-input {width: 100%;}
.im-input-with-unit > .im-input {padding-right: 32px;}
.im-input-with-unit > .unit {position: absolute; right: 8px; top: 50%; transform: translateY(-50%); font-size: 14px; line-height: 14px; user-select: none; pointer-events: none;}

.im-input-with-unit > .unit.semibold {font-weight: 600;}
.im-input-with-unit > .unit.bold {font-weight: bold;}

.im-input-with-unit.unit-w40 > .im-input {padding-right: 40px;}
.im-input-with-unit.unit-w50 > .im-input {padding-right: 50px;}
.im-input-with-unit.unit-w60 > .im-input {padding-right: 60px;}
.im-input-with-unit.unit-w70 > .im-input {padding-right: 70px;}
.im-input-with-unit.unit-w80 > .im-input {padding-right: 80px;}
.im-input-with-unit.unit-w90 > .im-input {padding-right: 90px;}
.im-input-with-unit.unit-w100 > .im-input {padding-right: 100px;}

/* File: /src/features/css-form-controls/radio-group.css */
.im-radio-group {padding: 7px 0}
.im-radio-group .im-radio {display: block; margin-bottom: 7px;}
.im-radio-group .im-radio:last-child {margin-bottom: 0;}

.im-radio-group.horizontal {display: flex; flex-flow: row wrap; align-items: center; padding: 0;}
.im-radio-group.horizontal.right{justify-content: flex-end;}

.im-radio-group.horizontal .im-radio {flex: 0 0 auto; margin: 5px 0 5px 20px; padding: 2px 0;}
.im-radio-group.horizontal .im-radio:first-child {margin-left: 0;}

/* File: /src/features/css-form-controls/checkbox-group.css */
.im-checkbox-group {padding: 7px 0}
.im-checkbox-group .im-checkbox {display: block; margin-bottom: 7px;}
.im-checkbox-group .im-checkbox:last-child {margin-bottom: 0;}

.im-checkbox-group.horizontal {display: flex; flex-flow: row wrap; align-items: center; padding: 0;}
.im-checkbox-group.horizontal.right{justify-content: flex-end;}

.im-checkbox-group.horizontal .im-checkbox {flex: 0 0 auto; margin: 5px 0 5px 20px; padding: 2px 0;}
.im-checkbox-group.horizontal .im-checkbox:first-child {margin-left: 0;}

/* File: /src/features/css-form-controls/toggle.css */
.im-toggle {position: relative; display: inline-block; width: 52px; height: 28px;}
.im-toggle > input {opacity: 0; width: 0; height: 0;}
.im-toggle > .slider {flex: 0 0 auto; position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; box-shadow: inset 0 0 0 1px #ccc; border-radius:40px; transition: 0.25s;}
.im-toggle > .slider:before {position: absolute; content: ""; height: 24px; width: 24px; left: 2px; top: 2px; background-color: white; border-radius: 50%; transition: 0.25s;}
.im-toggle > input:checked + .slider {background-color: #306bd6; box-shadow: inset 0 0 0 1px #2460cd;}
.im-toggle > input:checked + .slider:before {left: 26px;}

/* File: /src/features/css-form-controls/item-group.css */
.im-item-group {display: flex; flex-flow: row nowrap; align-items: center;}
.im-item-group > .item {flex: 0 0 auto;}
.im-item-group.with-margin > .item {margin-left: 15px;}
.im-item-group > .item:first-child {margin-left: 0;}

/* File: /src/features/css-tables/tables.css */
/* Table */
.im-table { border-spacing: 0; border-collapse: collapse;}
.im-table.fullwidth {width: 100%;}
.im-table.fixed {table-layout: fixed;}
.im-table tr.head > th {height: 36px; padding: 0 7px; font-size: 13px; line-height: 16px; color: #111; font-weight: 600; border-bottom: 2px solid #ccc; cursor: default;}
.im-table tr.row > td {height: 36px; padding: 0 7px; color: #111; font-size: 13px; line-height: 16px; border-bottom: 1px solid #ddd; cursor: default;}

.im-table tr.no-padding > th,
.im-table tr.no-padding > td{padding: 0;}

.im-table tr.row:not(.no-hover):hover > td {background: #f4f4f4;}

/* Rows */
.im-table tr > td {empty-cells: show;}
.im-table tr.head.with-borders > th {border-left: 1px solid #e8e8e8; border-right: 1px solid #e8e8e8; border-top: 1px solid #e8e8e8; background: #f2f2f2;}
.im-table tr.row.with-borders > td {border-left: 1px solid #e8e8e8; border-right: 1px solid #e8e8e8;}

/* Cells */
.im-table th.left, .im-table td.left {text-align: left;}
.im-table th.center, .im-table td.center {text-align: center;}
.im-table th.right, .im-table td.right {text-align: right;}
.im-table th.top, .im-table td.top {vertical-align: top;}
.im-table th.bottom, .im-table td.bottom {vertical-align: bottom;}
.im-table th.bold, .im-table td.bold {font-weight: bold;}
.im-table th.semibold, .im-table td.semibold {font-weight: 600;}

/* File: /src/features/css-tables/flex.css */
/* Flex table */
.im-flex.fullwidth {width: 100%;}
.im-flex > .head {display: flex; flex-flow: row nowrap; width: 100%; min-height: 38px; border-bottom: 2px solid #ccc; align-items: center;}
.im-flex > .head > .cell {flex: 0 0 auto; padding: 0 7px; font-size: 13px; line-height: 16px; color: #111; font-weight: 600; cursor: default;}

.im-flex > .rows > .row,
.im-flex > .row {display: flex; flex-flow: row nowrap; width: 100%; min-height: 38px; align-items: center; border-bottom: 1px solid #ddd;}

.im-flex > .rows > .row > .cell,
.im-flex > .row > .cell {flex: 0 0 auto; padding: 0 7px; font-size: 13px; line-height: 16px; color: #111; cursor: default;}

.im-flex > .head > .cell.auto,
.im-flex > .rows > .row > .cell.auto,
.im-flex > .row > .cell.auto { flex: 1 1 auto;}

.im-flex > .head.no-padding > .cell,
.im-flex > .rows > .row.no-padding > .cell,
.im-flex > .row.no-padding > .cell {padding: 0;}

.im-flex > .rows > .row:not(.no-hover):not(.sort-target):hover,
.im-flex > .row:not(.no-hover):not(.sort-target):hover {background: #f4f4f4;}

/* Cells */
.im-flex .cell.no-padding {padding: 0;}
.im-flex .cell.left {text-align: left;}
.im-flex .cell.center {text-align: center;}
.im-flex .cell.right {text-align: right;}
.im-flex .cell.bold {font-weight: bold;}
.im-flex .cell.semibold {font-weight: 600;}

/* File: /src/features/css-loading/placeholders.css */
.im-block-placeholder {width: 55px; height: 20px; background-color: #f5f5f5; border-radius: 2px; animation: block-placeholder-effect 1.8s linear infinite; opacity: 1;}

@keyframes block-placeholder-effect {
    100% {opacity: 1.0;}
    50% {opacity: 0.45;}
    0% {opacity: 1.0;}
}

.im-dots-placeholder {animation: dots-placeholder-effect 2s linear infinite; font-size: 14px;}

@keyframes dots-placeholder-effect {
    100% {color: #111;}
    50% {color: #ccc;}
    0% {color: #111;}
}

/* File: /src/features/ui-notifier/ui-notifier.css */
.imjs-notifier {
    display: block; position: fixed; left: 50%; top: 12px; max-width: 700px;
    transform: translateX(-50%); z-index: 9999; animation: imjs-fade-in 0.2s;
    animation-fill-mode: both;
}

.imjs-notifier.hidden {display: none;}

.imjs-notifier > .imjs-inner {
    display: block; position: relative; padding: 12px 18px; border-radius: 3px;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1), 0 3px 12px -2px rgba(0, 0, 0, 0.35);
}

.imjs-notifier > .imjs-inner > .imjs-content {display: block; padding-right: 34px; font-size: 14px; line-height: 18px; text-align: center;}
.imjs-notifier > .imjs-inner > .imjs-close {
    display: block; position: absolute; right: 12px; top: 12px; width: 18px; height: 18px;
    background: url('images/ui-notifier-close-white.svg') left top no-repeat; background-size: cover;
    transition: all 0.15s ease-out; cursor: pointer;
}

/* Colors */
.imjs-notifier.imjs-color-blue > .imjs-inner > .imjs-content,
.imjs-notifier.imjs-color-red > .imjs-inner > .imjs-content,
.imjs-notifier.imjs-color-green > .imjs-inner > .imjs-content {color: #fff;}

.imjs-notifier.imjs-color-blue > .imjs-inner {background: #267ac0;}
.imjs-notifier.imjs-color-red > .imjs-inner {background: #ca5651;}
.imjs-notifier.imjs-color-green > .imjs-inner {background: #288156;}

/* Gray */
.imjs-notifier.imjs-color-gray > .imjs-inner {background: #fafafa; box-shadow: 0 3px 12px -2px rgba(0, 0, 0, 0.35);}
.imjs-notifier.imjs-color-gray > .imjs-inner > .imjs-content {color: #111;}
.imjs-notifier.imjs-color-gray > .imjs-inner > .imjs-close {background-image: url('images/ui-notifier-close-black.svg'); opacity:0.4;}
.imjs-notifier.imjs-color-gray > .imjs-inner > .imjs-close:hover{opacity:0.52;}

@media all and (max-width: 750px) {
    .imjs-notifier {padding-left: 12px; padding-right: 12px; left: 0; width: 100%; max-width: none; transform: none; text-align: center; font-size: 0;}
    .imjs-notifier > .imjs-inner {display: inline-block;}
}

/* File: /src/features/ui-popup/ui-popup.css */
/* Overlay */
.imjs-overlay {display: block; position: fixed; z-index: 100; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.45);}

/* Popup */
.imjs-popup {display: block; position: absolute; z-index: 101; left: 0; top: 0; width: auto; height: auto; background: #fff; box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.25); border-radius: 2px;}
.imjs-popup > .imjs-inner {position: relative;}

.imjs-popup.imjs-fixed {position: fixed;}

/* Close */
.imjs-popup .imjs-close {
    display: block; position: absolute;
    right: 15px; top: 17px; width: 24px; height: 24px;
    background: url('images/ui-popup-close-black.svg') center center no-repeat;
    background-size: cover;
    opacity:0.28; cursor: pointer;
    z-index:999;
    transition: all 0.15s ease-out;
}
.imjs-popup .imjs-close:hover {opacity:0.4;}

/* Content */
.imjs-popup .imjs-content {min-height: 58px; padding: 20px 20px; line-height: 18px;}
.imjs-popup .imjs-content.imjs-padded {padding-right: 50px;}
.imjs-popup .imjs-content .imjs-title,
.imjs-popup .imjs-content .im-title{display: block; position: relative; top:-5px; margin: 0 0 15px 0; font-size: 22px; line-height: 26px; color: #222;}

/* File: /src/features/ui-dialog/ui-dialog.css */
/* Overlay */
.imjs-overlay {display: block; position: fixed; z-index: 100; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.45);}

/* Dialog */
.imjs-dialog {display: block; position: absolute; max-width: 80%; z-index: 101; left: 0; top: 0; width: auto; height: auto; background: #fff; box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.25); border-radius: 2px;}
.imjs-dialog .imjs-inner {position: relative; padding: 20px 25px;}

/* Head */
.imjs-dialog .imjs-head {position: relative; margin-bottom: 22px; padding:0 30px;}
.imjs-dialog .imjs-head .imjs-title {font-size: 20px; line-height: 20px; color: #222; text-align: center; cursor: default;}
.imjs-dialog .imjs-head .imjs-close {
    display: block; position: absolute;
    right: -5px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px;
    background: url('images/ui-dialog-close-black.svg') left top no-repeat;
    background-size: cover;
    opacity: 0.28; cursor: pointer;
    z-index: 999;
    transition: all 0.15s ease-out;
}
.imjs-dialog .imjs-head .imjs-close:hover {opacity: 0.4;}

/* Content */
.imjs-dialog .imjs-content {overflow: hidden; margin-bottom: 22px; line-height: 20px;}
.imjs-dialog .imjs-content .imjs-title {display: block; position: relative; top: -5px; margin: 0 0 15px 0; font-size: 22px; line-height: 26px; color: #222;}
.imjs-dialog .imjs-content .imjs-title:first-child {margin-top: 0;}

/* Buttons */
.imjs-dialog .imjs-buttons {display: flex; flex-flow: row nowrap; align-items: center; justify-content: center;}
.imjs-dialog .imjs-buttons .imjs-button {flex: 0 0 auto; margin: 0 7px; padding: 2px 7px; font-size: 13px; font-weight: bold; line-height: 15px; color: #333; text-align: center; text-decoration: none; text-transform: uppercase; cursor: pointer; border: 0; background-color: transparent; font-family: inherit;}
.imjs-dialog .imjs-buttons .imjs-button:first-child {margin-left: 0;}
.imjs-dialog .imjs-buttons .imjs-button:last-child {margin-right: 0;}
.imjs-dialog .imjs-buttons .imjs-button:hover {color: #111;}
.imjs-dialog .imjs-buttons .imjs-button.red {color: #d73c3e;}
.imjs-dialog .imjs-buttons .imjs-button.red:hover {color: #d81e20;}
.imjs-dialog .imjs-buttons .imjs-button.green {color: #23764e;}
.imjs-dialog .imjs-buttons .imjs-button.green:hover {color: #066b3a;}
.imjs-dialog .imjs-buttons .imjs-button.blue {color: #2552c1;}
.imjs-dialog .imjs-buttons .imjs-button.blue:hover {color: #1546bd;}

/* No title */
.imjs-dialog.imjs-no-title .imjs-head {margin-bottom: 0;}
.imjs-dialog.imjs-no-title .imjs-head .imjs-close {transform: none; top: -5px;}
.imjs-dialog.imjs-no-title .imjs-content {padding-right: 30px;}

/* Customization */
.imjs-dialog.imjs-fixed {position: fixed;}
.imjs-dialog.align-center .imjs-content{text-align: center;}