:root {
    --vz-purple: #0f2b43;
    --vz-primary: #0f2b43;
    --vz-link-color: #0f2b43;
    --vz-link-hover-color: #0f2b43;
    --vz-primary-rgb: 19, 84, 225;
    --vz-vertical-menu-item-hover-color: #0f2b43;
    --vz-vertical-menu-item-active-color: #0f2b43;
    --vz-vertical-menu-sub-item-hover-color: #0f2b43;
    --vz-vertical-menu-sub-item-active-color: #0f2b43;
    --vz-topnav-item-active-color: #0f2b43;
    --vz-link-color-rgb: 19, 84, 225;
    --vz-success-rgb: 106, 168, 79;
    --vz-success: #6aa84f;
    --vz-success-text-emphasis: #54863f;
}
.pagination {
    --vz-pagination-active-bg: #0f2b43;
    --vz-pagination-active-border-color: #0f2b43;
}
.form-check-input:checked {
    background-color: #0f2b43;
    border-color: #0f2b43;
}
:root[data-topbar=dark] {
    --vz-header-bg: #0f2b43;
    --vz-topbar-user-bg: #0c2235;
}
.btn-primary {
    --vz-btn-border-color: #0f2b43;
    --vz-btn-hover-bg: #0c2235;
    --vz-btn-hover-border-color: #0f2b43;
    --vz-btn-focus-shadow-rgb: #0f2b43;
    --vz-btn-active-bg: #0f2b43;
    --vz-btn-active-border-color: #0f2b43;
}
a:hover {
    color: #0c2235;
}
.sub-title-primary {
    background-color: #0f2b43;
    color: #ffffff;
    padding: 10px;
}
.sub-title-pink {
    background-color: #9b2929;
    color: #ffffff;
    padding: 10px;
}
.noUi-tooltip {
    padding: 0.1rem;
    border-color: #cecece;
    font-size: 11px;
}
.noUi-horizontal .noUi-origin > .noUi-tooltip {
    bottom: -35px;
}
[data-slider-color=primary] .noUi-handle, [data-slider-color=primary] .noUi-connect {
    background: #0f2b43;
}
.choices__list--multiple .choices__item {
    background-color: #0f2b43;
    border: 1px solid #0f2b43;
}
.noUi-horizontal .noUi-origin > .noUi-tooltip {
    bottom: -35px;
    right: -2px !important;
}
.table {
    vertical-align: middle;
}
.table-light {
    --vz-table-bg: #0f2b43;
}
.table > :not(caption) > * > * {
    padding: 0.35rem 0.6rem;
}
.table thead th {
    font-size: 0.8rem;
    padding: 0.75rem 0.6rem;
}
.flatpickr-months {
    background-color: var(--vz-body-bg, var(--bs-body-bg));
}
.flatpickr-months .flatpickr-month,
.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
    color: var(--vz-body-color, var(--bs-body-color));
    fill: var(--vz-body-color, var(--bs-body-color));
}
.cursor-pointer {
    cursor: pointer;
}
.input-group > .input-group-text {
    user-select: none;
}
.slider[data-name="rent_amount"] .noUi-handle-lower + .noUi-tooltip, .slider[data-name="services_deposit_amount"] .noUi-handle-lower + .noUi-tooltip {
    right: -2px !important;
    left: auto !important;
}
.slider[data-name="rent_amount"] .noUi-handle-upper + .noUi-tooltip, .slider[data-name="services_deposit_amount"] .noUi-handle-upper + .noUi-tooltip {
    right: auto !important;
    left: 210px;
}
.bg-mail-color {
    background-color: #f0f0f0 !important;
}
.w-20 {
    width: 20% !important;
}
.w-60 {
    width: 60% !important;
}
.product-percent-setting > label .percent {
    font-weight: 500;
}
.dropzone .dz-preview .dz-image {
    width: 197px !important;
    height: 197px !important;
}
.datatatable-detail {
    width: 100% !important;
}
[data-layout=horizontal] .navbar-menu .navbar-nav .nav-link.active {
    font-weight: 600;
}
.btn-danger {
    --vz-btn-color: #fff;
    --vz-btn-bg: #9b2929;
    --vz-btn-border-color: #9b2929;
    --vz-btn-hover-color: #fff;
    --vz-btn-hover-bg: #8b2424;
    --vz-btn-hover-border-color: #8b2424;
    --vz-btn-focus-shadow-rgb: 155, 41, 41;
    --vz-btn-active-color: #fff;
    --vz-btn-active-bg: #8b2424;
    --vz-btn-active-border-color: #8b2424;
    --vz-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --vz-btn-disabled-color: #fff;
    --vz-btn-disabled-bg: #9b2929;
    --vz-btn-disabled-border-color: #9b2929;
}
.btn-outline-danger {
    --vz-btn-color: #9b2929;
    --vz-btn-bg: transparent;
    --vz-btn-border-color: #9b2929;
    --vz-btn-hover-bg: #9b2929;
    --vz-btn-hover-border-color: #9b2929;
    --vz-btn-focus-shadow-rgb: #9b2929;
    --vz-btn-active-bg: #9b2929;
    --vz-btn-active-border-color: #9b2929;
}
.text-danger {
    padding-top: 0.5rem;
    color: #9b2929 !important;
}
.navbar-nav {
    justify-content: center;
}
.form-control.is-invalid, .was-validated .form-control:invalid {
    --vz-form-invalid-color: #9b2929;
    --vz-form-invalid-border-color: #9b2929;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%239b2929' viewBox='-2 -2 7 7'%3e%3cpath stroke='%239b2929' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E"); padding-right: calc(1.5em + 0.9rem);
}
.nav-primary.nav-tabs-custom .nav-link.active::after {
    background-color: #0f2b43;
}
.nav-primary.nav-tabs-custom .nav-link.active, .text-primary {
    color: #0f2b43 !important;
}
.nav-link {
    color: #6d7080;
}
.card-body .form-section-title {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    margin: 1rem -1.5rem 1rem;
    padding: 0 1.5rem;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    font-weight: 600;
    color: #1a2b41;
}
.card-body .form-section-title::after,
.form-section-button::after {
    content: "";
    flex: 1;
    height: 0;
    border-bottom: 1px solid #1a2b41;
}
.form-section-buttons {
    display: flex;
    margin: 1rem -1.5rem 1.5rem;
    color: #1a2b41;
}
.card-body .form-section-buttons::after {
    content: "";
    flex: 1;
    height: 1px;
    background-color: #1a2b41;
    opacity: 0.1;
}
.offer-bitmask-fieldset {
    position: relative;
    margin-bottom: 1.25rem;
    margin-top: 0.35rem;
    padding: 1rem 1rem 1rem 1.05rem;
    border: 1px solid rgba(26, 43, 65, 0.11);
    border-radius: 0.65rem;
    background: linear-gradient(165deg, #ffffff 0%, #f6f8fb 100%);
    box-shadow: 0 1px 2px rgba(15, 43, 67, 0.05);
}
.offer-bitmask-fieldset .offer-bitmask-legend {
    float: none;
    width: auto;
    max-width: calc(100% - 0.5rem);
    margin: 0 0 0.75rem 0;
    padding: 0.2rem 0.5rem 0.2rem 0;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #1a2b41;
    line-height: 1.3;
}
.offer-bitmask-option {
    min-height: 2.65rem;
    padding: 0.55rem 0.85rem;
    gap: 0.65rem;
    border: 1px solid rgba(26, 43, 65, 0.12);
    border-radius: 0.5rem;
    background: #fff;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    transition: border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
    cursor: pointer;
}
.offer-bitmask-option:hover {
    border-color: rgba(26, 43, 65, 0.22);
    background: rgba(15, 43, 67, 0.035);
}
.offer-bitmask-option:focus-within {
    border-color: rgba(26, 43, 65, 0.35);
    box-shadow: 0 0 0 3px rgba(26, 43, 65, 0.12);
}
.offer-bitmask-option:has(.form-check-input:checked) {
    border-color: #0f2b43;
    background: rgba(15, 43, 67, 0.08);
    box-shadow: 0 0 0 1px rgba(15, 43, 67, 0.14), 0 1px 0 rgba(255, 255, 255, 0.6) inset;
}
.offer-bitmask-option .form-check-input {
    margin-top: 0;
    width: 1.1rem;
    height: 1.1rem;
    border-radius: 0.28rem;
    cursor: pointer;
    accent-color: #0f2b43;
    border-color: rgba(26, 43, 65, 0.35);
}
.offer-bitmask-option__text {
    font-size: 0.9rem;
    font-weight: 500;
    color: #2a3344;
    line-height: 1.35;
    padding-top: 0.02rem;
    cursor: inherit;
}
.offer-bitmask-option .form-check-input:disabled {
    cursor: not-allowed;
    opacity: 0.65;
}
.offer-bitmask-option:has(.form-check-input:disabled) {
    opacity: 0.9;
    cursor: default;
    pointer-events: none;
    transition: none;
}
.offer-bitmask-option:has(.form-check-input:disabled):hover {
    border-color: rgba(26, 43, 65, 0.12);
    background: #fff;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}
.offer-bitmask-option:has(.form-check-input:disabled):focus-within {
    border-color: rgba(26, 43, 65, 0.12);
    background: #fff;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}
.offer-bitmask-option:has(.form-check-input:disabled):has(.form-check-input:checked) {
    border-color: rgba(26, 43, 65, 0.12);
    background: #fff;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}
.offer-yesno-grid {
    --bs-gutter-y: 0.85rem;
}
.offer-yesno-grid .offer-yesno-block {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-bottom: 0;
    padding: 0.75rem 0.9rem 0.85rem;
    border-radius: 0.6rem;
    border: 1px solid rgba(26, 43, 65, 0.09);
    background: #fff;
    box-shadow: 0 1px 3px rgba(15, 43, 67, 0.06);
    min-height: 100%;
}
.offer-yesno-block .offer-yesno-toggle .offer-radio-field {
    margin-bottom: 0;
}
.offer-yesno-block .offer-yesno-toggle .mb-3 {
    margin-bottom: 0;
}
.offer-yesno-block .offer-yesno-toggle .form-label {
    margin-bottom: 0.4rem;
    font-weight: 600;
    color: #1a2b41;
}
.offer-yesno-block .offer-yesno-detail {
    margin-top: 0.15rem;
    padding-top: 0.65rem;
    border-top: 1px solid rgba(26, 43, 65, 0.08);
}
.offer-yesno-block .offer-yesno-detail.d-none {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}
.offer-yesno-block .offer-yesno-detail .mb-3 {
    margin-bottom: 0;
}
.offer-yesno-block .offer-yesno-detail .form-label {
    gap: 0.5rem 0.65rem;
}
.offer-yesno-block .offer-yesno-detail:not(.d-none) {
    animation: offer-yesno-reveal 0.2s ease-out;
}
@keyframes offer-yesno-reveal {
    from {
        opacity: 0;
        transform: translateY(-3px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.offer-tech-binary-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: 1fr;
}
@media (min-width: 420px) {
    .offer-tech-binary-grid:has(> .offer-tech-binary-grid__cell:nth-child(4)) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (min-width: 992px) {
    .offer-tech-binary-grid:has(> .offer-tech-binary-grid__cell:nth-child(4)) {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
.offer-tech-binary-grid__cell {
    min-width: 0;
}
.offer-tech-binary-grid__cell .offer-radio-field {
    margin-bottom: 0;
}
.locality-address-ruian-row > .col-lg-8 > .mb-1,
.locality-address-ruian-row > .col-lg-4 > .mb-3 {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    margin-bottom: 0 !important;
}
.locality-address-ruian-row > .col-lg-8 > .mb-1 > .form-control {
    margin-top: auto;
}
.locality-address-ruian-row > .col-lg-4 > .mb-3 > :last-child {
    margin-top: auto;
    width: 100%;
}
.offer-binary-segment__group {
    /*border-radius: 0.45rem;*/
    overflow: hidden;
    /*box-shadow: 0 1px 2px rgba(15, 43, 67, 0.06);*/
}
.offer-binary-segment__btn {
    font-weight: 600;
    font-size: 0.9rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    border-color: rgba(26, 43, 65, 0.2);
    color: #2a3344;
    white-space: normal;
    line-height: 1.25;
    transition: background-color 0.22s ease,
    color 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease,
    transform 0.16s ease;
}
.offer-binary-segment__group .btn-check:not(:disabled):active + .offer-binary-segment__btn {
    transform: scale(0.98);
}
.offer-binary-segment__group .btn-check:checked + .offer-binary-segment__btn {
    background-color: #0f2b43;
    border-color: #0f2b43;
    color: #fff;
    z-index: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
}
.offer-binary-segment__group .btn-check:focus-visible + .offer-binary-segment__btn {
    box-shadow: 0 0 0 0.2rem rgba(15, 43, 67, 0.22);
}
.offer-binary-segment__group .btn-check:checked:focus-visible + .offer-binary-segment__btn {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1),
    0 0 0 0.2rem rgba(15, 43, 67, 0.28);
}
.offer-binary-segment__group .btn-check:disabled + .offer-binary-segment__btn {
    opacity: 0.65;
    cursor: not-allowed;
}
.offer-binary-segment .offer-radio-field .form-label {
    margin-bottom: 0.4rem;
}
.offer-binary-segment .offer-radio-field {
    margin-bottom: 0;
}
.toggle-target-wrapper.toggle-disabled {
    opacity: 0.55;
}
.toggle-target-wrapper.toggle-disabled .form-control,
.toggle-target-wrapper.toggle-disabled .form-select {
    background-color: #f5f5f5;
    cursor: not-allowed;
}
.toggle-target-wrapper.toggle-disabled .offer-bitmask-option,
.toggle-target-wrapper.toggle-disabled .offer-bitmask-option *,
.toggle-target-wrapper.toggle-disabled .offer-binary-segment__btn {
    pointer-events: none;
}
.toggle-target-wrapper.toggle-disabled .offer-bitmask-option:hover,
.toggle-target-wrapper.toggle-disabled .offer-bitmask-option:focus-within {
    border-color: rgba(26, 43, 65, 0.12);
    background: #fff;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}
.progress-label .progress-bar .label, .select2-container--default .select2-results__option[aria-selected=true]:hover, span.flatpickr-weekday, .flatpickr-weekdays, .flatpickr-months {
    background-color: #1a2b41;
}
.flatpickr-day.today, .flatpickr-day.today:hover {
    border-color: #1a2b41;
}
.progress-label .progress-bar .label:after, .flatpickr-calendar.arrowBottom::before, .flatpickr-calendar.arrowBottom::after {
    border-top-color: #1a2b41;
}
.progress-bar.bg-info {
    background-color: #1a2b41 !important;
    opacity: 0.6;
}
.flatpickr-input[disabled] {
    cursor: auto;
    background-color: #f0f2f7;
}
.dropzone .dz-preview .dz-image {
    border-radius: 5px !important;
    border: 1px solid #e9ebec !important;
}
.dropzone.dz-started .dz-message {
    display: inline-block !important;
}
.dropzone .dz-message {
    margin: 1em 0 !important;
    font-size: 16px !important;
}
.dropzone {
    border: 1px solid #e9ebec !important;
}
#uploader .dz-remove-wrapper,
.dropzone .dz-remove-wrapper {
    margin-top: 1.35rem !important;
}
a.dz-remove {
    border: 1px solid !important;
}
.dropzone .dz-preview {
    margin: 11px !important;
}
.dropzone {
    padding: 12px !important;
}
.bg-box {
    background-image: url(../images/bg-box.png);
    background-size: cover;
}
.profile-wid-bg::before {
    background: #0f2b43;
    background: -webkit-gradient(linear, left bottom, left top, from(#0f2b43), to(#264055ad));
    background: linear-gradient(to top, #0f2b43, #264055ad);
}
.box-overlay {
    margin: -1.5rem -1.5rem -0.35rem -1.5rem;
}
[data-layout=horizontal] .navbar-menu .navbar-nav .nav-link.active {
    background-color: #eeeff1;
}
[id^="model-datatables"] td > a {
    position: relative;
    color: #1a2b41;
    text-decoration: none;
    font-weight: 600;
}
[id^="model-datatables"] td > a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 2px;
    background: #1a2b41;
    transition: width 0.3s ease-out;
}
[id^="model-datatables"] td > a:hover::after {
    width: 100%;
}
td > .badge {
    cursor: context-menu;
}
.notification-email-chip {
    font-size: .85rem;
    padding: .35rem .65rem;
}
.notification-email-chip .btn-remove-email {
    line-height: 1;
}
.swal2-popup.swal2-bootstrap-5 {
    border-radius: 1rem;
    padding: 1.75rem 2rem;
}
.swal2-title {
    font-size: 1.35rem;
    font-weight: 600;
    color: #1c2d42;
}
.swal2-html-container {
    font-size: .95rem;
    color: #6c757d;
    margin-top: .5rem;
}
.swal2-actions {
    gap: 0.75rem;
    justify-content: center;
}
.swal2-actions .btn {
    min-width: 140px;
    font-weight: 500;
}
div:where(.swal2-icon) {
    margin: 1em auto 0.6em !important;
}
.vstack i[class^="ri-"], .vstack i[class*=" ri-"] {
    margin-top: 2px;
}
[data-layout=horizontal] .navbar-menu .navbar-nav > li:nth-of-type(2) > .nav-link.menu-link {
    padding-left: 1.5rem;
}
.frs-helper-workflow {
    position: fixed;
    bottom: 0%;
    right: 24px;
    /*transform: translateY(-50%);*/
    z-index: 1050;
    max-width: 320px;
}
@media (max-width: 991.98px) {
    .frs-helper-workflow {
        display: none;
    }
}
body.page-wide .main-content .page-content > .container-fluid {
    max-width: 1600px;
}
table#model-datatables th {
    font-size: 0.8rem;
    padding: 0.7rem 1rem 0.7rem 0.4rem !important;
}
table#model-datatables td {
    font-size: 0.75rem;
    padding: 0.2rem 0.4rem !important;
}
.dataTables_paginate a.page-link {
    font-size: 0.8rem;
    padding: 0.2rem 0.4rem;
}
.dataTables_paginate ul.pagination {
    padding-top: 0.5rem;
}
#model-datatables_info {
    font-size: 0.8rem;
}
table[id^="model-datatables-"] {
    width: 100% !important;
}
table[id^="model-datatables-"] th {
    font-size: 0.8rem;
    padding: 0.7rem 1rem 0.7rem 0.4rem !important;
}
table[id^="model-datatables-"] td {
    font-size: 0.75rem;
    padding: 0.2rem 0.4rem !important;
}
.table-responsive {
    overflow: visible !important;
}
/*.form-filter .filter-label {*/
/*    font-size: 0.75rem;*/
/*    text-transform: uppercase;*/
/*    letter-spacing: .04em;*/
/*    color: #7b88a0;*/
/*    margin-bottom: 0.25rem;*/
/*}*/
/*.form-filter .filter-icon {*/
/*    position: absolute;*/
/*    left: .9rem;*/
/*    top: 50%;*/
/*    transform: translateY(-50%);*/
/*    font-size: .9rem;*/
/*    color: #c0c7d6;*/
/*}*/
/*.form-filter .filter-slider .slider {*/
/*    margin-top: .15rem;*/
/*}*/
/*.form-filter .filter-slider .irs {*/
/*    height: 32px;*/
/*}*/
/*.form-filter .filter-slider .irs-line,*/
/*.form-filter .filter-slider .irs-bar {*/
/*    height: 3px;*/
/*}*/
/*.form-filter .filter-slider .irs-handle {*/
/*    width: 14px;*/
/*    height: 14px;*/
/*    top: 16px;*/
/*    border-width: 2px;*/
/*}*/
/*.form-filter .slider-value {*/
/*    font-size: 0.75rem;*/
/*    color: #7b88a0;*/
/*}*/
/*.form-filter .filter-row-sliders .filter-slider {*/
/*    min-width: 220px;*/
/*    max-width: 320px;*/
/*    height: 55px;*/
/*}*/
/*.form-filter .filter-row-sliders .filter-slider .slider {*/
/*    width: 100%;*/
/*}*/
/*.form-filter .filter-row-actions {*/
/*    margin-top: .25rem;*/
/*}*/
.ac-menu.ui-autocomplete {
    border: 0 !important;
    border-radius: 2px;
    box-shadow: 0 18px 60px rgba(0, 0, 0, .18);
    background: #fff;
    padding: 5px;
    max-height: 360px;
    overflow: auto;
}
.ac-row {
    display: grid;
    grid-template-columns: 70px 2.5fr 2fr 2fr;
    gap: 5px;
    align-items: center;
    padding: 10px 12px;
    border-radius: 2px;
}
.ac-row--header {
    font-size: 10px;
    letter-spacing: .02em;
    text-transform: uppercase;
    color: rgba(0, 0, 0, .55);
    background: rgba(0, 0, 0, .04);
    position: sticky;
    top: 0;
    z-index: 2;
    font-weight: 700;
}
.ac-item {
    padding: 0;
    margin: 2px 0;
    font-size: 9px;
}
.ac-item .ac-row {
    background: transparent;
    transition: transform .05s ease, background-color .12s ease;
}
.ac-item:hover .ac-row,
.ac-item .ui-state-active,
.ac-item .ui-state-active .ac-row {
    background: rgba(0, 0, 0, .04) !important;
}
.ac-cell {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ac-mono {
    font-variant-numeric: tabular-nums;
    font-size: 9px;
}
.ac-empty .ac-row--empty {
    color: rgba(0, 0, 0, .55);
    padding: 14px 12px;
}
.ui-menu .ui-menu-item-wrapper {
    /*padding: 0 !important;*/
}
.ac-row.ui-state-active {
    border: 1px solid rgba(0, 0, 0, .04) !important;
    background: rgba(0, 0, 0, .04) !important;
    color: rgba(0, 0, 0, .55) !important;
}
.ac-row--header.ui-state-active {
    border: 1px solid rgba(0, 0, 0, .04) !important;
    color: rgba(0, 0, 0, .55) !important;
    background: rgba(0, 0, 0, .04) !important;
}
@media (max-width: 640px) {
    .ac-row {
        grid-template-columns: 120px 1fr;
        grid-auto-rows: auto;
    }
    
    .ac-row > .ac-cell:nth-child(3),
    .ac-row > .ac-cell:nth-child(4) {
        display: none;
    }
}
.modal-dialog:has(.dup-modal) {
    max-width: 900px;
}
.dup-modal {
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial;
    text-align: left;
    color: #111;
}
.dup-head { margin-bottom: 10px; }
.dup-note {
    font-size: 12px;
    line-height: 1.45;
    color: rgba(0, 0, 0, .70);
    margin: 0px 0 10px;
}
.dup-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 12px 0 16px;
}
.dup-chip {
    border: 1px solid rgba(0, 0, 0, .10);
    background: rgba(0, 0, 0, .02);
    border-radius: 4px;
    padding: 7px 14px;
    /*min-height: 64px;*/
}
.dup-chip span {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: rgba(0, 0, 0, .55);
}
.dup-chip b {
    display: block;
    font-size: 12px;
    font-weight: 500;
    color: #111;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.dup-tablewrap {
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
}
.dup-tablewrap--error {
    box-shadow: 0 0 0 3px rgba(220, 53, 69, .20);
    border-color: rgba(220, 53, 69, .35);
}
.dup-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}
.dup-table thead th {
    background: rgba(0, 0, 0, .03);
    color: rgba(0, 0, 0, .55);
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .05em;
    padding: 7px 10px;
}
.dup-table td {
    padding: 10px 10px;
    border-top: 1px solid rgba(0, 0, 0, .06);
    font-size: 11px;
}
.dup-table tbody tr {
    cursor: pointer;
    transition: background-color .12s ease;
}
.dup-table tbody tr:hover {
    background: rgba(0, 0, 0, .03);
}
.dup-col-pick {
    width: 90px;
    text-align: center;
}
.dup-selected {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    color: rgba(0, 0, 0, .70);
    font-size: 12px;
}
.dup-selected-label {
    color: rgba(0, 0, 0, .55);
    font-weight: 700;
}
.dup-selected-id {
    font-weight: 900;
    color: #111;
}
.dup-requires-pick {
    margin-left: auto;
    color: rgba(0, 0, 0, .55);
}
.dup-error {
    margin-top: 12px;
    padding: 10px 12px;
    border-radius: 4px;
    background: rgba(220, 53, 69, .08);
    border: 1px solid rgba(220, 53, 69, .18);
    color: #b02a37;
    font-weight: 800;
    font-size: 12px;
}
.dup-decision {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 16px;
}
.dup-decision-block {
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 6px;
    padding: 14px 14px 12px;
    background: rgba(0, 0, 0, .02);
}
.dup-decision-block.primary {
    background: rgba(25, 135, 84, .04);
    border-color: rgba(25, 135, 84, .18);
}
.dup-decision-block.secondary {
    background: rgba(13, 110, 253, .04);
    border-color: rgba(13, 110, 253, .18);
}
.dup-decision-title {
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 4px;
}
.dup-decision-sub {
    font-size: 12px;
    color: rgba(0, 0, 0, .65);
    margin-bottom: 10px;
}
.dup-decision-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.dup-decision-hint {
    margin-top: 10px;
    font-size: 12px;
    color: rgba(0, 0, 0, .55);
}
.dup-modal .btn {
    border-radius: 5px;
    padding: 7px 7px;
    font-weight: 500;
    line-height: 1.1;
    font-size: 12px;
}
.dup-modal .btn-add-new {
    background: #198754;
    border-color: #198754;
    color: #fff;
}
.dup-modal .btn-add-new:hover { filter: brightness(.96); }
.dup-modal .btn-rewrite {
    border: 1px solid rgba(220, 53, 69, .60);
    color: #b02a37;
    background: #fff;
}
.dup-modal .btn-rewrite:hover {
    background: rgba(220, 53, 69, .06);
}
.dup-modal .btn-use-existing {
    border: 1px solid rgba(13, 110, 253, .55);
    color: #0b5ed7;
    background: #fff;
}
.dup-modal .btn-use-existing:hover {
    background: rgba(13, 110, 253, .06);
}
.dup-modal .btn:disabled {
    opacity: .45;
    cursor: not-allowed;
    filter: grayscale(.15);
}
@media (max-width: 900px) {
    .dup-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    
    .dup-decision { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
    .dup-summary { grid-template-columns: 1fr; }
}
.controller-lead.action-edit .modal-footer {
    border-top: 1px solid rgba(0, 0, 0, .10);
    background: #fff;
    padding: 14px 18px;
}
/*.was-validated .form-control:valid,
.was-validated .form-control:invalid {
    border-color: inherit !important;
    background-image: none !important;
    box-shadow: none !important;
}*/
body .form-control[aria-invalid="true"],
body .form-control[aria-invalid="true"]:focus {
    border-color: #dc3545 !important;
    padding-right: 2.5rem !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%239b2929' viewBox='-2 -2 7 7'%3e%3cpath stroke='%239b2929' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right .75rem center !important;
    background-size: calc(.75em + .5rem) calc(.75em + .5rem) !important;
    box-shadow: 0 0 0 .25rem rgba(220, 53, 69, .25) !important;
}
body .form-control[aria-invalid="false"],
body .form-control[aria-invalid="false"]:focus {
    border-color: #198754 !important;
    padding-right: 2.5rem !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2311d1b7' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right .75rem center !important;
    background-size: calc(.75em + .5rem) calc(.75em + .5rem) !important;
    box-shadow: 0 0 0 .25rem rgba(25, 135, 84, .25) !important;
}
.select2-container .select2-selection--multiple .select2-selection__choice__remove {
    border-color: #cecece;
}
.select2-container .select2-selection--multiple .select2-selection__choice__remove:hover {
    background-color: #1a2b41;
}
.select2-container .select2-selection--multiple .select2-selection__choice {
    background-color: #1a2b41;
}
.offer-type-picker-card {
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.offer-type-picker-card:hover {
    border-color: var(--vz-primary) !important;
    box-shadow: 0 0.5rem 1.25rem rgba(15, 43, 67, 0.12) !important;
    transform: translateY(-2px);
}
.offer-type-picker-icon {
    width: 4.5rem;
    height: 4.5rem;
    object-fit: contain;
}
.area-field-hint {
    position: relative;
    flex-shrink: 0;
    line-height: 0;
    border-radius: 50%;
    margin-left: 5px;
}
.area-field-hint::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 2rem;
    height: 2rem;
    margin: 0;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
    background: radial-gradient(
            circle,
            rgba(106, 168, 79, 0.5) 0%,
            rgba(106, 168, 79, 0.26) 38%,
            rgba(15, 43, 67, 0.1) 62%,
            transparent 72%
    );
    filter: blur(3px);
    opacity: 0.88;
    animation: area-hint-glow-pulse 2.8s ease-in-out infinite;
}
.area-field-hint:focus-visible {
    outline: 2px solid rgba(106, 168, 79, 0.75);
    outline-offset: 3px;
}
.area-field-hint__badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 50%;
    background: linear-gradient(145deg, rgba(15, 43, 67, 0.1), rgba(106, 168, 79, 0.22));
    box-shadow: 0 0 0 1px rgba(15, 43, 67, 0.12),
    0 2px 6px rgba(15, 43, 67, 0.08);
    transition: transform 0.22s cubic-bezier(0.34, 1.2, 0.64, 1),
    box-shadow 0.22s ease,
    background 0.22s ease;
}
.area-field-hint__icon {
    font-size: 0.9rem;
    color: var(--vz-primary, #0f2b43);
    transition: color 0.2s ease, transform 0.22s cubic-bezier(0.34, 1.2, 0.64, 1);
}
.area-field-hint:hover::before,
.area-field-hint:focus-visible::before {
    animation: none;
    opacity: 1;
    filter: blur(4px);
    transform: translate(-50%, -50%) scale(1.12);
    background: radial-gradient(
            circle,
            rgba(106, 168, 79, 0.55) 0%,
            rgba(106, 168, 79, 0.22) 48%,
            rgba(15, 43, 67, 0.08) 72%,
            transparent 82%
    );
}
.area-field-hint:hover .area-field-hint__badge,
.area-field-hint:focus-visible .area-field-hint__badge {
    transform: scale(1.1);
    background: linear-gradient(145deg, #0f2b43, #1a4a6e);
    box-shadow: 0 0 0 2px rgba(106, 168, 79, 0.45),
    0 6px 16px rgba(15, 43, 67, 0.2);
}
.area-field-hint:hover .area-field-hint__icon,
.area-field-hint:focus-visible .area-field-hint__icon {
    color: #fff;
    transform: rotate(-8deg) scale(1.05);
}
@keyframes area-hint-glow-pulse {
    0%,
    100% {
        opacity: 0.68;
        transform: translate(-50%, -50%) scale(0.94);
        filter: blur(3px);
    }
    38% {
        opacity: 0.96;
        transform: translate(-50%, -50%) scale(1.07);
        filter: blur(2px);
    }
    72% {
        opacity: 0.76;
        transform: translate(-50%, -50%) scale(0.98);
        filter: blur(4px);
    }
    92% {
        opacity: 0.7;
        transform: translate(-50%, -50%) scale(0.95);
        filter: blur(3.5px);
    }
}
@media (prefers-reduced-motion: reduce) {
    .area-field-hint::before {
        animation: none;
    }
    
    .area-field-hint:hover::before,
    .area-field-hint:focus-visible::before {
        transform: translate(-50%, -50%);
    }
    
    .area-field-hint:hover .area-field-hint__badge,
    .area-field-hint:focus-visible .area-field-hint__badge {
        transform: none;
    }
    
    .area-field-hint:hover .area-field-hint__icon,
    .area-field-hint:focus-visible .area-field-hint__icon {
        transform: none;
    }
}
.tooltip.tooltip-area-hint .tooltip-inner {
    max-width: min(22rem, 92vw);
    text-align: left;
    font-size: 0.8125rem;
    line-height: 1.45;
    padding: 0.55rem 0.75rem;
    color: #f8fafc;
    background: linear-gradient(155deg, #0f2b43 0%, #163d5c 55%, #1a4a6e 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 0.4rem 1.1rem rgba(15, 43, 67, 0.25),
    0 0 0 1px rgba(106, 168, 79, 0.2);
    animation: tooltip-area-in 0.32s cubic-bezier(0.34, 1.15, 0.64, 1) both;
}
.tooltip.tooltip-area-hint.bs-tooltip-top .tooltip-arrow::before,
.tooltip.tooltip-area-hint.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before {
    border-top-color: #163d5c;
}
@keyframes tooltip-area-in {
    from {
        opacity: 0;
        transform: translateY(6px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
@media (prefers-reduced-motion: reduce) {
    .tooltip.tooltip-area-hint .tooltip-inner {
        animation: none;
    }
}