:root {
    --bs-body-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
}

body {
    font-family: var(--bs-body-font-family);
}

.orange-button, .orange-button:hover {
    background-color: #faba5e;
    font-weight: 700;
    font-size: 15px
}

.orange-button:hover {
    background-color: #f89406
}

.orange-button:disabled {
    background-color: #faba5e;
}

.custom-radio {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    cursor: pointer;
    position: relative;
    transition: box-shadow 0.2s ease-in-out;
}

.custom-radio input[type="radio"] {
    display: none;
}

.custom-radio span::before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 22px;
    background-color: #f7931e;
    border-radius: 50%;
    margin-right: 0.5rem;
    box-sizing: border-box;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
}

.custom-radio input[type="radio"]:checked + span::before {
    background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'>\
<path fill='none' stroke='white' stroke-width='3' d='M5 10l3 3 7-7'/></svg>");
}

.payment-icon {
    height: 70px;
    max-width: 120px;
    object-fit: contain;
}

.custom-check {
    width: 18px;
    height: 18px;
    border: 1px solid #f7931e;
    background-color: #f7931e;
    display: inline-block;
    border-radius: 2px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px 14px;
    transition: all 0.2s ease-in-out;
    flex-shrink: 0;
}

/* Галочка появляется при выборе */
input[type="checkbox"]:checked + label .custom-check {
    background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'>\
<path fill='none' stroke='white' stroke-width='4' d='M4 10l4 4 8-8'/></svg>");
}

/* Стиль Bootstrap-алерта с предупреждением */
.alert-warning {
    color: #fdb44f;
    background-color: #fff5e7;
    border: 1px solid #fbe6c8;
}

.alert-success {
    color: #468847;
    background-color: rgba(223, 240, 216, 0.32);
    border-color: #d6e9c6;
}

/* Цвет фона строки таблицы с предупреждением */
.table-warning {
    --bs-table-bg: rgba(223, 240, 216, 0.32);;
}

/* Иконка plus-circle-fill  */
/* Иконка-триггер: показываем плюс по умолчанию, минус когда раскрыто */
.toggle-period .icon-minus {
    display: none;
}

.toggle-period[aria-expanded="true"] .icon-plus {
    display: none;
}

.toggle-period[aria-expanded="true"] .icon-minus {
    display: inline;
}

.toggle-period i {
    font-size: 1.15rem;
    vertical-align: middle;
}

.icon-green-large {
    color: #62c462;
}


.icon-green-large:hover {
    color: #f89406 /* новый цвет при наведении */
}

/* меньший размер alert bootstrap */
.alert-sm {
    padding: 0.75rem 1.25rem; /* меньше отступы */
    line-height: 1.2;
}

.form-label-datepicker {
    margin-top: 0.375rem;
    margin-bottom: 0.375rem;
}

/* Заголовок аккордеона */
.accordion.accordion-account-info .accordion-button {
    background-color: #e9ecef; /* bg-light */
    color: #000;
}

/* Убираем подсветку при фокусе на кнопке аккордеона */
.accordion.accordion-account-info .accordion-button:focus {
    box-shadow: none;
    outline: none;
}

/* Убрать нижний отступ в баннерах у тега p */
.alert-banner p {
    margin-bottom: 0;
}

/* Левая «лента» для блока детализации */
div[class^="period-"] .p-3.bg-body-tertiary {
    position: relative;
    border-left: .5rem solid #28a7451a;
}

/* Светлая рамка с тенями (например, для карточек/блоков) */
.border-light {
    padding: 10px;
    margin: 10px 0;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    border: 1px solid #eeeeee;
    box-shadow: 0 0 10px rgba(221, 221, 221, 0.5);
    -webkit-box-shadow: 0 0 10px rgba(221, 221, 221, 0.5);
    -moz-box-shadow: 0 0 10px rgba(221, 221, 221, 0.5);
}

/* Глобальный стиль ссылок */
a {
    color: #104f86;
}

.btn-link {
    --bs-btn-color: #104f86;
    --bs-btn-hover-color: #104f86;
}


/* Подчеркивание при наведении */
.link-hover-underline {
    text-decoration: none;
}

.link-hover-underline:hover {
    text-decoration: underline;
}
.input-light:focus {
    box-shadow: none !important;
    border-color: #ced4da !important; /* чтобы убрать синюю рамку */
}

.custom-modal-footer {
    background-color: #f5f5f5
}

/* Цвет текста без ссылки */
.custom-color {
   color: #104f86;
}

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

.alert-banner p {
    display: inline;
    margin: 0;
}

.link-dashed {
    text-decoration: none;
    border-bottom: 1px dashed;
    font-size: 12px;
    line-height: 15px;
    color: #6c757d;
    cursor: pointer;
}

.link-dashed:hover {
    color: #ff9d00;
    border-bottom: 1px dashed #ff9d00;
}