﻿body {
    /*zoom: 100%; will change hover positions*/
    /*transform: scale(2.15); will go over the screen
    transform-origin: 0 0;*/
}

[v-cloak] {
    display: none;
}

.invalid-border {
    border: 2px solid red;
    background-color: lightblue;
}

/* Font size of links on top bar (left) */
.smaller-font-header {
    font-size: 12px !important;
}

/* Legacy jarvis widget support - kept for backward compatibility if needed */
.jarviswidget h2 a {
    color: #ffffff !important;
    text-decoration: none;
}

/* Make sure icons are aligned in left main menu, used as class tag in variables */
.valignmiddle {
    vertical-align: middle;
}

/* Default size of origin image */
.originImageWidth {
    width: 150px;
}

/* Default size of origin image */
.iconImageWidth {
    width: 60px;
}

/* center text */
.textCenter {
    text-align: center;
}

/* Fix layout for pages without sidebar (like login page) */
/* Use :has() selector for modern browsers - works immediately */
.app-wrap:not(:has(.app-sidebar)) {
    grid-template-columns: auto !important;
    grid-template-areas: "header" "main" !important;
}

.app-wrap:not(:has(.app-sidebar)) .app-header {
    margin-left: 0 !important;
}

.app-wrap:not(:has(.app-sidebar)) .app-header .app-logo {
    width: auto !important;
    border-right: none !important;
    margin-right: 2rem !important;
}

/* Fallback for browsers that don't support :has() - use class when available */
.app-wrap.no-sidebar {
    grid-template-columns: auto !important;
    grid-template-areas: "header" "main" !important;
}

.app-wrap.no-sidebar .app-header {
    margin-left: 0 !important;
}

.app-wrap.no-sidebar .app-header .app-logo {
    width: auto !important;
    border-right: none !important;
    margin-right: 2rem !important;
}

/* Reduce header height and improve button alignment for all layouts */
.app-wrap {
    --app-header-height: 3.5rem;
    grid-template-rows: var(--app-header-height) auto;
}

.app-header {
    height: var(--app-header-height);
}

/* Ensure user dropdown button is properly aligned */
.app-header button[data-bs-toggle="dropdown"]:has(i.fa-user),
.app-header .dropdown-toggle:has(i.fa-user) {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 0.5rem 0.75rem;
}

.app-header button[data-bs-toggle="dropdown"]:has(i.fa-user) i,
.app-header .dropdown-toggle:has(i.fa-user) i {
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
}

/* Adjust content to account for smaller header */
.app-body {
    margin-top: 0;
}

/* Ensure dark mode button is properly aligned */
.app-header .btn-system[data-action="toggle-theme"] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

/* Vertically center all table cells */
td {
    vertical-align: middle !important;
}