:root {
    --beibars-green: #0A8A56;
    --beibars-green-dark: #076E45;
    --beibars-yellow: #FECC00;

    --beibars-page: #F7F9F8;
    --beibars-card: #FFFFFF;
    --beibars-border: #DDE6E2;

    --beibars-text: #1D2939;
    --beibars-muted: #667085;

    --tblr-primary: #0A8A56;
    --tblr-primary-rgb: 10, 138, 86;
    --tblr-link-color: #0A8A56;
    --tblr-link-hover-color: #076E45;
}

/* Sidebar */
aside.sidebar {
    background: var(--beibars-green) !important;
    border-right: 0 !important;
}

/* Logo area without white background */
aside.sidebar .navbar-brand {
    background: transparent !important;
    border-radius: 0;
    margin: 10px 10px 14px 10px;
    padding: 6px 8px !important;
    min-height: 62px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    box-shadow: none !important;
    border: 0 !important;
}

aside.sidebar .navbar-brand .glpi-logo {
    display: block !important;
    width: 150px !important;
    height: 56px !important;
    background-image: url("../assets/beibars-logo.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

/* Sidebar text */
aside.sidebar .nav-link,
aside.sidebar .menu-label,
aside.sidebar .nav-link-title {
    color: rgba(255,255,255,.96) !important;
}

aside.sidebar .nav-link svg,
aside.sidebar .nav-link i {
    color: rgba(255,255,255,.96) !important;
    stroke: currentColor;
}

aside.sidebar .nav-link:hover {
    background: rgba(255,255,255,.12) !important;
    color: #FFFFFF !important;
    border-radius: 8px;
}

aside.sidebar .nav-link.active,
aside.sidebar .nav-item.active > .nav-link,
aside.sidebar .nav-link[aria-current="page"] {
    background: rgba(255,255,255,.18) !important;
    color: #FFFFFF !important;
    border-left: 4px solid var(--beibars-yellow) !important;
    border-radius: 6px;
}

/* Header */
header[data-testid="main-header"] {
    background: #FFFFFF !important;
    border-bottom: 1px solid var(--beibars-border) !important;
    box-shadow: 0 1px 4px rgba(16,24,40,.06) !important;
}

/* Main background */
body,
.page,
.page-wrapper,
.page-body {
    background: var(--beibars-page) !important;
}

/* Cards */
.card {
    background: var(--beibars-card);
    border-color: var(--beibars-border) !important;
    box-shadow: 0 1px 3px rgba(16,24,40,.06);
}

/* Links */
a:not(.btn):not(.nav-link) {
    color: var(--beibars-green);
}

a:not(.btn):not(.nav-link):hover {
    color: var(--beibars-green-dark);
}

/* Buttons */
.btn-primary {
    background-color: var(--beibars-green) !important;
    border-color: var(--beibars-green) !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--beibars-green-dark) !important;
    border-color: var(--beibars-green-dark) !important;
}

/* Form focus */
.form-control:focus,
.form-select:focus {
    border-color: var(--beibars-green) !important;
    box-shadow: 0 0 0 .2rem rgba(10,138,86,.12) !important;
}

/* =========================================================
   LOGIN / ANONYMOUS PAGE
   ========================================================= */

body.page-anonymous,
body.page-anonymous .page,
body.page-anonymous .page-wrapper,
body.page-anonymous .page-body,
body.anonymous,
body.anonymous .page,
body.anonymous .page-wrapper,
body.anonymous .page-body {
    background: linear-gradient(180deg, #F8FBF8 0%, #EEF7F2 100%) !important;
}

/* Мягкие фирменные декоративные пятна */
body.page-anonymous::before,
body.page-anonymous::after,
body.anonymous::before,
body.anonymous::after {
    content: "";
    position: fixed;
    z-index: 0;
    pointer-events: none;
    border-radius: 999px;
    opacity: .55;
}

body.page-anonymous::before,
body.anonymous::before {
    width: 420px;
    height: 420px;
    left: -140px;
    top: 120px;
    background: radial-gradient(circle, rgba(10,138,86,.10) 0%, rgba(10,138,86,0) 70%);
}

body.page-anonymous::after,
body.anonymous::after {
    width: 460px;
    height: 460px;
    right: -160px;
    top: 80px;
    background: radial-gradient(circle, rgba(10,138,86,.08) 0%, rgba(10,138,86,0) 70%);
}

/* Поднимаем контент над фоном */
body.page-anonymous main,
body.page-anonymous .container,
body.page-anonymous .card,
body.anonymous main,
body.anonymous .container,
body.anonymous .card {
    position: relative;
    z-index: 1;
}

/* Логотип BEIBARS вместо GLPI */
body.page-anonymous .glpi-logo,
body.anonymous .glpi-logo {
    display: block !important;
    width: 240px !important;
    height: 120px !important;
    margin: 0 auto 10px auto !important;
    background-image: url("../assets/beibars-logo.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

/* Если где-то на login есть img с GLPI logo — скрываем */
body.page-anonymous img[src*="logo-GLPI"],
body.anonymous img[src*="logo-GLPI"] {
    display: none !important;
}

/* Карточка входа */
body.page-anonymous .card,
body.anonymous .card {
    max-width: 820px !important;
    margin: 0 auto !important;
    border-radius: 24px !important;
    border: 1px solid #E2ECE6 !important;
    background: #FFFFFF !important;
    box-shadow: 0 16px 40px rgba(16,24,40,.08) !important;
    overflow: hidden;
}

/* Небольшой фирменный акцент сверху карточки */
body.page-anonymous .card::before,
body.anonymous .card::before {
    content: "";
    display: block;
    height: 5px;
    width: 100%;
    background: linear-gradient(90deg, #0A8A56 0%, #17A56B 72%, #FECC00 100%);
}

/* Заголовки */
body.page-anonymous .card-title,
body.page-anonymous h1,
body.page-anonymous h2,
body.page-anonymous h3,
body.anonymous .card-title,
body.anonymous h1,
body.anonymous h2,
body.anonymous h3 {
    color: #0B3F2B !important;
    font-weight: 700 !important;
}

/* Подписи и текст */
body.page-anonymous label,
body.page-anonymous .form-label,
body.page-anonymous .text-muted,
body.anonymous label,
body.anonymous .form-label,
body.anonymous .text-muted {
    color: #344054 !important;
}

/* Поля ввода */
body.page-anonymous .form-control,
body.page-anonymous .form-select,
body.anonymous .form-control,
body.anonymous .form-select {
    min-height: 52px !important;
    border-radius: 14px !important;
    border: 1px solid #D8E4DD !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}

body.page-anonymous .form-control:focus,
body.page-anonymous .form-select:focus,
body.anonymous .form-control:focus,
body.anonymous .form-select:focus {
    border-color: #0A8A56 !important;
    box-shadow: 0 0 0 .2rem rgba(10,138,86,.12) !important;
}

/* Checkbox */
body.page-anonymous .form-check-input,
body.anonymous .form-check-input {
    accent-color: #0A8A56;
}

/* Кнопка входа */
body.page-anonymous .btn-primary,
body.anonymous .btn-primary {
    width: 100% !important;
    min-height: 54px !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg, #119B63 0%, #0A8A56 100%) !important;
    border-color: #0A8A56 !important;
    color: #FFFFFF !important;
    font-weight: 700 !important;
    box-shadow: 0 10px 24px rgba(10,138,86,.20) !important;
}

body.page-anonymous .btn-primary:hover,
body.page-anonymous .btn-primary:focus,
body.anonymous .btn-primary:hover,
body.anonymous .btn-primary:focus {
    background: linear-gradient(180deg, #0F8F5C 0%, #076E45 100%) !important;
    border-color: #076E45 !important;
    color: #FFFFFF !important;
}

/* Ссылки и footer */
body.page-anonymous a,
body.anonymous a {
    color: #0A8A56 !important;
}

body.page-anonymous a:hover,
body.anonymous a:hover {
    color: #076E45 !important;
}

body.page-anonymous .copyright,
body.page-anonymous .copyright a,
body.anonymous .copyright,
body.anonymous .copyright a {
    color: #667085 !important;
}

/* =========================================================
   LOGIN LOGO OVERRIDE
   ========================================================= */

/* Скрыть штатные GLPI-логотипы на странице входа */
body.page-anonymous img[src*="logo-GLPI"],
body.page-anonymous img[alt*="GLPI"],
body.page-anonymous img[title*="GLPI"],
body.anonymous img[src*="logo-GLPI"],
body.anonymous img[alt*="GLPI"],
body.anonymous img[title*="GLPI"] {
    display: none !important;
}

/* На всякий случай скрыть текстовый/спановый GLPI logo */
body.page-anonymous .glpi-logo,
body.anonymous .glpi-logo {
    background-image: none !important;
    color: transparent !important;
}

/* Контейнер под большой логотип */
body.page-anonymous .login-logo,
body.page-anonymous .login-logo-container,
body.page-anonymous .mb-5.text-center,
body.page-anonymous .text-center:first-of-type,
body.anonymous .login-logo,
body.anonymous .login-logo-container,
body.anonymous .mb-5.text-center,
body.anonymous .text-center:first-of-type {
    position: relative !important;
    min-height: 150px !important;
}

/* Рисуем большой логотип BEIBARS */
body.page-anonymous .login-logo::before,
body.page-anonymous .login-logo-container::before,
body.page-anonymous .mb-5.text-center::before,
body.page-anonymous .text-center:first-of-type::before,
body.anonymous .login-logo::before,
body.anonymous .login-logo-container::before,
body.anonymous .mb-5.text-center::before,
body.anonymous .text-center:first-of-type::before {
    content: "";
    display: block;
    width: 320px;
    height: 150px;
    margin: 0 auto 10px auto;
    background-image: url("../assets/beibars-logo.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* Если внутри сверху есть текст/пустой блок — немного прижать вниз */
body.page-anonymous .login-logo > *,
body.page-anonymous .login-logo-container > *,
body.anonymous .login-logo > *,
body.anonymous .login-logo-container > * {
    position: relative;
    z-index: 1;
}

/* =========================================================
   EXACT LOGIN LOGO — BEIBARS
   ========================================================= */

.glpi-logo.mb-4 {
    display: block !important;

    width: 360px !important;
    height: 180px !important;
    max-width: 90vw !important;

    margin: 0 auto 28px auto !important;

    background: url("../assets/beibars-logo.png") center center / contain no-repeat !important;

    -webkit-mask: none !important;
    mask: none !important;

    color: transparent !important;
    font-size: 0 !important;
}

/* =========================================================
   SIDEBAR LOGO — BEIBARS
   ========================================================= */

aside.sidebar .navbar-brand .glpi-logo {
    display: block !important;
    position: relative !important;

    width: 150px !important;
    height: 70px !important;

    margin: 0 auto !important;

    background: url("/plugins/beibarsbranding/assets/beibars-logo.png")
                center center / contain no-repeat !important;

    -webkit-mask: none !important;
    mask: none !important;

    color: transparent !important;
    font-size: 0 !important;
}

/* убрать возможное штатное псевдосодержимое GLPI */
aside.sidebar .navbar-brand .glpi-logo::before,
aside.sidebar .navbar-brand .glpi-logo::after {
    content: none !important;
}

/* =========================================================
   BEIBARS LOGO — FINAL GLPI 11 OVERRIDE
   ========================================================= */

:root {
    --glpi-logo-light: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
    --glpi-logo-light-reduced: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
    --glpi-logo-dark: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
    --glpi-logo-dark-reduced: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;

    --glpi-logo-dark-login: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
    --glpi-logo-light-login: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;

    --glpi-logo: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
    --glpi-logo-reduced: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
}

/* LOGIN */
.page-anonymous .glpi-logo {
    --logo: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;

    content: var(--logo) !important;

    width: 320px !important;
    height: 170px !important;
    max-width: 90vw !important;

    object-fit: contain !important;

    margin: 0 auto 24px auto !important;

    background: none !important;
}

/* SIDEBAR */
aside.sidebar .navbar-brand .glpi-logo {
    content: none !important;

    width: 155px !important;
    height: 72px !important;

    background-image: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;

    -webkit-mask: none !important;
    mask: none !important;
}

/* COLLAPSED SIDEBAR */
body.navbar-collapsed .navbar-brand .glpi-logo {
    content: none !important;

    width: 48px !important;
    height: 48px !important;

    background-image: url("/plugins/beibarsbranding/assets/beibars-logo.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

/* =========================================================
   LOGIN FOOTER — BEIBARS ONLY
   ========================================================= */

.page-anonymous .copyright {
    display: block !important;

    font-size: 0 !important;
    color: transparent !important;
    text-decoration: none !important;

    pointer-events: none !important;
    cursor: default !important;
}

.page-anonymous .copyright::before {
    content: "BEIBARS 1999–2006";

    display: block !important;

    color: #00683E !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: .3px !important;

    text-align: center !important;
}

/* =========================================================
   BIGGER SIDEBAR LOGO
   ========================================================= */

aside.sidebar .navbar-brand {
    padding-top: 10px !important;
    padding-bottom: 12px !important;
    min-height: 100px !important;
}

aside.sidebar .navbar-brand .glpi-logo {
    width: 180px !important;
    height: 90px !important;
    margin: 0 auto !important;

    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}
