:root {
	--ff-main: "GolosUIWebVF", sans-serif;
	/* Font Size */
	--fs-h-xlarge: 2rem;
	--fs-h-large: 1.5rem;
	--fs-h-medium: 1.25rem;
	--fs-h-small: 1rem;
	--fs-xlarge: 1.5rem;
	--fs-large: 1.25rem;
	--fs-medium: 1rem;
	--fs-small: .875rem;
	--fs-xsmall: .75rem;
	/* Line Height */
	--lh-large: 1.5;
	--lh-medium: 1.25;
	--lh-base: 1;
	/* Font Weight */
	--fw-bold: 600;
	--fw-normal: 400;
	/* Color */
	--c-main: #FFF;
	--c-alt: #EDEDED;
	--c-fade: #BBB;
	--c-link: #0193F4;
	--c-bord: #B1B1B1;
	--c-bord-alt: #445;
	--c-success: #23BC0D;
	--c-warning: #FA5145;
	--c-danger: #FEA43F;
	/* Background Color */
	--bc-page: #1F1F2B;
	--bc-main: #393949;
	--bc-alt: #31313E;
	--bc-hov: #515163;
	--bc-status: #005D89;
	--bc-status-alt: #00670F;
	--bc-status-alt2: #F68511;
	/* --bc-status-alt2: #FFA037; */
	/* Border Radius */
	--br-large: 1.25rem;
	--br-base: 1rem;
	--br-medium: .75rem;
	--br-small: .5rem;
	--br-xsmall: .25rem;
}
@media (max-width: 767px) {
	:root {
		/* Font Size */
		--fs-h-xlarge: 1.625rem;
		--fs-h-large: 1.25rem;
		--fs-h-medium: 1rem;
	}
	.mobile-hide {
		display: none !important;
	}
}

*,
*::before,
*::after {
	box-sizing: border-box;
}
html, * {
	scrollbar-width: auto;
	scrollbar-color: var(--bc-hov) transparent;
}
html {
	background-color: var(--bc-page);
	-webkit-text-size-adjust: 100%;
}
body {
	margin: 0;
	padding: 0;
	font-family: var(--ff-main);
	font-size: var(--fs-medium);
	line-height: var(--lh-medium);
	font-weight: var(--fw-normal);
	color: var(--c-main);
	background-color: var(--bc-page);
	text-align: left;
	hyphens: auto;
}
img, svg {
	max-width: 100%;
}
p, .p, ul, ol, dl,
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	margin: 1rem 0;
}
li, dt, dd {
	margin-top: .5rem;
	margin-bottom: .5rem;
}
h1, .h1 {
	font-size: var(--fs-h-xlarge);
	line-height: var(--lh-base);
	font-weight: var(--fw-bold);
}
h2, .h2 {
	font-size: var(--fs-h-large);
	line-height: var(--lh-base);
	font-weight: var(--fw-bold);
}
h3, .h3 {
	font-size: var(--fs-h-medium);
	line-height: var(--lh-base);
	font-weight: var(--fw-bold);
}
h4, .h4,
h5, .h5,
h6, .h6 {
	font-size: var(--fs-h-small);
	line-height: var(--lh-base);
	font-weight: var(--fw-bold);
}
strong {
	font-weight: var(--fw-bold);
}
a {
	color: var(--c-link);
	text-decoration: none;
}
hr {
	all: unset;
	display: block;
	height: 1px;
	margin: 1.25rem 0;
	background: var(--bc-hov);
}

::placeholder {
	color: var(--c-bord);
	opacity: 1;
}
label {
	display: inline-block;
	cursor: pointer;
}
input::-ms-reveal, input::-ms-clear {
	display: none;
}
input[type="date"] {
	color-scheme: dark;
}
:focus:not(:focus-visible) {
	outline: none;
	box-shadow: none;
}
:focus-visible {
	outline-color: var(--c-link);
}
input[type="date"] {
	min-height: 2.625rem;
	line-height: 1;
	text-align: left;
	-webkit-appearance: none;
}
input[type="date"]::-webkit-date-and-time-value {
	width: 100%;
	padding: 0;
	margin: 0;
	text-align: left;
}

button, .button,
input, select, textarea, .input,
input[type="file"]::file-selector-button {
	display: inline-block;
	padding: .625rem .75rem;
	border: 1px solid var(--c-bord-alt);
	border-radius: var(--br-small);
	font-family: var(--ff-main);
	font-size: var(--fs-medium);
	line-height: 1.25rem;
	color: var(--c-main);
	background: var(--bc-alt);
}
:where(.input, .button)._no-border {
	border-color: transparent;
}
:is(select, select.input):not([multiple]) {
	appearance: none;
	padding-right: calc(var(--fs-medium) * 2);
	background-image: url("/assets/images/icn-down.svg");
	background-repeat: no-repeat;
	background-position: right .25rem center;
	background-size: 1.25rem;
}
:is(select:open, select.input:open):not([multiple]) {
	background-image: url("/assets/images/icn-up.svg");
}
button, .button,
input[type="file"]::file-selector-button {
	font-weight: var(--fw-normal);
	text-decoration: none;
	text-align: center;
	cursor: pointer;
}
span.button {
	cursor: default;
}
button._alt, .button._alt,
input[type="file"]._alt::file-selector-button {
	/* border-color: var(--c-link); */
	background-color: var(--c-link);
}
button._alt0, .button._alt0 {
	border-color: transparent;
	background-color: transparent;
}

input:is([type="checkbox"], [type="radio"]) {
	appearance: none;
	position: relative;
	width: 1.25rem;
	height: 1.25rem;
	border-radius: .25rem;
	padding: 0;
	margin: -1px 0 0;
	vertical-align: middle;
	cursor: pointer;
	flex-shrink: 0;
}
input[type="radio"] {
	border-radius: 50%;
}
input:is([type="checkbox"], [type="radio"]):checked {
	border-color: var(--c-link);
	background-color: var(--c-link);
}
input[type="checkbox"]:checked {
	background: var(--c-link) url('data:image/svg+xml;utf8,<svg width="11" height="7" viewBox="0 0 11 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.34698 0.161182C9.58009 -0.0611487 9.94981 -0.0523764 10.1722 0.180713C10.3945 0.413822 10.3857 0.783545 10.1526 1.00591L4.03773 6.83924C3.8122 7.05424 3.45735 7.05372 3.23207 6.83843L0.180313 3.92176C-0.0525919 3.69918 -0.0609743 3.33029 0.161595 3.09738C0.384175 2.86447 0.753066 2.85609 0.985977 3.07866L3.63409 5.60959L9.34698 0.161182Z" fill="white"/></svg>') no-repeat 60% 50%;
}
input[type="radio"]:checked::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: white;
}
.input-switch,
input.input-switch {
	position: relative;
	display: inline-block;
	width: 2.75rem;
	height: 1.5rem;
	border-radius: 1rem;
	background: var(--bc-alt);
}
.input-switch::after,
input.input-switch::after {
	content: "";
	position: absolute;
	inset: .0625rem auto auto .0625rem;
	width: 1.25rem;
	height: 1.25rem;
	border-radius: 1rem;
	background: var(--c-alt);
}
.input-switch._checked,
input.input-switch:checked {
	background: var(--c-link);
}
.input-switch._checked::after,
input.input-switch:checked::after {
	inset: .0625rem .0625rem auto auto;
	background: white;
}

input:not([type="checkbox"], [type="radio"], button, .button), textarea, .input {
	width: 100%;
}

input[type="file"] {
	padding: 0;
	margin: 0;
	border: none;
}
input[type="file"].input-file-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	border: 0;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.input-warning {
	border-color: var(--c-warning);
}

