@import url("/vendor/bootstrap-icons-1.11.2/font/bootstrap-icons.min.css");
@import url("/vendor/fonts/local-fonts.css");
:root {
/* лавандовая схема */
    /*
    --nav-link-selected-bg-color: #dfd6e4;
    --body-bg-color: #dfd6e4;
    --header-bg-color: #cfc6d4;
    --nav-link-color: #212549;
    --nav-link-hover-color: #0a58ca;
    */

    --notice-bg-color: #f6e9c0;

/*зеленая схема*/
    --body-bg-color: #efefef;
    --header-bg-color: #ffffff;
    --header-color: #333333;
    --nav-link-color: #0e8e38;
    --nav-link-hover-color: #15cd52;
    --login-icon-color: #FF0000;
    --event-menu-link-color: var(--bs-link-color);
    --event-menu-link-hover-color: var(--bs-link-hover-color);
    --event-menu-selected-bg-color: #e3e3e3;

    --tablo-bg-color: #eaeaea;
    --tablo-primary-color: #ffffff;
    --tablo-stripe-bg-color: #25473f;
    --tablo-secondary-color: #000000;

    --tt-bg-color: #035c4a;
    --tt-color: white;
    --tt-font-size: 16px;
    --tt-link-color: #15e359;
}



body {
    background-color: var(--body-bg-color);
    font-family: 'Nunito', Roboto, sans-serif;
}
/* BOOTSTRAP REDEFINE!*/
.bg-light {
    background-color: white!important;
}
.btn-default{
    background-color: silver;
}
.login-icon {
    color: #FA0201;
}

.bg-nav {
    --background-color: var(--header-bg-color);
    background-color : #00000010;
}

.navbar {
    /*background-color: #222244;*/
    background-color: var(--header-bg-color);
}
.nav-link {
    color: var(--nav-link-color);
}
.logo-link {
    text-decoration: none;
    text-decoration-color: black;
    color: black;
}
.nav-link:hover {
    color: var(--nav-link-hover-color);
}
.d-none-important {
}

#admin-menu {
    width: 240px;
    background-color: #f8fafc;
    border-right: 1px solid #e5e7eb;
    box-shadow: inset -1px 0 0 rgba(16, 24, 40, 0.02);
}
#admin-menu a {
    color: #334155;
    text-decoration: none;
    display: block;
    border-radius: 0.4rem;
    transition: background-color 0.15s ease, color 0.15s ease;
}
#admin-menu a:hover {
    color: #0f3b82;
    background-color: #eaf2ff;
}
.event-menu .selected  {
    background-color: #dbeafe;
    border-radius: 0.4rem;
}

.event-menu {
    padding: 0;
    margin-bottom: 0.25rem;
}

.event-menu li {
    list-style-type : none;
    padding-left: 0.35rem;
    padding-right: 0.35rem;
    padding-top: 0.15rem;
    padding-bottom: 0.15rem;
    min-width: 10rem;
}

.event-menu li > ul {
    padding-inline-start: 8px;
}

#menu-content > .event-menu > li {
    margin-bottom: 0.2rem;
}

#menu-content > .event-menu > li[id="super-admin"],
#menu-content > .event-menu > li[id="team-admin"] {
    background: #f1f5f9;
    border-color: #d7dee7 !important;
    border-radius: 0.5rem;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
}

#menu-content h5 {
    font-size: 0.95rem;
    letter-spacing: 0.01em;
    color: #0f172a;
    margin-top: 0.45rem;
    margin-bottom: 0.45rem;
}



/*.dropdown-menu {*/
/*    min-width: 15rem;*/
/*}*/
.dropdown-item:hover {
    background-color: silver;
    color: var(--header-color);
}
/*.dropdown-menu>li>a:hover {*/
/*    color: white;*/
/*}*/

.event-panel {
    min-width: 150px;
    max-height: 450px;
    max-width: 625px;
    overflow: auto;
}

.event-card__img {
    aspect-ratio: 2 / 1;
    object-fit: cover;
    max-width: 100%;
    min-width: 100%;
}

.event-panel-done{
    background-color: #f0f0f0;
}

.event-block{
    margin-top: 10px;
}


.table-striped>tbody>tr:nth-of-type(even) {
    background-color: #e9e9e9;
}

#tenant-events tr, #tenant-events td {
    background-color: inherit;
    color: inherit;
}

#tenant-events .past {
    background-color: #c9d1db;
    color: #1f2a37;
    border-bottom-color: #b8c0cb;
}

#tenant-events .future {
    background-color: #fdfdfd;
    color: #101828;
    border-bottom-color: #e5e7eb;
}

