/* EDNA application styles: PT Sans Narrow, font scaling, theme-safe tweaks.
   No hard-coded colours: everything derives from Bootstrap / AdminLTE CSS variables
   so both [data-bs-theme="light"] and [data-bs-theme="dark"] render correctly. */

@font-face {
  font-family: "PT Sans Narrow";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/pt-sans-narrow-400-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "PT Sans Narrow";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/pt-sans-narrow-400-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "PT Sans Narrow";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/pt-sans-narrow-700-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "PT Sans Narrow";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/pt-sans-narrow-700-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ---- font sizing: --app-font-size drives the root font size ------------------ */
:root {
  --app-font-size: 1rem;
  --app-font-family: "PT Sans Narrow", "Segoe UI", system-ui, -apple-system, sans-serif;
  --bs-body-font-family: var(--app-font-family);
  --bs-font-sans-serif: var(--app-font-family);
}
:root[data-app-font-size="small"] { --app-font-size: 0.875rem; }
:root[data-app-font-size="normal"] { --app-font-size: 1rem; }
:root[data-app-font-size="large"] { --app-font-size: 1.125rem; }
:root[data-app-font-size="extra-large"] { --app-font-size: 1.25rem; }

html { font-size: var(--app-font-size); }
body { font-family: var(--app-font-family); letter-spacing: 0.01em; }
.navbar, .app-sidebar, .card, .table, .btn, .form-control, .form-select, .dropdown-menu {
  font-family: var(--app-font-family);
}

/* ---- sidebar follows the page theme (no forced dark variant) ------------------ */
.app-sidebar {
  color: var(--bs-body-color);
  border-right: 1px solid var(--bs-border-color-translucent);
}
.app-sidebar .brand-link { color: var(--bs-body-color); border-bottom: 1px solid var(--bs-border-color-translucent); }
.app-sidebar .brand-image { font-size: 1.5rem; line-height: 1; margin-right: .5rem; }
.app-sidebar .nav-header { color: var(--bs-secondary-color); }
.app-sidebar .sidebar-menu > .nav-item > .nav-link { color: var(--bs-body-color); }
.app-sidebar .sidebar-menu > .nav-item > .nav-link:hover,
.app-sidebar .sidebar-menu > .nav-item > .nav-link:focus { background-color: var(--bs-tertiary-bg); color: var(--bs-body-color); }
.app-sidebar .sidebar-menu > .nav-item > .nav-link.active { background-color: var(--bs-primary); color: var(--bs-white); }
.app-sidebar .sidebar-menu > .nav-item > .nav-link.active .nav-icon { color: var(--bs-white); }

/* ---- misc -------------------------------------------------------------------- */
.chart-container { position: relative; height: 16rem; width: 100%; }
.small-box .inner h3 { font-weight: 700; }
details > summary { cursor: pointer; }
pre.small { white-space: pre-wrap; word-break: break-all; }
.command-output { max-height: 28rem; overflow: auto; background-color: var(--bs-tertiary-bg); padding: .5rem; border-radius: var(--bs-border-radius); }
.user-menu .user-header p { margin: 0; }
.user-menu .user-header small { display: block; }
.login-page .card-header h1 { font-size: 1.75rem; }
.js-tenant-switch .dropdown-item.active { pointer-events: none; }