:is(button, input, input[type="checkbox"], input[type="radio"], select, textarea):disabled {
	opacity: .5;
	cursor: default;
}
.disabled {
	opacity: .5;
	pointer-events: none;
	user-select: none;
}
.disabled-alt {
	pointer-events: none;
	user-select: none;
}

.input-password-wrap, .input-clear-wrap, .input-arr-wrap, .input-search-wrap {
	position: relative;
	display: block;
	width: 100%;
}
:where(.input-password-wrap, .input-clear-wrap, .input-arr-wrap, .input-search-wrap) :is([type="password"], [type="text"], [type="email"], [type="tel"], [type="url"], [type="search"], button, .input, .button) {
	padding-right: 2rem;
}
.input-clear-wrap.input-password-wrap :is([type="password"], [type="text"]),
.input-clear-wrap.input-arr-wrap :is([type="password"], [type="text"], [type="email"], [type="tel"], [type="url"], [type="search"], button, .input, .button),
.input-clear-wrap.input-search-wrap :is([type="password"], [type="text"], [type="email"], [type="tel"], [type="url"], [type="search"], .input) {
	padding-right: 4rem;
}

:is(.input-clear-wrap.input-password-wrap, .input-clear-wrap.input-arr-wrap, .input-clear-wrap.input-search-wrap) .input-clear-button {
	right: 2rem;
}

.input-clear-button,
.input-arr-button,
.input-icon-search {
	display: none;
	position: absolute;
	inset: 0 0 0 auto;
	width: 2rem;
	border: 0;
	padding: 0;
	background: transparent url('/assets/images/icn-close.svg') no-repeat 50% 50%;
	cursor: pointer;
}
.input-clear-active .input-clear-button {
	display: block;
}
.input-arr-button {
	display: block;
	background-image: url('/assets/images/icn-down.svg');
}
.popup-active .input-arr-button {
	transform: rotate(180deg);
}
.input-icon-search {
	display: block;
	background-image: url('/assets/images/icn-search.svg');
}
:is(input, button).input-password-toggle {
	position: absolute;
	inset: 0 0 0 auto;
	width: 2rem;
	border: 0;
	padding: 0;
	background: transparent url("/assets/images/icn-eye.svg") no-repeat 50% 50% / 1.25rem;
	cursor: pointer;
}
:is(input, button).input-password-toggle._text {
	background-image: url("/assets/images/icn-eyex.svg");
}

.icon-close {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	padding: 0;
	background: transparent url('/assets/images/icn-close.svg') no-repeat 50% 50% / 2rem;
}
.modal-popup > .icon-close {
	position: absolute;
	top: 0;
	right: .5rem;
	cursor: pointer;
}

.modal-popup:focus,
.modal-popup > .modal-body {
	outline: none;
}
.modal-popup {
	inset: 0 0 0 auto;
	margin: 0 0 0 auto;
	width: 35rem;
	max-height: 100dvh;
	height: 100dvh;
	padding: 1.5rem 1.25rem .5rem;
	border: none;
	border-radius: var(--br-base) 0 0 var(--br-base);
	color: var(--c-main);
	background: var(--bc-main);
}
.modal-popup::backdrop {
	background-color: rgb(0, 0, 0, .4);
	/* -webkit-backdrop-filter: blur(4px); */
	/* backdrop-filter: blur(4px); */
}
.modal-popup:open {
	display: flex;
	flex-direction: column;
}
.modal-popup > .modal-body {
	container-type: inline-size;
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	padding: 0 1.25rem;
	margin: 0 -1.25rem;
}
.modal-popup p {
	margin: .5rem 0;
}
.modal-popup .post-wrap,
.modal-popup .post {
	margin: .75rem 0;
}
@media (max-width: 767px) {
	body:has(dialog:modal) {
		overflow: hidden;
	}
	.modal-popup {
		inset: 0;
		margin: 0;
		width: 100dvw;
		max-width: 100dvw;
		padding: 2rem 1.25rem 0 1.25rem;
		border-radius: 0;
	}
}

.site-wrap {
	display: flex;
	min-height: 100svh;
}
.site-nav {
	z-index: 2000;
	position: sticky;
	top: 0;
	display: flex;
	max-height: 100dvh;
	flex-direction: column;
	width: 20.5rem;
	padding: 1rem 1rem 1.5rem;
}
.site-nav-head {
	display: flex;
	align-items: center;
	min-height: 4.5rem;
	hyphens: manual;
}
.site-nav-toggle {
	margin-left: auto;
	width: 2.5rem;
	height: 2.5rem;
	background: url("/assets/images/icn-dbl-arr-left.svg") no-repeat 50% 50%;
	cursor: pointer;
}
.site-nav ul {
	flex: 1;
	display: flex;
	gap: .5rem;
	flex-direction: column;
	padding: 0;
	list-style: none;
}
.site-nav li {
	position: relative;
	margin: 0;
	padding: 0;
}
li.site-nav-profile {
	margin-top: auto;
}
li.site-nav-profile .site-nav-a {
	padding: 0 .5rem;
	background: url("/assets/images/icn-dots.svg") no-repeat right -6px center;
}
.site-nav-profile .site-nav-a > div {
	width: 2rem;
	height: 2rem;
	border-radius: 2rem;
	background: no-repeat 50% 50% / cover;
}
.site-nav a {
	color: inherit;
}
.site-nav-a {
	display: flex;
	gap: .5rem;
	align-items: center;
	min-height: 2.75rem;
	padding: 0 1rem;
	border-radius: var(--br-small);
	cursor: pointer;
}
.site-nav-a > :where(svg, div) {
	flex-shrink: 0;
}
.site-nav-a > span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.site-nav-item-active .site-nav-a,
.site-nav-a:hover,
li.site-nav-profile.site-nav-popup-active .site-nav-a,
li.site-nav-profile .site-nav-a:hover {
	background-color: var(--bc-alt);
}
.site-nav strong {
	display: block;
	padding: .25rem .5rem;
	margin-left: auto;
	border-radius: 1rem;
	font-size: var(--fs-small);
	font-weight: var(--fw-normal);
	line-height: var(--lh-base);
	background: var(--c-warning);
}
.site-nav._collapsed {
	width: 5rem;
}
.site-nav._collapsed :where(.site-nav-head p, .site-nav-a > span) {
	display: none;
}
.site-nav._collapsed .site-nav-toggle {
	margin: 0 auto;
	transform: scaleX(-1);
}
.site-nav._collapsed strong {
	overflow: hidden;
	position: absolute;
	inset: .65rem .75rem auto auto;
	width: .5rem;
	height: .5rem;
	padding: 0;
	color: transparent;
}
.site-nav-popup {
	display: none;
	z-index: 200;
	position: absolute;
	inset: auto auto calc(100% + .25rem) 0;
	width: 100%;
	flex-direction: column;
	gap: .25rem;
	padding: .25rem;
	border-radius: var(--br-medium);
	background: var(--bc-alt);
	box-shadow: 0 0 .5rem rgb(0,0,0,.5);
	white-space: nowrap;
}
.site-nav-popup-active .site-nav-popup {
	display: flex;
}
.site-nav._collapsed .site-nav-popup {
	width: auto;
}
.site-nav._collapsed li.site-nav-profile .site-nav-a {
	background-image: none;
}
.site-nav-popup > a {
	padding: .75rem 2rem .75rem 2.5rem;
	border-radius: var(--br-small);
	background-position: .875rem 50%;
	background-size: 1rem;
}
.site-nav-popup > a:hover {
	background-color: var(--bc-hov);
}
@media (max-height: 479px) {
	.site-nav {
		position: relative;
	}
}
@media (max-width: 1199px) {
	.site-nav-head {
		visibility: hidden;
	}
	.site-nav {
		width: 5rem;
	}
	.site-nav :where(.site-nav-head p, .site-nav-a > span) {
		display: none;
	}
	.site-nav .site-nav-toggle {
		margin: 0 auto;
		transform: scaleX(-1);
	}
	.site-nav strong {
		overflow: hidden;
		position: absolute;
		inset: .65rem .75rem auto auto;
		width: .5rem;
		height: .5rem;
		padding: 0;
		color: transparent;
	}
	.site-nav-popup {
		width: auto;
	}
	.site-nav li.site-nav-profile .site-nav-a {
		background-image: none;
	}
}
@media (max-width: 767px) {
	.site-wrap {
		display: block;
		min-height: 0;
		padding-bottom: 4.5rem;
	}
	.site-nav {
		position: fixed;
		inset: auto 0 0;
		width: auto;
		height: 4.5rem;
		padding: 0;
		margin: 0;
		background: var(--bc-main);
	}
	.site-nav-head {
		display: none;
	}
	.site-nav ul {
		flex-direction: row;
		gap: 0;
		justify-content: space-evenly;
		padding: 0;
		margin: 0;
	}
	li.site-nav-profile {
		margin: 0;
	}
	.site-nav-item-active .site-nav-a,
	.site-nav-popup-active .site-nav-a,
	.site-nav-a:hover {
		background-color: transparent !important;
	}
	.site-nav-item-active .site-nav-a::before {
		content: "";
		position: absolute;
		inset: 0 0 auto;
		height: .125rem;
		border-radius: 0 0 1rem 1rem;
		background: var(--c-link);
	}
	.site-nav-item-active path,
	.site-nav-a:hover path {
		fill: var(--c-link);
	}
	.site-nav-popup {
		inset: auto 0 calc(100% + .25rem) auto;
	}
}
@media (max-width: 340px) {
	.site-nav li {
		flex: 1;
	}
	.site-nav li > a {
		justify-self: center;
	}
	.site-nav-a,
	li.site-nav-profile .site-nav-a {
		padding: 0;
	}
	.site-nav-popup {
		right: .25rem;
	}
}