#tenant-events {
    background-color: #fdfdfd;
}

#tenant-events th,
#tenant-events td {
    padding: 0.6rem 0.65rem;
    vertical-align: middle;
}

#tenant-events tbody tr.bg-warning {
    background-color: #ffe69c !important;
    color: #4d3b00;
}

.events-table-wrap {
    border: 1px solid #e4e8ef;
    border-radius: 0.5rem;
    background-color: #fff;
    padding: 0.35rem;
}

#sa-invoices-table {
    background-color: #fdfdfd;
}

#sa-invoices-table th,
#sa-invoices-table td {
    padding: 0.6rem 0.65rem;
    vertical-align: middle;
}

#sa-invoices-table tr,
#sa-invoices-table td {
    background-color: inherit;
    color: inherit;
}

#sa-invoices-table tbody tr.past {
    background-color: #c9d1db;
    color: #1f2a37;
}

#sa-invoices-table tbody tr.past .text-muted {
    color: #495260 !important;
}

#sa-invoices-table tbody tr.bg-warning {
    background-color: #ffe69c !important;
    color: #4d3b00;
}

.invoices-table-wrap {
    border: 1px solid #e4e8ef;
    border-radius: 0.5rem;
    background-color: #fff;
    padding: 0.35rem;
}

.titleBg{
}
.darkGrayBg{
    background-color: #444444;
}
.rad4px {
	border-radius: 4px;
}

.grayBg>h3{
	margin-top:0;
	padding-top:20px;
	margin-bottom:0;
	padding-bottom:10px;
}

.darkGrayBg>h2{
    margin-top:0;
    padding:10px;
    margin-bottom:10px;
    color: #cad1e7;
}

.perfHeader{
	background-color:#FFFFFF;
	text-align:center;
	padding:0.7em 1em 0.7em;
}

.pad10px{
	padding:10px;
}

.margTop5px{
	margin-top:5px;
}

.grayBg hr{
    margin-top: 5px;
    margin-bottom: 5px;
    border: 0;
    border-top: 1px solid #333;
}

.td-width-400{
    --white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 400px;
    display: block;
}

.flex-row-break {
    flex-basis: 100%;
    /*height: 0;*/
}

.has-error {
    color : red;
    padding-left: 0.5em;
}
.mw-800 {
    max-width: 800px;
}

.break-row {
    flex-basis: 100%;
}

#reg-table td {
    padding: 4px;
}

.reg-field-20 {
    max-width: 20rem;
    flex-grow: 1;
}
.reg-field-50 {
    max-width: 50rem;
    flex-grow: 1;
}
.reg-field-100 {
    max-width: 100rem;
    flex-grow: 1;
}

.reg-check-input {
    border-color: #495057 !important;
    border-width: 1px !important;
}

.reg-check-input:focus {
    border-color: #343a40 !important;
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.25) !important;
}

.reg-actions-bar {
    margin-top: 1rem;
    padding: 0.75rem;
    border: 1px solid #d6dee8;
    border-radius: 0.5rem;
    background-color: #eef3f8;
}

.reg-check-input:checked {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}

.summary-registration-caption {
    font-weight: bold;
}
.summary-registration-item {
    padding: 2px 4px;
}

.table-small-padding{
    padding: 2px;
}
.table-small-padding :not(caption)>*>* {
    padding: 2px;
}

.notice {
    color: #444444;
    font-size: 0.9rem;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    padding: 0.5rem 1rem;
    border-color: orange;
    border-radius: 4px;
    border-style: solid;
    border-width: 1px;
    border-left: orange;
    border-left-style: solid;
    border-left-width: 3px;
}
.notice-bg {
    background-color: var(--notice-bg-color);
}

.diploma-element {
    border-color: #ffffff!important;
}
.diploma-element > input {
    max-width: 5rem;
}

#passes-frame {
    background-color: #778899;
    background-image: url("/images/pass-images/passes-bkg.jpg");
    padding: 2em;
    text-align: center;
    color: white;
}

.passes-frame-row {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    margin-bottom: 0.5em;
    flex-wrap: wrap;
    color: black;
}

.passes-frame-card {
    border-radius: 4px;
    border: solid 1px whitesmoke;
    background-color: white;
    padding: 0;
    margin: 1em;
    box-shadow: silver 1px 1px 1em;
}

.passes-frame-card .card-body {
    background-color: whitesmoke;
}

.obj-inspector-row {
    padding-top: 16px;
    padding-bottom: 16px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    border-bottom: 1px solid #FAFAFA;
    align-items: center;
    min-height: 3em;
}

