/* Coverly admin — полировка поверх Metronic. Подключается из layout.tpl. */

/* --- Фирменный шрифт основного сайта клиента alltime.ru (FuturaPT) --- */
@font-face {
	font-family: "FuturaPT";
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url("/assets/fonts/alltime/FuturaPT-Book.woff?v=2") format("woff");
}
@font-face {
	font-family: "FuturaPT";
	font-style: normal;
	font-weight: 400 500;
	font-display: swap;
	src: url("/assets/fonts/alltime/FuturaPT-Medium.woff?v=2") format("woff");
}
@font-face {
	font-family: "FuturaPT";
	font-style: normal;
	font-weight: 600 700;
	font-display: swap;
	src: url("/assets/fonts/alltime/FuturaPT-Demi.woff?v=2") format("woff");
}

:root {
	--coverly-radius: 0.85rem;
	--coverly-shadow: 0 4px 18px rgba(24, 28, 50, 0.06);
	--coverly-shadow-hover: 0 8px 28px rgba(24, 28, 50, 0.10);
	/* фон плейсхолдера обложки — переопределяется в тёмной теме ниже */
	--coverly-thumb-empty-bg: linear-gradient(135deg, #f3f5f9 0%, #e9edf5 100%);
	--coverly-thumb-empty-color: #a1a5b7;
}

/* Тёмная тема Metronic (data-bs-theme="dark") — подстраиваем свои токены */
[data-bs-theme="dark"] {
	--coverly-shadow: 0 4px 18px rgba(0, 0, 0, 0.35);
	--coverly-shadow-hover: 0 8px 28px rgba(0, 0, 0, 0.5);
	--coverly-thumb-empty-bg: linear-gradient(135deg, #1b1b29 0%, #2b2b40 100%);
	--coverly-thumb-empty-color: #565674;
}

/* Применяем фирменный шрифт ко всей админке (Futura с фолбэком на Metronic-стек) */
body,
.fw-normal, .fw-semibold, .fw-bold, .fw-boldest,
.btn, .form-control, .form-select, .menu, .page-heading, h1, h2, h3, h4, h5, h6 {
	font-family: "FuturaPT", "Inter", Helvetica, "sans-serif";
}

/* У FuturaPT меньше высота строчных (x-height), чем у Inter, — при базовых 13px
   Metronic текст читается мелко. Поднимаем корневой размер до 14px: пропорционально
   (rem) укрупняется весь интерфейс, включая мелкие fs-7/fs-8 в плотных таблицах. */
html,
body {
	font-size: 14px !important;
}

/* --- Мягкие карточки с лёгкой тенью вместо «квадратных» --- */
.app-content .card {
	border: 0;
	border-radius: var(--coverly-radius);
	box-shadow: var(--coverly-shadow) !important;
	transition: box-shadow .2s ease, transform .2s ease;
}
.app-content .card .card {
	box-shadow: none !important;
	border: 1px solid var(--bs-gray-200);
}

/* --- Кликабельные плитки/карточки приподнимаются на hover --- */
.stat-tile:hover,
.card.h-100.border:hover {
	transform: translateY(-3px);
	box-shadow: var(--coverly-shadow-hover) !important;
}
.stat-tile .stat-ico .symbol-label { transition: transform .2s ease; }
.stat-tile:hover .stat-ico .symbol-label { transform: scale(1.08); }

/* --- Кнопки: чуть круглее + плавный ховер --- */
.btn { border-radius: 0.65rem; transition: all .15s ease; }
.btn-group > .btn:first-child { border-top-left-radius: 0.65rem; border-bottom-left-radius: 0.65rem; }
.btn-group > .btn:last-child  { border-top-right-radius: 0.65rem; border-bottom-right-radius: 0.65rem; }

/* --- Бейджи: мягче углы, ровный вертикальный ритм --- */
.badge { border-radius: 0.55rem; padding: 0.4em 0.65em; }
a.badge { text-decoration: none; }
a.badge:hover { filter: brightness(0.96); }

/* --- Таблицы: подсветка строк + указатель на кликабельных --- */
.table-hover tbody tr:hover { background: var(--bs-gray-100); }
.table tbody tr { transition: background .12s ease; }
.cover-thumb { transition: transform .15s ease; }
.cover-thumb:hover { transform: scale(1.06); }

/* --- Плейсхолдер обложки/фото товара без изображения --- */
.cover-thumb-empty,
.product-thumb-empty {
	background: var(--coverly-thumb-empty-bg);
	color: var(--coverly-thumb-empty-color);
}

/* --- Select2: выровнять высоту под .form-select --- */
.select2-container .select2-selection--single {
	height: calc(1.5em + 1.1rem + 2px);
	display: flex;
	align-items: center;
	border-radius: 0.65rem;
	border-color: var(--bs-gray-300);
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 1.5;
	padding-left: 0;
}
.select2-container--default .select2-dropdown { border-radius: 0.65rem; overflow: hidden; }
.form-select-sm + .select2-container .select2-selection--single,
.select2-container.select2-container--sm .select2-selection--single {
	height: calc(1.5em + 0.7rem + 2px);
}

/* --- Тосты toastr: скругление и тень в тон --- */
.toastr-container .toast { border-radius: var(--coverly-radius); box-shadow: var(--coverly-shadow-hover); }

/* --- Модалка выбора фото --- */
#photo-picker .card { transition: transform .15s ease, box-shadow .15s ease; }
#photo-picker .card:hover { transform: translateY(-2px); box-shadow: var(--coverly-shadow); }

/* --- Левое меню: прокрутка при низком окне --- */
/* если высота окна меньше высоты меню — скроллим внутри сайдбара,
   а не обрезаем нижние пункты */
#kt_app_sidebar .app-sidebar-menu {
	overflow-x: hidden;
	overflow-y: auto;
	/* flex-column-fluid даёт flex: 1 0 auto (shrink=0) — меню не может стать
	   ниже своего контента и вылезает за фиксированный сайдбар вместо скролла.
	   Разрешаем сжатие (shrink=1) + min-height:0, тогда включается overflow. */
	flex-shrink: 1;
	min-height: 0;
}

/* --- Левое меню: выразительный ховер --- */
#kt_app_sidebar_menu .menu-link {
	border-radius: 0.65rem;
	transition: background-color .15s ease, color .15s ease, padding-left .15s ease;
}
#kt_app_sidebar_menu .menu-item .menu-link .menu-icon .ki-outline {
	transition: color .15s ease, transform .15s ease;
}
/* наведение на неактивный пункт */
#kt_app_sidebar_menu .menu-item:not(.here) > .menu-link:not(.active):hover {
	background-color: rgba(var(--bs-primary-rgb), 0.08);
	color: var(--bs-primary);
	padding-left: 1.25rem;
}
#kt_app_sidebar_menu .menu-item > .menu-link:not(.active):hover .menu-title {
	color: var(--bs-primary);
}
#kt_app_sidebar_menu .menu-item > .menu-link:not(.active):hover .menu-icon .ki-outline {
	color: var(--bs-primary);
	transform: scale(1.12);
}
/* активный пункт — иконка в тон акценту */
#kt_app_sidebar_menu .menu-link.active .menu-icon .ki-outline {
	color: var(--bs-primary);
}