.site-main {
	container-type: inline-size;
	position: relative;
	flex: 1;
	margin: 1.5rem 1.5rem 1.5rem 1rem;
	padding: 1.5rem;
	border-radius: var(--br-large);
	background-color: var(--bc-main);
}

.main-header {
	display: flex;
	gap: .5rem;
	align-items: center;
	margin: -.5rem -1.5rem 1.25rem;
	padding: 0 1.5rem 1rem;
	border-bottom: .125rem solid var(--c-bord-alt);
}
.main-header > div:first-child {
	flex: 1;
}
@media (max-width: 767px) {
	.site-main {
		margin: 1.25rem;
		padding: 0;
		border-radius: 0;
		background-color: var(--bc-page);
	}
	.main-header {
		flex-direction: column;
		gap: 1.25rem;
		align-items: stretch;
		padding: 0;
		margin: 0 0 1.25rem;
		border: none;
	}
	.main-header > div:first-child {
		padding: 1.25rem 1.25rem .25rem;
		margin: -1.25rem -1.25rem 0;
		background-color: var(--bc-main);
	}
}

.vert-scroll-wrap {
	overflow-y: auto;
}
.dropdown-popup {
	position: relative;
}
.dropdown-popup .vert-scroll-wrap {
	max-height: clamp(8rem, 20svh, 22rem);
	padding: 0 .875rem;
	margin: 0 -.875rem;
}
.dropdown-popup-body {
	display: none;
	position: absolute;
	inset: calc(100% + .5rem) auto auto -1rem;
	min-width: calc(100% + 2rem);
	max-width: 100svw;
	padding: .5rem 1rem;
	border-radius: var(--br-medium);
	background: var(--bc-main);
	box-shadow: 0 0 .5rem rgb(0, 0, 0, .25);
}
.dropdown-popup-body._drop-up {
	top: auto;
	bottom: calc(100% + .5rem);
}
.dropdown-popup-body._drop-left {
	left: auto;
	right: -1rem;
}
.popup-active > .dropdown-popup-body {
	display: block;
	z-index: 1000;
}

.input-list {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	row-gap: .25rem;
	margin: .25rem 0;
}
.input-list > * {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	min-height: 2.5rem;
}
.input-list label {
	display: flex;
	gap: .5rem;
}
.input-list :is(input:not([type="checkbox"], [type="radio"]), button:not(.icon-search), .input, .button:not(.icon-search)) {
	width: 100%;
}
.input-list hr {
	min-height: 1px;
	padding: 0;
	margin: 0;
	background: var(--bc-fade);
}

.ctag {
	position: relative;
	display: inline-block;
	min-width: 1rem;
	padding: 0 .125rem;
	margin: 0 .25rem;
	line-height: 1rem;
	text-decoration: none;
	text-align: center;
	font-size: var(--fs-small);
	font-weight: var(--fw-normal);
	color: var(--c-main);
}
.ctag > * {
	position: relative;
}
.ctag::before {
	content: "";
	position: absolute;
	inset: -.25rem;
	border-radius: var(--br-small);
	background-color: var(--bc-hov);
}
span + .ctag {
	margin-left: .75rem;
}

.content-toggle-target {
	display: none;
}
.content-toggle-target-active {
	display: block !important;
}

/*
.filter-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(11.1rem, 1fr));
	grid-auto-rows: 1fr;
	gap: .25rem;
}
.filter-grid > div:last-child {
	grid-column: 1 / -1;
}
*/
.filter-wrap .content-toggle {
	display: none;
}
.filter-wrap .content-toggle-target {
	display: block;
}
@container (max-width: 65rem) {
	.filter-wrap > div.content-toggle {
		display: block;
	}
	.filter-wrap > div.content-toggle-target {
		display: none;
	}
}
@media (max-width: 767px) {
	.filter-wrap > div:nth-child(2) {
		order: -1;
	}
}
.filter-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}
.filter-wrap > div:not(:first-child) {
	flex: 1;
	min-width: 14rem;
}
.filter-wrap > div:last-child {
	flex: 1 0 100%;
}

.filter-flex {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}
.filter-flex > div {
	flex: 1 0 0;
	min-width: 14rem;
	max-width: 34.3rem;
}
.filter-flex > div:last-child {
	flex: 0 0 auto;
	min-width: 0;
}

.paginator-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem 2rem;
	align-items: center;
	justify-content: center;
	font-size: var(--fs-small);
}
.paginator-wrap-side {
	margin-right: auto;
}
.paginator {
	display: flex;
	gap: .75rem;
	align-items: center;
	font-size: var(--fs-small);
}
.paginator select {
	padding-top: .375rem;
	padding-bottom: .375rem;
}
.paginator :where([type="text"], button, .input, .button) {
	padding: .375rem .75rem;
	font-size: var(--fs-small);
}
.paginator-pages {
	display: flex;
	gap: .25rem;
	min-height: 2.125rem;
	font-weight: var(--fw-normal);
}
.paginator-pages > :is(a, span, button) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.125rem;
	border: solid 1px var(--c-bord-alt);
	border-radius: var(--br-small);
	font-weight: var(--fw-normal);
	text-decoration: none;
	color: var(--c-main);
	background-color: var(--bc-main);
}
.paginator-pages > ._active {
	border: none;
	background: var(--c-link);
}
.paginator-pages > :is(.paginator-left, .paginator-right) {
	border: solid 1px var(--c-bord-alt);
	margin-right: .75rem;
	background: var(--bc-alt) url("/assets/images/icn-up.svg") no-repeat 50% 50% / 1.25rem;
	transform: rotate(-90deg);
}
.paginator-pages > .paginator-right {
	margin-right: 0;
	margin-left: .75rem;
	transform: rotate(90deg);
}
@media (max-width: 680px) {
	.paginator:has(.paginator-pages) {
		flex-grow: 1;
	}
	.paginator-pages {
		width: 100%;
	}
	.paginator-pages > .paginator-left {
		margin-right: auto;
	}
	.paginator-pages > .paginator-right {
		margin-left: auto;
	}
}