.obj-inspector-header {
    width: 12em;
    font-weight: 600;
    padding: 0.25em 0.5em;
    display: flex;
    flex-direction: row;
    align-items: stretch;
}

.obj-inspector-value {
    flex-grow: 1;
    flex-shrink: 1;
    padding: 0.25em 0.5em;
    width: auto;
}

.bi {
    vertical-align: 0.25em;
    cursor: pointer;
}

.no-spin input::-webkit-outer-spin-button,
.no-spin input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
    }

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

.mass-update-block {
    border: solid 1px #fafafa;
    border-radius: 0.25rem;
}

.mass-update-element {
}

.mass-update-element.form-check-input {
    margin: 0;
    align-self: center;
    margin-right: 0.5em;
}

.mass-update-element.form-check-input:checked {
}

.line-height-100 {
    line-height: 1;
}

.line-height-110 {
    line-height: 1.1;
}

ol.li-h4 > li::marker {
    font-size: 1.5rem;
}

#loginModal .error {
    font-size: 0.8rem;
    color: #9f0929;
}

#loginModal .form-control {
    width: 60%;
}

.tag-list li {
    margin-top: 0.5em;
}
.tag-list-tag {
    font-weight: bold;
    cursor: pointer;
    border-radius: 4px;
    border: 1px #9f9f9f solid;
    background-color: #fbf7f7;
    padding: 0 4px;
}

.tag-list-tag.selected {
    background-color: #9dfda7;
}


#payment-list-table input[type=number] {
    border-color: silver;
    border: none;
    width: 100%;
    padding: 2px 0.5em;
    min-width: 4em;
}
#payment-list-table input[type=number]::-webkit-outer-spin-button,
#payment-list-table input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#payment-list-table input[type=number] {
    -moz-appearance: textfield;
}

.tag {
    background-color: #c2bcc3;
    border-radius: 4px;
    padding: 3px 3px 2px;
    line-height: 1;
    color: #ffffff;
    display: inline-block;
}

.small-tag {
    font-size: small;
}

.go-to-button {
    font-size: small;
    border-width: 0;
}
.go-to-button a {
    text-decoration: none!important;
    color: inherit!important;
}
.go-to-button.enabled {
    /*background-color: #0a58ca;*/
    background-color: #37852b !important;
    color: white!important;
    border-width: 0;
}
.go-to-button.disabled {
    background-color: #cac9c9;
    color: gray;
}
.go-to-button.middle {
    background-color: #e1e1e1;
}
.button-panel {
    background-color: var(--bs-gray-200);
    position:fixed;
    bottom: 0;
    left:0;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 1rem;
    padding: 1rem;
}

.reg-table-row {
    border: 1px solid #DDDDDD;
    padding: 0.5rem;
    border-radius: 4px;
    box-shadow: 0 0 5px #00000022;
}
.reg-table-row.reg-table-selected {
    border: 4px solid var(--bs-success);
}

a .text-over-image-container {
    color: white;
    display: block;
}
.text-over-image-container {
    background: black;
    position: relative;
    box-shadow: 1px 1px 3px #000000aa, 0 0 5px white;
    overflow: hidden;
    border-radius: 4px;
}

.text-over-image-container img {
    border-radius: 4px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.text-over-image-text {
    position: absolute;
    top:50%;
    left: 0;
    transform: translate(0, -50%);
    z-index: 1;
}
.semi-transparent {
    width: 100%;
    opacity: 0.6;
    transition: all 0.3s;
}
.semi-transparent:hover {
    opacity: 0.8;
    transform: scale(1.025);
}

.future-past {
    transition: all 0.3s;
}
.future-past:hover {
    transform: scale(1.1);
}

/* Убираем стандартную стрелку */
.accordion-button::after {
    display: none;
}

/* Добавляем свою стрелку слева */
.accordion-button::before {
    content: "";
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;

    background-image: var(--bs-accordion-btn-icon);
    background-repeat: no-repeat;
    background-size: 1.25rem;

    transition: transform 0.2s ease-in-out;

    flex-shrink: 0;
}

/* Поворот при раскрытии */
.accordion-button:not(.collapsed)::before {
    transform: rotate(180deg);
}

.reg-step-header {
    background: linear-gradient(145deg, #edf5ff 0%, #f7fbff 100%) !important;
    border-color: #d8e6f7 !important;
    box-shadow: 0 6px 18px rgba(0, 40, 120, 0.05);
}

.reg-step-shell {
    background: linear-gradient(165deg, #f8fbff 0%, #f4f8ff 100%) !important;
    border-color: #d8e6f7 !important;
    box-shadow: 0 10px 24px rgba(0, 40, 120, 0.06);
}
