/* C2 CRMP modern visual layer. Behaviour and markup stay in Perfex core. */
:root {
    --c2-primary: #7c3aed;
    --c2-primary-dark: #6d28d9;
    --c2-ink: #17213a;
    --c2-muted: #64748b;
    --c2-border: #e5e7eb;
    --c2-surface: #ffffff;
    --c2-page: #f7f8fc;
    --c2-radius: 12px;
    --c2-shadow: 0 8px 24px rgba(15, 23, 42, .06);
}

body:not(.login_admin) {
    background: var(--c2-page);
    color: var(--c2-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body:not(.login_admin) #header {
    background: rgba(255, 255, 255, .94);
    border-bottom: 1px solid var(--c2-border);
    box-shadow: 0 1px 10px rgba(15, 23, 42, .04);
    position: sticky;
    top: 0;
    backdrop-filter: blur(12px);
}

body:not(.login_admin) #logo img {
    max-width: 142px;
    object-fit: contain;
}

body:not(.login_admin) #top_search input,
body:not(.login_admin) #top_search input:focus {
    background: #f1f3f8 !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
}

body:not(.login_admin) .sidebar {
    background: var(--c2-surface);
    border-right: 1px solid var(--c2-border);
    box-shadow: 3px 0 18px rgba(15, 23, 42, .025);
}

body:not(.login_admin) .sidebar-user-profile {
    margin-top: 68px !important;
}

body:not(.login_admin) .sidebar-user-profile > a {
    background: #f8f7ff !important;
    border: 1px solid #e9ddff !important;
    border-radius: 12px !important;
    color: var(--c2-ink) !important;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body:not(.login_admin) .sidebar-user-profile > a:hover {
    border-color: #c4a6ff !important;
    box-shadow: 0 8px 20px rgba(124, 58, 237, .12);
    transform: translateY(-1px);
}

body:not(.login_admin) .sidebar ul.nav li a {
    border-radius: 9px;
    color: #64748b;
    font-size: 13px;
    margin: 3px 0;
    padding: 10px 13px;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}

body:not(.login_admin) .sidebar ul.nav li a i.menu-icon {
    color: #94a3b8;
    font-size: 16px;
    transition: color .18s ease;
}

body:not(.login_admin) .sidebar > ul.nav > li:hover a:first-child,
body:not(.login_admin) .sidebar > ul.nav > li.active a:first-child {
    background: #f4efff;
    border: 1px solid #eadcff;
    box-shadow: none;
    color: var(--c2-primary-dark);
}

body:not(.login_admin) .sidebar ul.nav li.active > a,
body:not(.login_admin) .sidebar ul.nav > li > a:hover,
body:not(.login_admin) .sidebar ul.nav > li > a:focus,
body:not(.login_admin) .sidebar ul.nav li.active > a .menu-icon,
body:not(.login_admin) .sidebar ul.nav > li > a:hover .menu-icon,
body:not(.login_admin) .sidebar ul.nav > li > a:focus .menu-icon {
    color: var(--c2-primary-dark);
}

body:not(.login_admin) #wrapper {
    background: var(--c2-page);
}

body:not(.login_admin) .content {
    padding: 30px;
}

body:not(.login_admin) .panel_s,
body:not(.login_admin) .panel,
body:not(.login_admin) .well,
body:not(.login_admin) .card {
    background: var(--c2-surface);
    border: 1px solid var(--c2-border);
    border-radius: var(--c2-radius);
    box-shadow: var(--c2-shadow);
}

body:not(.login_admin) .panel_s .panel-heading,
body:not(.login_admin) .panel .panel-heading {
    background: transparent;
    border-bottom: 1px solid #eef0f4;
    color: var(--c2-ink);
    font-weight: 700;
    padding: 18px 20px;
}

body:not(.login_admin) .panel_s .panel-body,
body:not(.login_admin) .panel .panel-body {
    padding: 20px;
}

body:not(.login_admin) h1,
body:not(.login_admin) h2,
body:not(.login_admin) h3,
body:not(.login_admin) h4,
body:not(.login_admin) h5 {
    color: var(--c2-ink);
    letter-spacing: -.015em;
}

body:not(.login_admin) .btn {
    border-radius: 8px;
    font-weight: 600;
    min-height: 38px;
    padding: 8px 15px;
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

body:not(.login_admin) .btn:hover {
    transform: translateY(-1px);
}

body:not(.login_admin) .btn-primary,
body:not(.login_admin) .btn-info {
    background: var(--c2-primary);
    border-color: var(--c2-primary);
}

body:not(.login_admin) .btn-primary:hover,
body:not(.login_admin) .btn-primary:focus,
body:not(.login_admin) .btn-info:hover,
body:not(.login_admin) .btn-info:focus {
    background: var(--c2-primary-dark);
    border-color: var(--c2-primary-dark);
    box-shadow: 0 6px 14px rgba(124, 58, 237, .22);
}

body:not(.login_admin) .form-control,
body:not(.login_admin) .selectpicker,
body:not(.login_admin) select,
body:not(.login_admin) textarea {
    border: 1px solid #d9dee8;
    border-radius: 8px;
    box-shadow: none;
    min-height: 40px;
    transition: border-color .18s ease, box-shadow .18s ease;
}

body:not(.login_admin) .form-control:focus,
body:not(.login_admin) select:focus,
body:not(.login_admin) textarea:focus {
    border-color: #a78bfa;
    box-shadow: 0 0 0 3px rgba(124, 58, 237, .12);
}

body:not(.login_admin) .table {
    border: 1px solid var(--c2-border);
    border-radius: 10px;
    overflow: hidden;
}

body:not(.login_admin) .table > thead > tr > th {
    background: #f8fafc;
    border-bottom: 1px solid var(--c2-border);
    color: #64748b;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

body:not(.login_admin) .table > tbody > tr > td {
    border-top: 1px solid #f0f2f5;
    vertical-align: middle;
}

body:not(.login_admin) .table > tbody > tr:hover {
    background: #faf9ff;
}

body:not(.login_admin) .dropdown-menu {
    border: 1px solid var(--c2-border);
    border-radius: 10px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .12);
    padding: 6px;
}

body:not(.login_admin) .dropdown-menu > li > a {
    border-radius: 7px;
    padding: 9px 12px;
}

body:not(.login_admin) .dropdown-menu > li > a:hover,
body:not(.login_admin) .dropdown-menu > li > a:focus {
    background: #f4efff;
    color: var(--c2-primary-dark);
}

body:not(.login_admin) .alert {
    border: 0;
    border-radius: 9px;
    box-shadow: none;
}

body:not(.login_admin) .label,
body:not(.login_admin) .badge {
    border-radius: 999px;
    font-weight: 600;
}

@media (max-width: 768px) {
    body:not(.login_admin) .content {
        padding: 18px 14px;
    }

    body:not(.login_admin) .panel_s .panel-body,
    body:not(.login_admin) .panel .panel-body {
        padding: 15px;
    }
}