.plate {
	display: block;
	padding: .5rem 1rem;
	border-radius: var(--br-medium);
	background-color: var(--bc-alt);
}
.plate + .plate {
	margin-top: .5rem;
}
a.plate {
	color: inherit;
}

.plates {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}
.plates._three-cols {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.plates._small {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}
@container (max-width: 65rem) {
	.plates {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	.plates._three-cols {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	.plates._small {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: .625rem;
	}
	.flex-item-special-width,
	.flex-item-special-width + div {
		flex: 1 0 100% !important;
	}
}
.plates > div {
	padding: .625rem 1.25rem;
	border-radius: var(--br-medium);
	background-color: var(--bc-alt);
}
.plate .plates > div,
.plate .plate {
	background-color: var(--bc-main);
}
.plate:has(.plate) {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
@media (max-width: 767px) {
	.plate:has(.plates),
	.plate:has(.plate) {
		padding: 0;
		background-color: transparent;
	}
}

.block {
	position: relative;
	display: block;
	padding: .25rem .75rem;
	border-radius: var(--br-medium);
}
.block._padded {
	padding: .5rem 1rem;
}
.block._bgr {
	background-color: var(--bc-main);
}
a.block {
	color: inherit;
}
a.block:hover {
	background-color: var(--bc-hov);
}
.block :where(p, .flex-items) {
	margin: .5rem 0;
}
.block:has(.block-date) {
	min-height: 4rem;
	padding-left: 4.75rem;
}
.block-date {
	position: absolute;
	inset: 50% auto auto .25rem;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: var(--br-small);
	text-align: center;
	font-size: var(--fs-xsmall);
	background-color: var(--bc-hov);
	transform: translateY(-50%);
}
.block-date strong {
	display: block;
	padding: .8rem 0 0;
	font-size: var(--fs-medium);
}

.flex-items {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	align-items: center;
}
.flex-items._nowrap {
	flex-wrap: nowrap;
}
.flex-items._column {
	flex-direction: column;
	align-items: stretch;
}
.flex-items._gap-small {
	gap: .25rem;
}
.flex-items._gap-large {
	gap: 1.25rem;
}
.flex-items._row-gap-small {
	row-gap: 1px;
}
.flex-items._align-items-stretch {
	align-items: stretch;
}
.flex-items._justify-content-center {
	justify-content: center;
}
.flex-first-item-push > *:first-child,
.flex-grow {
	flex: 1;
}
.flex-last-item-push > *:last-child,
.flex-grow {
	margin-left: auto;
}

.grid-for-bar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 2.5rem;
	gap: .5rem;
	align-items: center;
}
.bar {
	overflow: hidden;
	position: relative;
	height: .5rem;
	border-radius: 1rem;
	background-color: var(--c-bord);
}
.bar > div:first-child {
	position: absolute;
	inset: 0 auto 0 0;
	height: .5rem;
	background-color: var(--c-success);
}
.bar > div:last-child {
	position: absolute;
	inset: 0 0 0 auto;
	height: .5rem;
	background-color: var(--c-success);
}
.bar._warning > div:first-child {
	background-color: var(--c-warning);
}
.bar._danger > div:first-child {
	background-color: var(--c-danger);
}
.bar._warning2 > div:last-child {
	background-color: var(--c-warning);
}
.bar._danger2 > div:last-child {
	background-color: var(--c-danger);
}

.button-group {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: 1fr;
	gap: .25rem;
	align-items: center;
	padding: 2px;
	border: 1px solid var(--c-bord-alt);
	border-radius: var(--br-medium);
}
.button-group :where(button, .button){
	width: 100%;
}

.text-nowrap {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

a.with-icon,
span.with-icon {
	display: inline-block;
}
.with-icon {
	padding-left: 1.5rem;
	background-image: url("/assets/images/icn-inf.svg");
	background-repeat: no-repeat;
	background-position: 0 50%;
	background-size: auto 1rem;
}
.with-icon._icon-right {
	padding-left: 0;
	padding-right: 1.5rem;
	background-position: 100% 50%;
}
a.with-icon:empty,
span.with-icon:empty {
	min-height: 1lh;
	padding-left: 1lh;
	vertical-align: middle;
	background-position: 50%;
}

.auth-page {
	display: flex;
	align-items: center;
	min-height: 100dvh;
	padding: 1rem .5rem;
	background: url("/assets/images/auth-bg.jpg") no-repeat 50% 50% / cover;
}
.auth-page main {
	width: 32rem;
	padding: 1rem 2rem .5rem;
	margin: 0 auto;
	border-radius: var(--br-large);
	background: var(--bc-main);
}
@media (max-width: 767px) {
	.auth-page main {
		padding: .75rem 1rem .25rem;
	}
}

.tag {
	display: inline-block;
	padding: .25rem .5rem;
	border-radius: var(--br-small);
	font-size: var(--fs-xsmall);
	color: var(--c-main);
	background-color: var(--bc-hov);
}

.status {
	display: inline-block;
	padding: .3125rem .5rem;
	border-radius: var(--br-xsmall);
	font-size: var(--fs-small);
	font-weight: var(--fw-normal);
	color: var(--c-main);
	background-color: var(--bc-status);
}
.main-header .status {
	margin: 0 .125rem;
	vertical-align: middle;
}
@media (max-width: 767px) {
	.main-header .status {
		font-size: var(--fs-xsmall);
	}
}

.post {
	position: relative;
	display: grid;
	grid-template-columns: 2fr 1fr 8rem 14rem;
	grid-template-rows: repeat(2, auto);
	grid-template-areas:
	"body1 info1 meta1 stat"
	"body2 info2 meta2 stat";
	gap: .5rem 1rem;
	margin: .75rem 0;
	padding: .75rem 2.5rem .75rem 1.25rem;
	border-radius: var(--br-medium);
	background-color: var(--bc-alt);
	font-size: var(--fs-small);
	cursor: default;
}
.post._without-stats {
	grid-template-areas:
	"body1 info1 meta2 meta2"
	"body2 info2 info2 info2";
}
.post._without-tags._without-stats {
	grid-template-areas:
	"body1 info1 meta2 meta2"
	"body2 body2 empty empty";
}
.post-body-head {
	grid-area: body1;
}
.post-body-text {
	grid-area: body2;
}
.post-info-head {
	grid-area: info1;
}
.post-info-tags {
	grid-area: info2;
}
.post-meta-head {
	grid-area: meta1;
}
.post-meta-date {
	grid-area: meta2;
}
.post-stat {
	grid-area: stat;
}
.post a {
	color: inherit;
}
.post p {
	margin: 0 0 .5rem;
}
.post p:last-child {
	margin-bottom: 0;
}
.post-body-head::before {
	content: "";
	position: absolute;
	inset: 1rem auto 1rem .75rem;
	width: .25rem;
	border-radius: 1rem;
	background: var(--c-bord);
}
.post._success .post-body-head::before {
	background: var(--c-success);
}
.post._warning .post-body-head::before {
	background: var(--c-warning);
}
.post-body-head,
.post-body-text {
	padding-left: .5rem;
}
.post-body-head,
.post-info-head,
.post-meta-head {
	align-self: center;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: var(--fs-medium);
}
/* .post-meta-head-link {
	pointer-events: none;
} */
.post-info-tags .flex-items {
	gap: .25rem;
}
.post-meta-date {
	font-size: var(--fs-xsmall);
	color: var(--c-fade);
}
.post-meta-date > span:first-child:has( + .post-meta-time) {
	margin-right: .5rem;
}
.post-stat-grid {
	display: grid;
	gap: .5rem 1rem;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
}
.post-stat-grid._auto-fill {
	grid-template-columns: repeat(4, max-content);
	gap: 1rem;
}
.post-stat-1, .post-stat-2, .post-stat-3, .post-stat-4 {
	display: inline-block;
	min-height: 1.25rem;
	padding: 0 0 0 1.5rem;
	background: url("/assets/images/icn-stat-1.svg") no-repeat 0 50%;
}
.post-stat-2 {
	background-image: url("/assets/images/icn-stat-2.svg");
}
.post-stat-3 {
	background-image: url("/assets/images/icn-stat-3.svg");
}
.post-stat-4 {
	background-image: url("/assets/images/icn-stat-4.svg");
}
.post-stat-desc {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: var(--fs-xsmall);
	color: var(--c-fade);
}
.post-wrap {
	margin: .75rem 0;
	border-radius: var(--br-medium);
	background-color: var(--bc-alt);
}
.post-wrap .post:not(:first-child) {
	display: none;
}
.post-wrap._open {
	border-bottom: 1px solid var(--bc-hov);
}
.post-wrap._open .post:not(:first-child) {
	display: grid;
}
.post-wrap .post:not(:first-child) .post-meta-head {
	display: none;
}
/* .post-wrap .post:not(:first-child) .post-meta-date {
	grid-area: meta1;
} */
.post-wrap .post:not(:first-child) .post-body-head::before {
	left: 1.75rem;
}
.post-wrap .post:not(:first-child, :last-child) {
	border-bottom: 1px solid var(--bc-hov);
	border-radius: 0;
}
.post-wrap .post:not(:first-child) :where(.post-body-head, .post-body-text) {
	padding-left: 1.5rem;
}
.post-wrap._open .post:first-child {
	background-color: var(--bc-hov);
}
.post-wrap._open .tag {
	background-color: var(--bc-main);
}
.post-wrap._open .post-wrap-toggle {
	transform: rotate(180deg);
}
.post-wrap-toggle {
	position: absolute;
	inset: .25rem .25rem auto auto;
	width: 2rem;
	height: 2rem;
	background: url("/assets/images/icn-down.svg") no-repeat 50% 50%;
	cursor: pointer;
}
@container (max-width: 77rem) {
	.post {
		grid-template-columns: 4fr 2fr 1fr 1fr;
		grid-template-areas:
			"body1 info1 meta2 meta1"
			"body2 info2 stat stat";
	}
	.post._without-stats {
		grid-template-areas:
		"body1 info1 meta2 meta2"
		"body2 info2 info2 info2";
	}
	.post._without-tags._without-stats {
		grid-template-areas:
		"body1 info1 meta2 meta2"
		"body2 body2 body2 empty";
	}
	/* .post-wrap .post:not(:first-child) .post-meta-date {
		grid-area: meta2;
	} */
	.post-meta-date {
		align-self: center;
	}
	.post-stat-grid {
		padding-top: .5rem;
		border-top: 1px dotted var(--c-bord-alt);
	}
}
@container (max-width: 65rem) {
	.post {
		grid-template-columns: 3fr 3fr 1fr;
		grid-template-rows: min-content min-content 1fr;
		grid-template-areas:
			"body1 info1 meta1"
			"body2 info2 meta2"
			"body2 stat stat";
	}
	.post._without-stats {
		grid-template-areas:
			"body1 info1 meta2"
			"body2 info2 info2"
			"body2 info2 info2";
	}
	.post._without-tags._without-stats {
		grid-template-areas:
			"body1 info1 meta2"
			"body2 body2 body2";
	}
	/* .post-wrap .post:not(:first-child) .post-meta-date {
		grid-area: meta1;
	} */
	.post-meta-date {
		align-self: stretch;
	}
	.post-stat-grid {
		align-self: start;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		grid-template-rows: 1fr;
	}
}
/* @media (max-width: 767px) { */
@container (max-width: 48rem) {
	.post {
		grid-template-columns: 1fr 1fr;
		/* grid-template-rows: repeat(6, auto); */
		grid-template-areas:
			"body1 body1"
			"info1 meta2"
			"body2 body2"
			"info2 info2"
			"stat stat"
			"meta1 meta1";
		gap: 1rem;
		padding: 1rem 1.25rem;
		margin: 1.25rem 0;
	}
	.post._without-stats {
		grid-template-areas:
			"body1 body1"
			"info1 meta2"
			"body2 body2"
			"info2 info2";
	}
	.post._without-tags._without-stats {
		grid-template-areas:
			"body1 body1"
			"info1 meta2"
			"body2 body2";
	}
	.post-body-head {
		overflow: visible;
		white-space: normal;
	}
	.post-body-head::before {
		position: static;
		display: inline-block;
		width: .75rem;
		height: .75rem;
		margin-right: .5rem;
	}
	:is(.post-wrap .post, .post) :is(.post-body-head, .post-body-text) {
		padding-left: 0;
	}
	/* .post-wrap .post:not(:first-child) .post-meta-date {
		grid-area: meta2;
	} */
	.post-meta-head {
		overflow: visible;
		white-space: normal;
		padding-right: 1.5rem;
	}
	a.post-meta-head-link {
		pointer-events: auto;
		color: var(--c-link);
	}
	a.post-meta-head-link::before {
		content: "Открыть";
		margin-right: .3em;
	}
	.post-meta-date {
		justify-self: end;
		align-self: center;
	}
	.post-info-tags {
		padding-top: 1rem;
		border-top: 1px dotted var(--c-bord-alt);
	}
	.post-info-tags:empty,
	.post-stat:empty {
		padding: 0;
	}
	.post-stat-grid {
		grid-template-columns: repeat(4, auto);
		gap: .25rem;
		padding-top: 0;
		border-top: none;
	}
	.post-stat-desc {
		display: none;
	}
	.post-wrap-toggle {
		inset: auto .25rem .5rem auto;
	}
}
/* @media (max-width: 319px) { */
@container (max-width: 17.5rem) {
	.post-stat-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr 1fr;
		gap: .75rem;
	}
}

.grid-header {
	display: grid;
	margin-bottom: .5rem;
	border-radius: var(--br-small);
	background-color: var(--bc-hov);
	font-size: var(--fs-small);
}

.card-header,
.card {
	/* grid-template-columns: 7rem 8rem 7rem 1fr 1fr 6rem; */
	grid-template-columns: repeat(6, 1fr);
}
.card-header > div,
.card > div {
	padding: .75rem .25rem .75rem .75rem;
}
.card-wrap {
	border: 1px solid var(--bc-hov);
	border-radius: var(--br-small);
}
.card:not(:first-child) {
	border-top: 1px solid var(--bc-hov);
}
.card {
	display: grid;
}
.card a {
	color: inherit;
}
.card-tone {
	color: var(--c-bord);
}
.card-tone > * {
	display: inline-block;
}
.card._success .card-tone {
	color: var(--c-success);
}
.card._warning .card-tone {
	color: var(--c-warning);
}
.card-tone-name {
	font-size: var(--fs-xsmall);
}
.card-id-name {
	display: none;
}
.card-cmnt-name {
	display: none;
}
.card-tags .flex-items {
	gap: .25rem;
}
/* .card-tags .flex-items > *:not(:first-child) {
	display: none;
} */
.card-src-name {
	display: none;
}
@container (max-width: 48rem) {
	/* .card-header,
	.card {
		grid-template-columns: repeat(3, 1fr);
	} */
	.card {
		padding: 1rem 1.25rem;
		margin: 1.25rem 0;
		border: none !important;
		border-radius: var(--br-medium);
		background-color: var(--bc-alt);
	}
	/* .card-header > div, */
	.card > div {
		padding: 0;
	}
	.card-wrap {
		border: none;
		border-radius: 0;
	}
	.card {
		display: grid;
		grid-template-areas:
			"id id id geo geo geo"
			"src src cmnt cmnt tone tone"
			"tags tags tags tags tags tags";
		gap: 1rem .5rem;
	}
	.card-id {
		grid-area: id;
	}
	.card-geo {
		grid-area: geo;
		justify-self: end;
		text-align: right;
	}
	.card-src {
		grid-area: src;
	}
	.card-cmnt {
		grid-area: cmnt;
	}
	.card-tone {
		grid-area: tone;
	}
	.card-tags {
		grid-area: tags;
	}
	.card-tone > * {
		display: block;
	}
	.card-id > *::before {
		content: "";
		display: inline-block;
		width: .75rem;
		height: .75rem;
		margin-right: .5rem;
		border-radius: 1rem;
		background: var(--c-bord);
	}
	.card._success .card-id > *::before {
		background: var(--c-success);
	}
	.card._warning .card-id > *::before {
		background: var(--c-warning);
	}
	.card .card-tags .flex-items > * {
		display: block;
	}
	.card-id,
	.card-cmnt-numb,
	.card-tone-numb {
		font-weight: var(--fw-bold);
	}
	.card-cmnt-name,
	.card-src-name {
		display: block;
		font-size: var(--fs-xsmall);
		color: var(--c-fade);
	}
	.card-src-icn {
		max-height: 1lh;
	}
}

.card-mini-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
.card-mini {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem .5rem;
	min-width: 10rem;
	max-width: 50%;
	padding: 1rem 1.25rem;
	border-radius: var(--br-medium);
	background-color: var(--bc-alt);
	font-size: var(--fs-small);
}
.card-mini > * {
	flex: 1 0 100%;
}
.card-mini a {
	color: inherit;
}
.card-mini-id {
	overflow: hidden;
	font-weight: var(--fw-bold);
}
.card-mini-id > * {
	display: block !important;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.card-mini-cmnt,
.card-mini-tone {
	flex-basis: max(5.5rem, 40%);
}
.card-mini-cmnt-numb,
.card-mini-tone-numb {
	font-size: var(--fs-xlarge);
}
.card-mini-cmnt-name,
.card-mini-tone-name {
	font-size: var(--fs-xsmall);
	color: var(--c-fade);
}
.card-mini-geo > * {
	display: block;
	padding-left: 1.25rem;
	background: url("/assets/images/icn-geo.svg") no-repeat 0 50%;
}
@container (max-width: 65rem) {
	.card-mini-wrap {
		gap: .5rem;
	}
	.card-mini {
		gap: .5rem;
		padding: 1rem .5rem;
		font-size: var(--fs-xsmall);
	}
	.card-mini-cmnt,
	.card-mini-tone {
		flex-basis: 100%;
	}
	.card-mini-cmnt-numb,
	.card-mini-tone-numb {
		display: inline-block;
		font-size: var(--fs-medium);
	}
	.card-mini-cmnt-name,
	.card-mini-tone-name {
		display: inline-block;
	}
	.card-mini-cmnt {
		order: 3;
	}
	.card-mini-tone {
		order: 4;
	}
	.card-mini-geo {
		order: 2;
		padding: .5rem 0 1rem;
		border-bottom: 1px dotted var(--c-bord-alt);
	}
}
@media (max-width: 767px) {
	.mobile-hor-scroll {
		display: flex;
		overflow-x: auto;
		padding: 0 1.25rem .75rem;
		margin: 0 -1.25rem -.75rem;
	}
	.mobile-hor-scroll::after {
		content: "";
	}
	.card-mini-wrap {
		flex-wrap: nowrap;
		gap: 1rem;
	}
	.card-mini {
		gap: 1rem;
		padding: 1rem 1.25rem;
	}
}

.notif {
	display: block;
	position: relative;
	margin: .75rem 0;
	padding: .25rem .75rem .25rem 1.75rem;
	border-radius: var(--br-medium);
	color: var(--c-main);
	background-color: var(--bc-alt);
}
.notif::before {
	content: "";
	position: absolute;
	inset: .75rem auto .75rem .75rem;
	width: .25rem;
	border-radius: 1rem;
	background: var(--c-link);
}
.notif p {
	margin: .5rem 0;
}
.notif._off {
	color: var(--c-bord);
}
.notif._off::before {
	background: var(--c-bord);
}
a.notif:hover {
	background-color: var(--bc-hov);
}
@media (max-width: 767px) {
	.notif {
		padding-left: 1rem;
		padding-right: 1.75rem;
	}
	.notif::before {
		inset: 1.125rem .75rem auto auto;
		width: .625rem;
		height: .625rem;
	}
}

.reg-header,
.reg {
	grid-template-columns: 1fr 1fr 2fr minmax(6.5rem, 1fr) 2fr 2fr minmax(7rem, 1fr);
}
.reg-header > div,
.reg > div {
	padding: .75rem .25rem .75rem .75rem;
}
.reg-header > div:last-child,
.reg > div:last-child {
	text-align: center;
}
.reg-wrap {
	overflow: hidden;
	border: 1px solid var(--bc-hov);
	border-radius: var(--br-small);
}
.reg:not(:first-child) {
	border-top: 1px solid var(--bc-hov);
}
.reg-head {
	grid-column: 1 / -1;
	padding: .75rem .25rem .75rem .75rem;
	background-color: var(--bc-page);
}
.reg {
	display: grid;
	cursor: pointer;
}
.reg a {
	color: inherit;
}
.reg-obj {
	grid-column: span 2;
}
.reg-obj > div {
	display: grid;
	grid-template-columns: 4fr 1fr;
	gap: .5rem;
}
.reg-obj > div + div {
	margin-top: .25rem;
}
.reg-obj > div > div:first-child::before {
	content: "\2022";
	position: relative;
	left: -1px;
	margin-right: .25rem;
	color: var(--c-fade);
}
.reg-obj > div > div:last-child {
	text-align: right;
}
@container (max-width: 48rem) {
	.reg-header,
	.reg-head,
	.reg-num {
		display: none;
	}
	.reg {
		padding: 1rem 1.25rem;
		margin: 1.25rem 0;
		border: none !important;
		border-radius: var(--br-medium);
		background-color: var(--bc-alt);
	}
	.reg > div {
		padding: 0;
	}
	.reg-wrap {
		border: none;
		border-radius: 0;
	}
	.reg {
		grid-template-areas:
			"num2 geo date status"
			"obj obj obj obj";
		grid-template-columns: min-content 1fr min-content min-content;
		gap: .5rem;
	}
	.reg-num2 {
		grid-area: num2;
	}
	.reg-geo {
		grid-area: geo;
	}
	.reg-date {
		grid-area: date;
	}
	.reg-status {
		grid-area: status;
	}
	.reg-obj {
		grid-area: obj;
	}
	.reg-num2::before {
		content: "№";
		margin-right: .1rem;
		color: var(--c-fade);
	}
	.reg-date {
		text-align: right;
	}
	.reg-status .status {
		overflow: hidden;
		width: .625rem;
		height: .625rem;
		padding: 0;
		border-radius: 1rem;
		color: transparent;
	}
	.reg-obj > div {
		grid-template-columns: 3fr minmax(4.5rem, 1fr);
	}
	.reg-obj > div > div:last-child:not(:empty)::after {
		content: "тысяч";
		margin-left: .3rem;
		font-size: var(--fs-xsmall);
		color: var(--c-fade);
	}
}
@media (max-width: 440px) {
	.reg {
		font-size: var(--fs-small);
	}
	.reg-obj > div > div:last-child:not(:empty)::after {
		content: "тыс.";
	}
}

.prevevent-header,
.prevevent {
	grid-template-columns: 6.5rem 1fr 2fr;
}
.prevevent-header > div,
.prevevent > div {
	padding: .75rem .25rem .75rem .75rem;
}
.prevevent-wrap {
	overflow: hidden;
	border: 1px solid var(--bc-hov);
	border-radius: var(--br-small);
}
.prevevent:not(:first-child) {
	border-top: 1px solid var(--bc-hov);
}
.prevevent {
	display: grid;
	cursor: pointer;
	color: inherit;
}
.prevevent a {
	color: inherit;
}
@container (max-width: 48rem) {
	.prevevent-header {
		display: none;
	}
	.prevevent {
		padding: 1rem 1.25rem;
		margin: 0 0 1.25rem;
		border: none !important;
		border-radius: var(--br-medium);
		font-size: var(--fs-small);
		background-color: var(--bc-alt);
	}
	.prevevent > div {
		padding: 0;
	}
	.prevevent-wrap {
		border: none;
		border-radius: 0;
	}
	.prevevent {
		grid-template-areas:
			"date obj"
			"comm comm";
		grid-template-columns: min-content 1fr;
		gap: 1rem;
	}
	.prevevent-date {
		grid-area: date;
	}
	.prevevent-obj {
		grid-area: obj;
	}
	.prevevent-comm {
		grid-area: comm;
	}
}

.user-header,
.user {
	grid-template-columns: 3fr 2fr minmax(9rem, 1fr) 8rem;
}
.user-header > div,
.user > div {
	padding: .75rem .5rem .75rem .75rem;
}
.user-wrap {
	overflow: hidden;
	border: 1px solid var(--bc-hov);
	border-radius: var(--br-small);
}
.user:not(:first-child) {
	border-top: 1px solid var(--bc-hov);
}
.user {
	display: grid;
	grid-auto-rows: minmax(1.75rem, auto);
	align-items: center;
	color: inherit;
}
.user a {
	color: inherit;
}
.user .user-email {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding-left: 1.375rem;
	background: url("/assets/images/icn-email.svg") no-repeat 0 55%;
}
.user .user-tel {
	padding-left: 1.375rem;
	background: url("/assets/images/icn-phone.svg") no-repeat 0 50%;
}
.user-ctrl {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	align-items: center;
	justify-items: end;
	gap: .25rem;
}
.user-ctrl-edit button,
.user-ctrl-del button {
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	border: none;
	background: url("/assets/images/icn-edit.svg") no-repeat 50% 50%;
}
.user-ctrl-del button {
	background-image: url("/assets/images/icn-del.svg");
}
@container (max-width: 48rem) {
	.user-header {
		display: none;
	}
	.user {
		padding: .75rem 1.25rem;
		margin: 0 0 1.25rem;
		border: none !important;
		border-radius: var(--br-medium);
		background-color: var(--bc-alt);
	}
	.user > div {
		padding: 0;
	}
	.user-wrap {
		border: none;
		border-radius: 0;
	}
	.user {
		grid-template-areas:
			"name name"
			"email email"
			"tel ctrl";
		grid-template-columns: 1fr 8rem;
		gap: .25rem;
	}
	.user-name {
		grid-area: name;
	}
	.user-email {
		grid-area: email;
	}
	.user-tel {
		grid-area: tel;
	}
	.user-ctrl {
		grid-area: ctrl;
	}
	.user .user-email {
		background-position: 0 65%;
	}
}

.profile {
	display: grid;
	grid-template-columns: minmax(13.5rem, 1fr) 2fr 2fr;
	gap: 1.25rem;
}
.profile > div {
	padding: .5rem 1rem;
	border-radius: var(--br-medium);
	background-color: var(--bc-alt);
}
.profile-picture {
	max-width: 10rem;
	margin: 1rem auto;
}
.profile-picture > div {
	display: block;
	padding-bottom: 100%;
	border-radius: 50%;
	background: var(--bc-page) no-repeat 50% 50% / cover;
}
@container (max-width: 65rem) {
	.profile {
		grid-template-columns: minmax(13.5rem, 1fr) 2fr;
		grid-template-areas:
			"data data"
			"photo pass";
	}
	.profile-photo {
		grid-area: photo;
	}
	.profile-data {
		grid-area: data;
	}
	.profile-pass {
		grid-area: pass;
	}
}
@media (max-width: 767px) {
	.profile {
		grid-template-columns: 1fr;
		grid-template-areas: none;
	}
	.profile > div {
		grid-area: auto;
	}
}

.event-props {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin-top: .5rem;
}
.event-props > div {
	padding: .25rem 1.25rem .5rem;
	border-radius: var(--br-medium);
	background: var(--bc-alt);
}
.event-props-main {
	flex: 1 0 30%;
	min-width: 18rem;
}
.event-props-side {
	flex: 2 0 60%;
}
.event-props :where(p, ol, ul, li) {
	margin: .25rem 0;
}
.event-props .flex-items {
	margin-top: .5rem;
}
.event-props-name {
	margin-top: 1rem;
	font-size: var(--fs-small);
	color: var(--c-fade);
}
@media (max-width: 767px) {
	.event-props {
		display: block;
		margin-top: -.5rem;
	}
	.event-props > div {
		flex: 1 0 100%;
		min-width: 0;
		padding: 0;
		background: transparent;
	}
	.event-props-name {
		margin-top: 1.5rem;
	}
}

.info-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
.info-wrap > div {
	flex: 1 0 calc((100% - 2rem) / 3);
	min-width: 17.5rem;
}
@media (max-width: 767px) {
	.info-wrap {
		flex-wrap: nowrap;
	}
	.info-wrap > div {
		min-width: 20rem;
	}
}
.info {
	padding: 1rem 1.25rem;
	border-radius: var(--br-medium);
	background-color: var(--bc-alt);
}
.info a {
	color: inherit;
}
.info-head {
	display: flex;
	align-items: baseline;
	gap: .5rem;
}
.info-head-name {
	font-size: var(--fs-h-medium);
	font-weight: var(--fw-bold);
}
.info-head-desc {
	margin-left: auto;
	font-size: var(--fs-xsmall);
	font-weight: var(--fw-bold);
	color: var(--c-fade);
}
.info-head + .info-grid {
	margin-top: 1rem;
}
.info-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: .5rem;
	margin: .25rem 0;
}
.info-grid-data {
	min-height: 1.75rem;
	text-align: right;
}
.info-grid-data-desc {
	font-size: var(--fs-xsmall);
	color: var(--c-fade);
}

.labl::before {
	content: "";
	display: inline-block;
	width: .75rem;
	height: .75rem;
	margin-right: .5rem;
	border-radius: 1rem;
	background: var(--c-bord);
}
.labl._success::before {
	background: var(--c-success);
}
.labl._warning::before {
	background: var(--c-warning);
}
.labl._status::before {
	background: var(--bc-status);
}
.labl._status-alt::before {
	background: var(--bc-status-alt);
}
.labl._status-alt2::before {
	background: var(--bc-status-alt2);
}

.more {
	display: none;
}
.more:has(+ .more-button._shown) {
	display: block;
}
.more-button {
	position: relative;
	display: inline-block;
	padding-left: 1.25rem;
	white-space: nowrap;
	color: var(--c-link);
	cursor: pointer;
}
.more-button::before {
	content: "";
	position: absolute;
	inset: 0 auto 0 0;
	width: 1.25rem;
	background: url("/assets/images/icn-down-blue.svg") no-repeat 0 50% / 1.25rem;
}
.more-button._shown::before {
	transform: rotate(180deg);
}
.more-button::after {
	content: "Развернуть";
}
.more-button._shown::after {
	content: "Свернуть";
}
.post .more-button._shown {
	margin-top: .5rem;
}

.sorting {
	display: inline-block;
	padding-right: 24px;
	background: url("/assets/images/icn-sort.svg") no-repeat 100% 50% / 20px;
}
.sorting._up {
	background-image: url("/assets/images/icn-sort-up.svg");
}
.sorting._down {
	background-image: url("/assets/images/icn-sort-down.svg");
}
.sorting._pointer {
	cursor: pointer;
}

.cal-wrap {
	padding: .5rem;
	border-radius: var(--br-medium);
	font-size: var(--fs-small);
	background-color: var(--bc-alt);
}
.cal {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	grid-template-rows: auto;
	grid-auto-rows: 1fr;
	gap: .5rem;
}
.cal > div:not(.cal-weekday) {
	min-height: 5rem;
	padding: .375rem;
	border-radius: var(--br-small);
	background-color: var(--bc-main);
}
.cal-weekday {
	padding: .5rem;
	text-align: center;
}
.cal > div:not(.cal-weekday):hover {
	background-color: var(--bc-hov);
	cursor: pointer;
}
.cal-month-other {
	opacity: .4;
}
.cal-today .cal-d {
	color: var(--bc-status-alt2);
}
.cal-d {
	padding: 0 .375rem .375rem;
}
.cal-w {
	display: flex;
	flex-direction: column;
	gap: .25rem;
	font-size: var(--fs-xsmall);
}
.cal-w > div {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding: .25rem .375rem;
	border-radius: var(--br-xsmall);
	color: var(--c-main);
	background-color: var(--bc-status);
}
.cal-footer {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding: 1rem .75rem .5rem;
}
.cal-footer > div:last-child {
	margin-left: auto;
}
.cal-footer .labl::before {
	width: .625rem;
	height: .625rem;
	margin-right: .375rem;
}
@media (max-width: 767px) {
	.cal-wrap {
		overflow: hidden;
		padding: 0;
		border: solid 1px var(--c-bord-alt);
		border-radius: var(--br-small);
		background-color: transparent;
	}
	.cal {
		gap: 0;
		/* border-bottom: solid 1px var(--c-bord-alt); */
	}
	.cal-weekday {
		font-size: var(--fs-xsmall);
		background-color: var(--bc-alt);
	}
	.cal > div:not(.cal-weekday) {
		min-height: 0;
		padding-bottom: .5rem;
		border-top: solid 1px var(--c-bord-alt);
		border-radius: 0;
		background-color: transparent;
	}
	.cal-month-other {
		opacity: 1;
	}
	.cal-month-other > * {
		opacity: .4;
	}
	.cal-d {
		padding-bottom: .25rem;
		text-align: center;
	}
	.cal-w {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}
	.cal-w > div {
		width: .375rem;
		height: .375rem;
		padding: 0;
		border-radius: 1rem;
		color: transparent;
	}
	.cal-footer {
		display: none;
	}
	.cal-footer > div:last-child {
		margin-left: 0;
	}
}

.modal-popup.cal-popup {
	position: fixed;
	inset: 50% 2rem auto;
	transform: translateY(-50%);
	margin: auto;
	width: 30rem;
	height: auto;
	max-height: 80svh;
	padding: 2rem 1.5rem 1.5rem;
	border: none;
	border-radius: var(--br-base);
	color: var(--c-main);
	background: var(--bc-main);
	box-shadow: 0 0 1rem rgb(0, 0, 0, .5);
}
.cal-popup *:focus {
	outline: none;
	box-shadow: none;
}
.cal-popup a {
	color: inherit;
}
.cal-popup ul {
	padding-left: 1.25rem;
}
.modal-popup.cal-popup > .icon-close {
	top: .5rem;
	right: .5rem;
}
.switching-tabs-on-mobile {
	display: none;
}
.wrapper-for-switching-tabs-on-mobile {
	margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
	.modal-popup.cal-popup {
		position: relative;
		inset: auto;
		transform: none;
		width: auto;
		padding: .5rem 0 0;
		margin: 0;
		background-color: transparent;
		box-shadow: none;
	}
	.modal-popup.cal-popup > .icon-close {
		right: -.5rem;
	}
	.cal-month-year-select > div {
		flex: 1;
	}
	.pre-cal-add-event {
		display: none;
		/* text-align: center; */
	}
	.switching-tabs-on-mobile {
		display: flex;
		margin: -.75rem -1.25rem 0;
		text-align: center;
	}
	.switching-tabs-on-mobile > div {
		flex: 1;
		padding: .75rem;
		border-bottom: solid 1px var(--c-bord-alt);
		cursor: pointer;
	}
	.switching-tabs-on-mobile > div.switching-tabs-on-mobile-active {
		border-bottom: solid 2px var(--c-link);
		color: var(--c-link);
	}
	.wrapper-for-switching-tabs-on-mobile {
		display: none;
	}
	.wrapper-for-switching-tabs-on-mobile._active {
		display: block;
	}
}


/* Modifiers */

/* Cursor */
.cursor-pointer {
	cursor: pointer;
}

/* Color */
.c-inherit {
	color: inherit;
}
.c-main {
	color: var(--c-main);
}
.c-fade {
	color: var(--c-bord);
	/* color: var(--c-fade); */
}
.c-link {
	color: var(--c-link);
}
.c-success {
	color: var(--c-success);
}
.c-warning {
	color: var(--c-warning);
}
.c-danger {
	color: var(--c-danger);
}
.bc-status {
	background-color: var(--bc-status) !important;
}
.bc-status-alt {
	background-color: var(--bc-status-alt) !important;
}
.bc-status-alt2 {
	background-color: var(--bc-status-alt2) !important;
}

/* Font Size */
.fs-small {
	font-size: var(--fs-small);
}
.fs-xsmall {
	font-size: var(--fs-xsmall);
}

/* Font Weight */
.fw-bold {
	font-weight: var(--fw-bold);
}
.fw-normal {
	font-weight: var(--fw-normal);
}

/* Text Align */
.ta-left {
	text-align: left;
}
.ta-right {
	text-align: right;
}
.ta-center {
	text-align: center;
}

/* display */
.d-block {
	display: block;
}

/* Width, Min Width, Max Width */
.w-full {
	width: 100% !important;
}

/* Margin */
.m-left-auto {
	margin-left: auto !important;
}
.m-flat {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.m-top-flat {
	margin-top: 0 !important;
}
.m-bottom-flat {
	margin-bottom: 0 !important;
}
.m-base {
	margin-top: 1rem !important;
	margin-bottom: 1rem !important;
}
.m-top-base {
	margin-top: 1rem !important;
}
.m-bottom-base {
	margin-bottom: 1rem !important;
}
.m-base2 {
	margin-top: 2rem !important;
	margin-bottom: 2rem !important;
}
.m-top-base2 {
	margin-top: 2rem !important;
}
.m-bottom-base2 {
	margin-bottom: 2rem !important;
}
.m-base4 {
	margin-top: 4rem !important;
	margin-bottom: 4rem !important;
}
.m-top-base4 {
	margin-top: 4rem !important;
}
.m-bottom-base4 {
	margin-bottom: 4rem !important;
}
.m-base1-5 {
	margin-top: 1.5rem !important;
	margin-bottom: 1.5rem !important;
}
.m-top-base1-5 {
	margin-top: 1.5rem !important;
}
.m-bottom-base1-5 {
	margin-bottom: 1.5rem !important;
}
.m-base05 {
	margin-top: .5rem !important;
	margin-bottom: .5rem !important;
}
.m-top-base05 {
	margin-top: .5rem !important;
}
.m-bottom-base05 {
	margin-bottom: .5rem !important;
}