/* Custom spacing for specific flex rows was removed to avoid
   affecting generic Bootstrap utility combinations. */
.card {
	border: 1px solid var(--border-color);
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	background: var(--bg-white);
	overflow: hidden;
}

.card>.card-body {
	padding: 0rem 0.7rem;
}

.card>.card-header {
	padding: 0rem 0.7rem;
}

.card-header {
	background: var(--secondary-gray) !important;
	color: var(--bg-white) !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
}

/* CSS Variables for repeated values */
:root {
	--primary-color: #274dc8;
	--primary-dark: #1e3a9e;
	--primary-light: #4e73eb;
	--secondary-gray: #6c757d;
	--border-color: #e0e0e0;
	--border-color-light: #ddd;
	--bg-light: #f8f9fa;
	--bg-white: #fff;
	--text-dark: #2c3e50;
	--text-muted: #495057;
	--shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.1);
	--shadow-md: 0 3px 3px 0 rgb(0 0 0 / 20%);
	--shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* ΣΚΟΤΕΙΝΟ ΘΕΜΑ — TOKENS */
[data-emdi-theme="dark"],
[data-bs-theme="dark"] {
	color-scheme: dark;
	--primary-color: #6b9fff;
	--primary-dark: #4a7de8;
	--primary-light: #8eb4ff;
	--secondary-gray: #9ca3af;
	--border-color: #3d4454;
	--border-color-light: #4a5162;
	--bg-light: #1a1d27;
	--bg-white: #252836;
	--text-dark: #e8eaed;
	--text-muted: #b0b3b8;
	--shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.35);
	--shadow-md: 0 3px 6px rgba(0, 0, 0, 0.4);
	--shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.45);
}

/* TABLE-RESPONSIVE-BOX — DBGRID + ΚΥΛΙΟΜΕΝΟΙ ΠΙΝΑΚΕΣ (ΚΟΙΝΟ) */
.table-responsive-box {
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	touch-action: pan-x pan-y;
	border: 1px solid var(--border-color);
	border-radius: 8px;
	position: relative;
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
	background: var(--bg-white);
	scrollbar-width: thin;
	scrollbar-color: #cbd5e0 #f1f5f9;
}

.table-responsive-box::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

.table-responsive-box::-webkit-scrollbar-track {
	background: #f1f5f9;
	border-radius: 4px;
}

.table-responsive-box::-webkit-scrollbar-thumb {
	background: #cbd5e0;
	border-radius: 4px;
}

.table-responsive-box::-webkit-scrollbar-thumb:hover {
	background: #a0aec0;
}

.table-responsive-box table {
	width: 100%;
	border-collapse: collapse;
	max-width: 100%;
	font-size: 0.8rem;
}

.table-responsive-box thead th {
	position: sticky;
	top: 0;
	background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
	color: var(--bg-white);
	z-index: 5;
	box-shadow: var(--shadow-sm);
	font-weight: 600;
	text-transform: uppercase;
	font-size: 0.7rem;
	letter-spacing: 0.5px;
	padding: 6px 8px;
}

/* Further optimized and minified CSS */
@import url(//fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,700;1,300;1,400;1,500;1,700&display=swap);

body {
	background: url("/images/sbz-api-back.jpg") no-repeat fixed center/cover;
	color: #000;
	font-family: 'Geologica', 'Ubuntu', sans-serif;
	font-size: 14px;
	font-weight: 400;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.container-bottom {
	height: 100px;
}

h1,
.h1,
h2,
.h2,
a {
	color: var(--primary-color);
}

h1,
.h1 {
	font-size: 28px;
	font-weight: 600;
}

h2,
.h2 {
	font-size: 17px;
	font-weight: 600;
}

em {
	font-style: normal;
}

.dropdown-menu {
	border-radius: 15px 5px 5px 15px/5px 15px 15px 5px;
	box-shadow: var(--shadow-md);
	margin-top: 7px;
}

.wrapper-center,
.wrapper-center-login {
	background: var(--bg-white);
	box-shadow: var(--shadow-md);
	margin: 0 auto;
	padding: 20px;
	text-align: center;
	border-radius: 45px 10px 45px 10px;
}

.wrapper-center {
	max-width: 660px;
}

.wrapper-center-login {
	max-width: 460px;
}

/* ΣΕΛΙΔΑ ΣΥΝΔΕΣΗΣ (login.php) */
html.login-page,
body.login-page {
	height: 100%;
}

body.login-page .container {
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 20px;
	padding-bottom: 20px;
}

body.login-page .wrapper-center-login {
	transition: transform 180ms ease, box-shadow 180ms ease;
	will-change: transform, box-shadow;
	max-height: none;
	overflow: visible;
	width: 100%;
	max-width: 480px;
	margin: 0 auto;
}

body.login-page .wrapper-center-login[style*="min-height"] {
	box-sizing: border-box;
	overflow: visible;
}

body.login-page .wrapper-center-login:hover,
body.login-page .wrapper-center-login:focus-within {
	transform: translateY(-4px);
	box-shadow: 0 12px 30px rgba(39, 77, 200, 0.12);
}

body.login-page .wrapper-center-login .form-group {
	margin-bottom: 12px;
}

body.login-page .wrapper-center-login .form-inline .btn {
	margin-left: .25rem;
}

body.login-page .wrapper-center-login #forgotForm.show {
	display: block !important;
	margin-top: 10px;
}

body.login-page [aria-hidden="true"] {
	display: none !important;
}

body.login-page .altcha-widget-wrap {
	margin-top: 10px;
	display: flex;
	justify-content: center;
}

.wrapper-lang-selector {
	height: 40px;
	margin: 0 auto 20px;
	max-width: 300px;
}

.copyright-wrapper {
	font-size: 12px;
	padding-bottom: 20px;
	max-width: 460px;
	text-align: center;
	margin: 0 auto 70px;
}

.form-control,
.form-select,
.sticky-doclist-navbar-form input {
	box-shadow: var(--shadow-md);
}

.sticky-doclist-navbar-form input {
	background: var(--bg-white);
	border: 1px solid #1435a1;
	color: var(--primary-color);
	padding: 5px 15px;
	max-width: 180px;
}

.dropdown {
	float: right;

}

.dropdown-item {
	font-size: 14px;
}

.dropdown-item:focus,
.dropdown-item:hover {
	background-color: #ced4da;
}

.dropdown img,
.dropdown-menu img {
	border: 1px solid #b9b9b9;
	border-radius: 5px;
	margin-right: 7px;
}

.sticky-top {
	background: linear-gradient(135deg, var(--bg-white) 0%, #a48eb7 100%);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	min-height: 70px;
	width: 100%;
	border-bottom: 2px solid #e9ecef;
}

.sticky-top-inner {
	padding: 20px;
}

.sticky-top-navbar {
	color: var(--primary-color);
}

.logo {
	float: left;
	margin-right: 40px;
}

.logo img {
	margin-top: 0px;
	max-width: 140px;
}

.sticky-top-welcome {
	float: left;
	margin-right: 10px;
	margin-top: 7px;
}

.sticky-top-username,
.sticky-top-time {
	float: left;
	font-size: 12px;
	margin-top: 9px;
}

.sticky-top-time {
	margin-left: 15px;
}

.sticky-doclist-navbar {
	background: var(--primary-color);
	box-shadow: 0 0 3px #ccc;
	color: var(--bg-white);
	padding: 20px;
	position: fixed;
	width: 100%;
	height: 70px;
}

.sticky-doclist-navbar-form {
	float: left;
}

.sticky-doclist-navbar-buttons {
	float: right;
}

.table {
	background: var(--bg-white);
	border: 1px solid #b9b9b9;
	box-shadow: var(--shadow-md);
	margin-bottom: 0.5rem;
}

.table td,
.table th {
	border-top: 1px solid #b9b9b9;
	border-right: 1px solid #b9b9b9;
}

.table .thead-dark th {
	background: #e3e3e3;
	border: 1px solid #b9b9b9;
	color: var(--primary-color);
}

.btn,
.btn-primary,
.btn-secondary,
.btn-third {
	box-shadow: var(--shadow-md);
}

.btn-primary {
	background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
	border-color: var(--primary-color);
	box-shadow: 0 2px 6px rgba(39, 77, 200, 0.3);
	transition: all 0.3s ease;
}

.btn-primary:hover {
	background: linear-gradient(135deg, var(--primary-dark) 0%, #3d5fd9 100%);
	border-color: var(--primary-dark);
	box-shadow: 0 4px 12px rgba(39, 77, 200, 0.4);
	transform: translateY(-1px);
}

.btn-secondary {
	background: linear-gradient(135deg, #979797 0%, #b0b0b0 100%);
	border-color: #979797;
	color: var(--bg-white);
	box-shadow: 0 2px 6px rgba(151, 151, 151, 0.3);
	transition: all 0.3s ease;
}

.btn-secondary:hover {
	background: linear-gradient(135deg, #6a6969 0%, #8a8a8a 100%);
	border-color: #6a6969;
	box-shadow: 0 4px 12px rgba(151, 151, 151, 0.4);
	transform: translateY(-1px);
}

.btn-third {
	background-color: var(--bg-white);
	border-color: #ced4da;
	color: var(--text-muted);
}

.btn-third:hover {
	background-color: #ced4da;
	border-color: #ced4da;
}

.btn:hover {
	box-shadow: 0 3px 3px 0 rgb(0 0 0 / 20%);
}

.login-logo {
	text-align: center;
}

.login-logo img {
	margin-bottom: 30px;
	max-width: 120px;
}

.required {
	color: red;
}

input[type=checkbox] {
	margin-right: 7px !important;
}

.successtext {
	border: 1px solid #0ebb12;
	box-shadow: 0 3px 3px 0 rgb(0 0 0 / 20%);
	color: #0ebb12;
	margin-top: 20px;
	padding: 5px;
}

.successtext i {
	margin-left: 7px;
}

.form-group {
	margin-bottom: 0;
}

p {
	margin-top: revert;
	margin-bottom: 0;
}

.menu-icon {
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	max-width: 80px;
	transition: all 0.3s ease;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.menu-icon:hover {
	transform: translateY(-3px) scale(1.1);
	filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
}

.col-2.col-sm-2.text-center {
	width: auto;
}

.row.justify-content-center.bottomnavbar.py-2.fixed-bottom.shadow {
	background: rgba(73, 37, 102, 0.95);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-top: 2px solid rgba(255, 255, 255, 0.1);
	box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
}

#dropdownMenuButton {
	height: 32px;
}

.dropdown-profile i,
.dropdown-lang i {
	font-size: 18px;
	margin-right: 5px;
}

.sticky-top-buttons {
	position: absolute;
	right: 10px;
	width: auto;
	float: none;
	z-index: 10;
	padding: 0;
}

.dropdown-profile,
.dropdown-lang {
	min-width: 0;
	padding: 0;
}

/* DOC-BUTTONS-STACK — ΚΟΙΝΟ (header, app_purchases_sales, λίστα dbgrid) */
.doc-buttons-stack {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.35rem;
}

.doc-buttons-stack>.btn.btn-sm,
.doc-buttons-stack>a.btn.btn-sm,
.doc-buttons-stack>.emdi-theme-toggle.btn-sm,
.doc-buttons-stack .dropdown>.btn.btn-sm,
.doc-buttons-stack .btn-group>.btn.btn-sm {
	height: 32px !important;
	min-height: 32px !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	line-height: 1 !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	transition: all 0.2s ease;
	font-size: 14px !important;
}

.doc-buttons-stack>.sales-clear-btn.btn-sm,
.doc-buttons-stack>.emdi-theme-toggle.sales-clear-btn {
	width: 32px !important;
	min-width: 32px !important;
	max-width: 32px !important;
	padding: 0 !important;
}

.doc-buttons-stack>.sales-clear-btn.btn-sm .bi,
.doc-buttons-stack>.emdi-theme-toggle .bi {
	font-size: 16px !important;
	margin: 0;
}

.doc-buttons-stack .dropdown-profile>.btn,
.doc-buttons-stack .dropdown-lang>.btn {
	padding: 0 8px !important;
	min-width: 32px;
	width: auto;
	max-width: none;
}

.doc-buttons-stack .dropdown-profile>.btn .bi,
.doc-buttons-stack .dropdown-lang>.btn .bi {
	font-size: 18px;
	margin-right: 5px;
}

.doc-buttons-stack>.btn.btn-sm:hover,
.doc-buttons-stack>a.btn.btn-sm:hover,
.doc-buttons-stack .dropdown>.btn.btn-sm:hover,
.doc-buttons-stack .btn-group>.btn.btn-sm:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.doc-buttons-stack .btn-group {
	display: inline-flex;
	align-items: stretch;
	height: 32px !important;
}

.doc-buttons-stack .btn-group>.btn.dropdown-toggle-split {
	width: 32px !important;
	min-width: 32px !important;
	padding: 0 !important;
	justify-content: center;
}

/* bootstrap.min.css | https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css */
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
	max-width: 100%;
	height: auto;
	overflow: visible;
}

.container-fluid.mt-3 {
	margin-top: 0 !important;
	padding: 15px;
	height: calc(100vh - 140px);
	overflow-y: auto;
	background: transparent;
}

/* App Settings Page Specific Styles */
#reportLink {
	word-break: break-all;
	font-size: 13px;
}

#copyReportLink,
#copyStockLink {
	padding: 0;
}

#exampleTypeSelect {
	width: auto;
}

.settings-code-example,
#codeExample {
	font-size: 11px;
	word-break: break-all;
	white-space: pre-wrap;
}

/* Optimize spacing in settings sections */
.settings-section .row.g-2 {
	margin-bottom: 0.5rem;
	gap: 0.5rem;
}

.settings-section .input-group-sm {
	margin-bottom: 0;
}

.settings-section .d-flex {
	gap: 0.5rem;
}

.settings-section {
	scroll-margin-top: 90px;
	margin-bottom: 1rem;
}

.settings-section .card {
	margin-bottom: 0.75rem;
}

.settings-section .card-body {
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	padding-left: 1rem;
	padding-right: 1rem;
}

.settings-section table {
	margin-bottom: 0.5rem;
}

.settings-section table td,
.settings-section table th {
	padding: 0.5rem !important;
	font-size: 0.8rem;
}

.settings-section table thead th {
	font-size: 0.75rem;
	font-weight: 600;
	padding: 0.5rem !important;
}

.settings-section .form-control-sm {
	font-size: 0.8rem;
}

.settings-section .form-label {
	font-size: 0.75rem;
	margin-bottom: 0.25rem;
	font-weight: 300 !important;
	font-variation-settings: "wght" 300;
	text-align: right !important;
}

.settings-section .form-label.small {
	font-size: 0.7rem;
	margin-bottom: 0.25rem;
}

/* Make all icon-only buttons icon-sized in settings */
.settings-section .btn-sm {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* Buttons that contain only an icon - make them square */
.settings-section .btn-sm i {
	font-size: 0.9rem;
	margin: 0;
	line-height: 1;
}

.settings-section .table-responsive {
	margin-bottom: 0.75rem;
}

.settings-section .mb-3 {
	margin-bottom: 1rem !important;
}

.settings-section .mb-4 {
	margin-bottom: 1.5rem !important;
}

.settings-section .mb-2 {
	margin-bottom: 0.5rem !important;
}

.settings-section .mt-2 {
	margin-top: 0.5rem !important;
}

.item-suggestions {
	position: absolute !important;
	z-index: 9999 !important;
	width: 100%;
	display: none;
	background: var(--bg-white);
	border: 1px solid #ccc;
	border-top: none;
	border-radius: 0 0 8px 8px;
	max-height: 250px;
	overflow-y: auto;
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* Main menu height for screens larger than 768px */
.main-menu.container-fluid {
	height: 70px;
}

/* ΡΥΘΜΙΣΕΙΣ — PANEL ΜΟΝΟ (ΟΧΙ dbgrid — ΙΔΙΟ CSS ΜΕ app_customers_suppliers.php) */
.settings-page-wrap {
	width: 100%;
	max-width: 100%;
	overflow: visible;
	padding: 0.75rem 12px calc(4.5rem + env(safe-area-inset-bottom, 0px));
	min-height: calc(100vh - 140px);
	height: auto;
}

.settings-page-wrap .settings-section,
.settings-page-wrap .settings-panel-form,
.settings-page-wrap .card {
	font-family: inherit;
	font-size: 14px;
	color: var(--text-dark, #2c3e50);
}

.settings-nav-inner {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	flex-wrap: wrap;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	overflow: visible;
}

.settings-nav-label {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	color: var(--primary-color, #274dc8);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	white-space: nowrap;
	flex: 0 0 auto;
}

.settings-nav-label .bi {
	font-size: 1.2rem;
	line-height: 1;
	opacity: 0.92;
}

.settings-nav-select-wrap {
	position: relative;
	flex: 1 1 12rem;
	min-width: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.settings-nav-search-wrap {
	position: relative;
	flex: 0 1 auto;
	width: 14rem;
	max-width: 100%;
	min-width: 0;
	overflow: visible;
}

.settings-nav-search-icon {
	position: absolute;
	left: 0.65rem;
	top: 50%;
	transform: translateY(-50%);
	color: var(--primary-color, #274dc8);
	opacity: 0.75;
	pointer-events: none;
	z-index: 2;
	font-size: 0.9rem;
	line-height: 1;
}

.settings-nav-search-input {
	display: block;
	width: 100%;
	min-height: 2rem;
	padding: 0.35rem 0.65rem 0.35rem 2rem;
	font-size: 0.8125rem;
	border: 1px solid var(--border-color, #dee2e6);
	border-radius: var(--border-radius, 8px);
	background-color: var(--bg-white, #fff);
	box-shadow: none;
}

.settings-nav-search-input:focus {
	border-color: var(--primary-color, #274dc8);
	box-shadow: 0 0 0 0.15rem rgba(39, 77, 200, 0.15);
}

.settings-search-results {
	position: absolute;
	top: calc(100% + 0.35rem);
	left: 0;
	right: 0;
	z-index: 1080;
	max-height: min(60vh, 24rem);
	overflow: auto;
	background: var(--bg-white, #fff);
	border: 1px solid var(--border-color, #dee2e6);
	border-radius: var(--border-radius, 8px);
	box-shadow: 0 0.5rem 1.25rem rgba(0, 0, 0, 0.12);
	padding: 0.35rem 0;
}

.settings-search-group + .settings-search-group {
	border-top: 1px solid var(--border-color, #dee2e6);
	margin-top: 0.25rem;
	padding-top: 0.25rem;
}

.settings-search-group-title {
	padding: 0.25rem 0.75rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--text-muted, #6c757d);
}

.settings-search-result {
	display: block;
	width: 100%;
	text-align: left;
	border: 0;
	background: transparent;
	padding: 0.45rem 0.75rem;
	cursor: pointer;
}

.settings-search-result:hover,
.settings-search-result:focus {
	background: rgba(39, 77, 200, 0.08);
	outline: none;
}

.settings-search-result-current {
	background: rgba(39, 77, 200, 0.05);
}

.settings-search-result-text {
	display: block;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--text-dark, #2c3e50);
}

.settings-search-result-meta {
	display: block;
	font-size: 0.6875rem;
	color: var(--text-muted, #6c757d);
	margin-top: 0.1rem;
}

.settings-search-empty,
.settings-search-onpage-note {
	padding: 0.5rem 0.75rem;
	font-size: 0.8125rem;
	color: var(--text-muted, #6c757d);
}

.settings-content .settings-search-hidden {
	display: none !important;
}

.settings-content .settings-search-match {
	scroll-margin-top: 6rem;
}

.settings-content .settings-search-match > .col-form-label,
.settings-content .settings-search-match.settings-email-sms-title,
.settings-content .settings-panel-field.settings-search-match {
	outline: 2px solid rgba(39, 77, 200, 0.35);
	outline-offset: 2px;
	border-radius: 4px;
}

.settings-nav-select-wrap::after {
	content: "\f282";
	font-family: "bootstrap-icons";
	position: absolute;
	right: 0.85rem;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
	color: var(--primary-color, #274dc8);
	font-size: 0.9rem;
	opacity: 0.8;
}

.settings-nav-select {
	display: block;
	width: auto;
	max-width: 100%;
	min-width: 0;
	min-height: 2rem;
	box-sizing: border-box;
	padding: 0.35rem 2rem 0.35rem 0.65rem;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--text-dark, #2c3e50);
	background-color: var(--bg-white, #fff);
	border: 1px solid var(--border-color, #dee2e6);
	border-radius: var(--border-radius, 8px);
	box-shadow: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.settings-nav-select:hover {
	border-color: var(--primary-light, #4e73eb);
}

.settings-nav-select:focus {
	border-color: var(--primary-color, #274dc8);
	outline: none;
	box-shadow: 0 0 0 0.15rem rgba(39, 77, 200, 0.2);
}

/* Please wait modal — ίδιο πλάτος / στυλ με genericAlertModal & app dialogs */
#waitModal .modal-dialog {
	max-width: 500px;
}

#waitModal .modal-content {
	background-color: var(--bg-white);
	border: 1px solid var(--border-color);
	border-radius: var(--border-radius);
	box-shadow: var(--shadow-lg);
}

#waitModal.pvlhs-wait-modal--payment .modal-content {
	border-left: 4px solid var(--primary-color);
}

#waitModal .spinner-border {
	width: 2.5rem;
	height: 2.5rem;
}

#waitModal .wait-message {
	margin: 0;
	font-size: 14px;
	font-weight: 400;
	color: var(--text-muted);
	line-height: 1.5;
}

#waitModal .wait-abort-footer {
	display: none;
}

#waitModal.pvlhs-wait-modal--payment .wait-abort-footer {
	display: flex !important;
}

.modal-backdrop.emdi-page-wait-backdrop {
	z-index: 1050;
}

#waitModal.show {
	z-index: 1055;
}

@media (min-width: 768px) {
	.settings-nav-inner {
		flex-wrap: nowrap;
	}

	.settings-nav-select-wrap {
		flex: 0 1 auto;
		width: auto;
	}

	.settings-nav-search-wrap {
		flex: 0 1 auto;
		width: 14rem;
	}
}

.settings-nav-bar option {
	font-size: 0.875rem;
	font-weight: 400;
	padding: 0.25rem 0;
}

.settings-nav-bar option.settings-nav-group-label,
.settings-nav-bar option:disabled {
	font-weight: 400;
	color: var(--text-dark, #2c3e50);
}

.settings-page-wrap .settings-content {
	display: block !important;
	width: 100%;
	max-height: none !important;
	overflow: visible !important;
	min-height: 12rem;
	margin-top: 0;
	padding-bottom: 2rem;
	scroll-margin-top: calc(70px + 2.625rem + 0.5rem);
	visibility: visible !important;
	opacity: 1 !important;
}

.settings-page-wrap .card {
	/* SETTINGS ΘΕΛΟΥΝ ΙΔΙΟ CARD, ΜΟΝΟ ΑΛΛΟ BORDER */
	border-color: var(--border-color, #e0e0e0);
}

.settings-page-wrap .card-body {
	padding: 1rem;
	font-size: 0.875rem;
	color: var(--text-dark, #2c3e50);
}

.settings-page-wrap .settings-section .form-control,
.settings-page-wrap .settings-section .form-select,
.settings-page-wrap .settings-panel-form .form-control,
.settings-page-wrap .settings-panel-form .form-select,
.settings-page-wrap .card .form-control,
.settings-page-wrap .card .form-select,
.settings-page-wrap .settings-section .form-control-sm,
.settings-page-wrap .settings-section .form-select-sm,
.settings-page-wrap .settings-panel-form .form-control-sm,
.settings-page-wrap .settings-panel-form .form-select-sm,
.settings-page-wrap .card .form-control-sm,
.settings-page-wrap .card .form-select-sm {
	font-family: inherit;
	font-size: 0.875rem;
	color: var(--text-dark, #2c3e50);
	border-color: var(--border-color, #e0e0e0);
	border-radius: 4px;
	padding: 5px 10px;
}

.settings-page-wrap .settings-section .form-control:focus,
.settings-page-wrap .settings-section .form-select:focus,
.settings-page-wrap .settings-panel-form .form-control:focus,
.settings-page-wrap .settings-panel-form .form-select:focus,
.settings-page-wrap .card .form-control:focus,
.settings-page-wrap .card .form-select:focus {
	border-color: var(--primary-color, #274dc8);
	box-shadow: 0 0 0 0.15rem rgba(39, 77, 200, 0.15);
}

.settings-page-wrap .settings-section .text-muted,
.settings-page-wrap .settings-section .form-text,
.settings-page-wrap .settings-panel-form .text-muted,
.settings-page-wrap .settings-panel-form .form-text,
.settings-page-wrap .card .text-muted,
.settings-page-wrap .card .form-text {
	color: var(--text-muted, #495057) !important;
	font-size: 0.8125rem;
}

.settings-page-wrap .settings-section .alert,
.settings-page-wrap .settings-panel-form .alert {
	font-size: 0.875rem;
}

.settings-panel-form .settings-panel-field {
	margin-bottom: 1rem;
	align-items: center;
}

.settings-page-wrap .settings-panel-field>label.col-form-label,
.settings-page-wrap .settings-panel-field .settings-label-col label,
.settings-page-wrap .settings-panel-field .settings-label-col,
.settings-page-wrap .settings-panel-field .col-md-4 label,
.settings-page-wrap .settings-panel-field .col-lg-4 label,
.settings-page-wrap .settings-section .form-label,
.settings-page-wrap .settings-panel-form label.col-form-label {
	text-align: right !important;
	font-size: 0.875rem;
	font-weight: 300 !important;
	font-variation-settings: "wght" 300;
	color: var(--text-dark, #2c3e50);
	margin-bottom: 0;

}

.settings-page-wrap .settings-panel-field>.col-md-8,
.settings-page-wrap .settings-panel-field>.col-lg-8,
.settings-page-wrap .settings-panel-field>.settings-input-col {
	padding-left: 0.5rem;
}

@media (min-width: 768px) {

	.settings-page-wrap .settings-panel-field.row>.col-md-4,
	.settings-page-wrap .settings-panel-field.row>.settings-label-col,
	.settings-page-wrap .settings-panel-field.row>label.col-md-4 {
		flex: 0 0 15rem;
		max-width: 15rem;
		width: 15rem;
	}

	.settings-page-wrap .settings-panel-field.row>.col-md-8,
	.settings-page-wrap .settings-panel-field.row>.settings-input-col {
		flex: 0 1 auto;
		 
		max-width: calc(100% - 15rem - 0.5rem);
	}

	.settings-page-wrap .settings-panel-field.row>.settings-input-col-offset,
	.settings-page-wrap .settings-panel-field.row>.col-md-8.offset-md-4 {
		margin-left: 15rem;
	}
}

.settings-page-wrap .settings-panel-field>.col-md-8>.form-control:not(textarea),
.settings-page-wrap .settings-panel-field>.col-md-8>.form-select,
.settings-page-wrap .settings-panel-field>.settings-input-col>.form-control:not(textarea),
.settings-page-wrap .settings-panel-field>.settings-input-col>.form-select {
	 
	max-width: 22rem;
	flex: 0 1 auto;
}

/* ΡΥΘΜΙΣΕΙΣ — bounded numbers (min+max) ~100px */
.settings-page-wrap input.form-control[type="number"][min][max],
.settings-page-wrap input[type="number"].form-control[min][max] {
	width: 5rem;
	max-width: 6.25rem !important;
	flex: 0 0 auto;
}

.settings-page-wrap .settings-panel-field>.col-md-8>.input-group:not(.settings-email-sms-host-row):not(.settings-field-pwd),
.settings-page-wrap .settings-panel-field>.settings-input-col>.input-group:not(.settings-email-sms-host-row):not(.settings-field-pwd) {
	width: auto;
	max-width: 22rem;
	flex: 0 1 auto;
}

.settings-page-wrap .settings-panel-field>.col-md-8>.input-group.settings-field-pwd,
.settings-page-wrap .settings-panel-field>.settings-input-col>.input-group.settings-field-pwd {
	max-width: calc(6.3125rem + 2.75rem);
	flex: 0 1 auto;
}

.settings-page-wrap .settings-panel-field>.col-md-8>textarea.form-control,
.settings-page-wrap .settings-panel-field>.settings-input-col>textarea.form-control {
	width: 100%;
	max-width: 28.5625rem;
}

.settings-page-wrap .settings-panel-field>.col-md-8 .d-flex>.form-control:not(.settings-field-xl):not(.settings-field-lg):not(.settings-field-wide):not(.settings-field-addr):not(.settings-field-doy):not(.settings-field-vat):not(.settings-field-host):not(.settings-field-email):not([class*="settings-general-"]):not([class*="settings-customers-"]):not([class*="settings-inventory-"]):not([class*="settings-bridge-"]):not([class*="settings-sms-"]):not([class*="settings-email-"]),
.settings-page-wrap .settings-panel-field>.settings-input-col .d-flex>.form-control:not(.settings-field-xl):not(.settings-field-lg):not(.settings-field-wide):not(.settings-field-addr):not(.settings-field-doy):not(.settings-field-vat):not(.settings-field-host):not(.settings-field-email):not([class*="settings-general-"]):not([class*="settings-customers-"]):not([class*="settings-inventory-"]):not([class*="settings-bridge-"]):not([class*="settings-sms-"]):not([class*="settings-email-"]) {
	width: auto;
	max-width: 22rem;
	flex: 0 1 auto;
}

.settings-field-host {
	max-width: 9.3125rem;
}

.settings-field-email {
	max-width: 11.8125rem;
}

.settings-field-pwd {
	max-width: 6.3125rem;
}

.settings-field-cset {
	max-width: 7.0625rem;
}

.settings-field-doy,
.settings-general-vat.settings-field-doy {
	max-width: 12.8125rem;
}

.settings-field-vat,
.settings-general-vat {
	max-width: 10.5625rem;
}

.settings-field-addr {
	max-width: 15.8125rem;
}

.settings-field-lg {
	max-width: 20.3125rem;
}

.settings-field-xl {
	max-width: 26.0625rem;
}

.settings-field-wide {
	max-width: 28.5625rem;
}

.settings-field-narrow {
	max-width: 5.5625rem;
}

.settings-field-sms-text {
	max-width: 7.5625rem;
}

/* ------------------------------------------------------------------ */
/* ΡΥΘΜΙΣΕΙΣ — per-field widths by id (non-number only)               */
/* ------------------------------------------------------------------ */

/* General — company */
#f_name,
#f_work,
#f_url,
#f_phones,
#f_Logo_file {
	max-width: 26.0625rem !important;
	width: auto;
}

#f_currencysymbol,
#f_vat_prefix {
	max-width: 4.5rem !important;
	width: auto;
}

#f_map_brand {
	max-width: 10rem !important;
	width: auto;
}

#f_map_key {
	max-width: 20.3125rem !important;
	width: auto;
}

#f_map_code {
	max-width: 20.3125rem !important;
	width: auto;
}

#f_taxoffice {
	max-width: 12.8125rem !important;
	width: auto;
}

#f_vat {
	max-width: 10.5625rem !important;
	width: auto;
}

#f_address {
	max-width: 15.8125rem !important;
	width: auto;
}

#f_country {
	max-width: 12rem !important;
	min-width: 10rem;
	width: auto;
}

#f_language {
	max-width: 10rem !important;
	width: auto;
}

/* General — email / sms */
#f_Host {
	max-width: 9.3125rem !important;
	width: auto;
}

#f_email_provider,
#f_sms_provider {
	max-width: 7.5625rem !important;
	width: auto;
}

#f_Sender,
#f_Reply,
#f_CC,
#f_User,
#f_sms_user,
#f_sms_sender {
	max-width: 11.8125rem !important;
	width: auto;
}

#f_Password,
#f_sms_password {
	max-width: 6.3125rem !important;
	width: auto;
}

#f_Charset {
	max-width: 7.0625rem !important;
	width: auto;
}

#f_to {
	max-width: 28.5625rem !important;
	width: auto;
}

#f_text {
	max-width: 7.5625rem !important;
	width: auto;
}

#f_prefix {
	max-width: 4.5rem !important;
	width: auto;
}

/* Customers */
#f_cust_ignore_ids,
#f_disable_id_prefix,
#f_not_obliged_vat {
	max-width: 20.3125rem !important;
	width: auto;
}

#f_minypoloipo,
#f_sms_start_number,
#f_default_orio {
	max-width: 10rem !important;
	width: auto;
}

#f_cust_custom_separator {
	max-width: 4rem !important;
	width: auto;
}

/* Inventory */
#f_stock_calc_docs,
#f_price_lists,
#f_eplform,
#f_scaledirectory {
	max-width: 20.3125rem !important;
	width: auto;
}

#f_eplport {
	max-width: 12rem !important;
	width: auto;
}

#f_combined_date {
	max-width: 16rem !important;
	width: auto;
}

/* Apps — bridge / courier */
#f_internetvarconnect,
#f_status_field,
#f_categoryprefix,
#f_quantityvariable,
#f_domain_,
#f_dbcode,
#pk_httpkey,
#httpkey,
#reports_httpkey,
#f_pdf_attributes {
	max-width: 20.3125rem !important;
	width: auto;
}

#f_select_web_app {
	max-width: 11rem !important;
	width: auto;
}

#f_modifiedcustomers,
#f_customersconfirm,
#f_modifiedproducts,
#f_productsconfirm,
#f_productavailability,
#f_orderlist,
#f_selectedorder,
#f_confirmorder,
#f_cancelorder,
#f_customord1,
#f_customord2,
#f_deletetmp,
#f_senditem,
#f_sendcustomer {
	max-width: 28.5625rem !important;
	width: auto;
}

#f_script,
#f_temp {
	max-width: 28.5625rem !important;
	width: 100%;
}

/* Revenues */
#f_minsum,
#f_canceleddocs {
	max-width: 10rem !important;
	width: auto;
}

#f_calendar_link,
#f_emfanish_periodou,
#f_client_mail,
#f_touser_mail,
#f_fromuser_mail,
#f_client_sms {
	max-width: 28.5625rem !important;
	width: 100%;
}

#tax_gsis_user,
#tax_mydata_userid,
#tax_cashiermydata,
#tax_mydata_logos_docs,
#tax_mydata_logos,
#tax_oss_vat,
#tax_oss_item,
#tax_oss_limit,
#tax_oss_docs {
	max-width: 20.3125rem !important;
	width: auto;
}

#tax_branchmydata {
	max-width: 5rem !important;
	width: auto;
}

.settings-page-wrap .settings-panel-form .btn-success {
	background: linear-gradient(135deg, var(--primary-color, #274dc8) 0%, var(--primary-light, #4e73eb) 100%);
	border-color: var(--primary-color, #274dc8);
	color: var(--bg-white, #fff);
}

.settings-page-wrap .settings-panel-form .btn-success:hover {
	background: linear-gradient(135deg, var(--primary-dark, #1e3a9e) 0%, #3d5fd9 100%);
	border-color: var(--primary-dark, #1e3a9e);
	color: var(--bg-white, #fff);
}

.settings-page-wrap .settings-panel-form .btn-outline-secondary,
.settings-page-wrap .settings-panel-form .btn-outline-primary {
	font-size: 0.875rem;
}

.settings-page-wrap .settings-reports-api {
	background: var(--bg-light);
	border-color: var(--border-color) !important;
	color: var(--text-dark);
}

.settings-page-wrap .settings-reports-api .form-label {
	text-align: right !important;
	font-size: 0.8125rem;
	font-weight: 300 !important;
	font-variation-settings: "wght" 300;
	color: var(--text-muted, #495057);
}

.settings-page-wrap .settings-reports-api .settings-code-example {
	display: block;
	background: var(--bg-white);
	border: 1px solid var(--border-color);
	border-radius: 8px;
	padding: 0.5rem 0.75rem;
	color: var(--text-dark);
}

.settings-email-sms-block:last-of-type {
	border-bottom: none;
	margin-bottom: 0.5rem;
}

.settings-email-sms-title {
	margin: 0 0 1rem;
	padding-bottom: 0.35rem;
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--primary-color, #274dc8);
	border-bottom: 2px solid rgba(39, 77, 200, 0.15);
}

.settings-email-sms-host-row {
	width: auto;
	max-width: calc(9.3125rem + 2.375rem + 7.5625rem + 0.5rem);
	flex: 0 1 auto;
}

.settings-email-sms-host-row .settings-field-host,
.settings-email-sms-host-row>.form-control:first-child {
	max-width: 9.3125rem !important;
	flex: 0 1 9.3125rem;
}

.settings-email-sms-host-row .settings-email-port {
	max-width: 2.375rem;
	flex: 0 0 2.375rem;
}

.settings-email-sms-host-row .settings-email-provider,
.settings-email-sms-host-row .settings-sms-provider {
	max-width: 7.5625rem;
	flex: 0 0 7.5625rem;
}

.settings-email-sms-inline-selects .form-select {
	max-width: 8rem;
}

.settings-customers-sep {
	max-width: 4rem;
}

.settings-customers-num {
	max-width: 5rem;
}

.settings-customers-short {
	max-width: 10rem;
}

.settings-customers-obl {
	min-width: 9rem;
}

.settings-inventory-datetime {
	max-width: 16rem;
}

.settings-email-sms-text-row .form-check-label,
.settings-email-sms-prefix-row .col-form-label {
	font-size: 0.875rem;
	font-weight: 300 !important;
	font-variation-settings: "wght" 300;
	text-align: right !important;
	color: var(--text-dark, #2c3e50);
}

/* ΡΥΘΜΙΣΕΙΣ — dbgrid edit/add labels (embedded grids) */
body:has(.settings-sticky-stack) .dbgrid-field-label,
body:has(.settings-page-wrap) .dbgrid-field-label {
	font-weight: 300 !important;
	font-variation-settings: "wght" 300;
	text-align: right !important;
}

.settings-sms-prefix {
	max-width: 4.5rem;
}

.settings-bridge-form .settings-bridge-web-app {
	min-width: 8rem;
}

.settings-general-vat {
	max-width: 10.5625rem;
}

.settings-general-country {
	max-width: 12rem;
	min-width: 10rem;
}

.settings-general-map-brand {
	max-width: 10rem;
}

.emdi-pwa-install-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 0.75rem 1rem;
}

.emdi-pwa-install-bar-icon {
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 0.65rem;
	object-fit: contain;
}

.emdi-pwa-install-bar .emdi-pwa-install-bar-hint {
	color: inherit;
	opacity: 0.9;
}

.settings-panel-savebar {
	position: sticky;
	bottom: 0;
	z-index: 800;
	background: rgba(255, 255, 255, 0.95);
	border-top: 1px solid #dee2e6;
	margin-top: 1.5rem;
	margin-left: calc(-1 * var(--bs-card-spacer-x, 0.7rem));
	margin-right: calc(-1 * var(--bs-card-spacer-x, 0.7rem));
	padding: 0.5rem 1rem;
	border-radius: 0 0 var(--border-radius-lg, 12px) var(--border-radius-lg, 12px);
}

/* ΡΥΘΜΙΣΕΙΣ — REPORTS / API (ΑΠΟ app_settings.php) */
.settings-reports-example-type {
	max-width: 220px;
}

.cr-sql-editor-wrap .CodeMirror {
	min-height: 280px;
	height: auto;
	border: 1px solid var(--bs-border-color, #ced4da);
	border-radius: var(--bs-border-radius, 0.375rem);
	font-family: var(--bs-font-monospace, ui-monospace, monospace);
	font-size: 0.875rem;
}

.cr-sql-editor-wrap .CodeMirror-focused {
	border-color: #86b7fe;
	box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}


#cfModal .modal-dialog.cf-modal-resizable {
	width: min(1140px, calc(100vw - 2rem));
	max-width: calc(100vw - 2rem);
	min-width: 480px;
	height: min(720px, calc(100vh - 2rem));
	max-height: calc(100vh - 2rem);
	min-height: 420px;
	resize: both;
	overflow: auto;
	margin: 1rem auto;
	/* BOOTSTRAP ΒΑΖΕΙ pointer-events:none ΣΤΟ .modal-dialog — ΧΡΕΙΑΖΕΤΑΙ ΓΙΑ ΝΑ ΠΙΑΝΕΤΑΙ Η ΓΩΝΙΑ ΑΛΛΑΓΗΣ ΜΕΓΕΘΟΥΣ */
	pointer-events: auto;
}

#cfModal .modal-dialog.cf-modal-resizable .modal-content {
	height: 100%;
	min-height: 100%;
	display: flex;
	flex-direction: column;
}

#cfModal .modal-dialog.cf-modal-resizable .modal-body {
	flex: 1 1 auto;
	overflow: auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
}

#cfModal .modal-dialog.cf-modal-resizable #cfForm {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
}

#cfModal .modal-dialog.cf-modal-resizable .cr-sql-editor-wrap {
	flex: 1 1 auto;
	min-height: 200px;
	display: flex;
	flex-direction: column;
	max-width: 100%;
	overflow: hidden;
}

#cfModal .cr-sql-editor-wrap {
	max-width: 100%;
	overflow: hidden;
}

#cfModal .modal-dialog.cf-modal-resizable #cfForm > .row,
#cfModal .modal-dialog.cf-modal-resizable #cfForm > .cf-form-tabs,
#cfModal .modal-dialog.cf-modal-resizable #cfForm > .mt-3 {
	flex-shrink: 0;
}

#cfModal .modal-dialog.cf-modal-resizable .cf-form-tab-content {
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
}

#cfModal .modal-dialog.cf-modal-resizable .cf-form-tab-content > .tab-pane.active {
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
}

#cfModal #cfTabEdit .cf-var-toolbar {
	flex-shrink: 0;
}

#cfModal #cfTabPreview {
	min-height: 0;
}

#cfModal .cf-preview-frame {
	flex: 1 1 auto;
	display: block;
	width: 100%;
	min-height: 200px;
	height: 100%;
	border: 0;
	background: #fff;
}

#cfModal .modal-dialog.cf-modal-resizable .cr-sql-editor-wrap .CodeMirror,
#cfModal .modal-dialog.cf-modal-resizable .cr-sql-editor-wrap .CodeMirror-wrap {
	flex: 1 1 auto;
	width: 100%;
	min-height: 0;
	height: 100%;
	max-height: none;
	resize: none;
	overflow: hidden !important;
	box-sizing: border-box;
}

#cfModal .modal-dialog.cf-modal-resizable .cr-sql-editor-wrap .CodeMirror-scroll {
	min-height: 100%;
}


#cfModal .modal-dialog:not(.cf-modal-resizable) .cr-sql-editor-wrap .CodeMirror {
	width: 100%;
	min-width: 280px;
	height: 280px;
	min-height: 200px;
	max-height: 80vh;
	box-sizing: border-box;
}

.CodeMirror-hints {
	z-index: 2000 !important;
}

/* EMDI REPORT SQL — ΧΡΩΜΑΤΙΣΜΟΣ ΚΩΔΙΚΑ (CodeMirror) */
.cr-sql-editor-wrap .cm-emdi-param {
	color: #c2410c;
	font-weight: 600;
}

.cr-sql-editor-wrap .cm-emdi-marker {
	color: #7c3aed;
	font-weight: 600;
}

.cr-sql-editor-wrap .cm-s-eclipse .cm-keyword {
	color: #0000ff;
	font-weight: 600;
}

.cr-sql-editor-wrap .cm-s-eclipse .cm-builtin {
	color: #006060;
}

.cr-sql-editor-wrap .cm-s-eclipse .cm-string {
	color: #a31515;
}

.cr-sql-editor-wrap .cm-s-eclipse .cm-comment {
	color: #008000;
	font-style: italic;
}

.cr-sql-editor-wrap .cm-s-material-darker .cm-emdi-param {
	color: #fb923c;
}

.cr-sql-editor-wrap .cm-s-material-darker .cm-emdi-marker {
	color: #c084fc;
}

[data-emdi-theme="dark"] .cr-sql-editor-wrap .CodeMirror,
[data-bs-theme="dark"] .cr-sql-editor-wrap .CodeMirror {
	border-color: #495057;
}

[data-emdi-theme="dark"] .cr-sql-editor-wrap .CodeMirror-focused,
[data-bs-theme="dark"] .cr-sql-editor-wrap .CodeMirror-focused {
	border-color: #6ea8fe;
	box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

#settings-redirect {
	display: none;
}

/* DBGRID — ΚΟΛΛΗΤΑ TABS ΚΑΤΩ ΑΠΟ HEADER (ΧΩΡΙΣ BORDER) */
body:has(.dbgrid-tab-navigation) .sticky-top,
body:has(.settings-sticky-stack) .sticky-top {
	border-bottom: none;
}


/* STICKY ΓΡΑΜΜΗ ΕΡΓΑΛΕΙΩΝ — app_reports.php, app_settings.php */
body:has(.dbgrid-reports-top),
body:has(.settings-nav-bar) {
	overflow-x: hidden;
}

.dbgrid-reports-top {
	position: -webkit-sticky;
	position: sticky;
	top: 70px;
	z-index: 900;
	background: #f8f9fa;
	border-bottom: 1px solid var(--border-color, #dee2e6);
	padding: 4px 8px;
	margin: 0;
	border-radius: 0;
	box-shadow: none;
}

/* ΡΥΘΜΙΣΕΙΣ — NAV STICKY ΚΑΤΩ ΑΠΟ HEADER (ΠΑΝΕΛ — ΧΩΡΙΣ GRID) */
.settings-nav-bar {
	position: -webkit-sticky;
	position: sticky;
	top: 70px;
	z-index: 1005;
	background: #f8f9fa;
	border-bottom: 1px solid var(--border-color, #dee2e6);
	padding: 4px 8px;
	margin: 0;
	border-radius: 0;
	box-shadow: none;
	min-height: 2.625rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow: visible;
}

/* GRID — NAV + DBGRID TABS ΣΕ ΕΝΑ STICKY BLOCK (ΣΑΝ app_products_services.php) */
.settings-sticky-stack {
	position: -webkit-sticky;
	position: sticky;
	top: 70px;
	z-index: 1005;
	background: #f8f9fa;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.settings-sticky-stack .settings-nav-bar {
	position: static;
	top: auto;
	z-index: auto;
}

.settings-sticky-stack .dbgrid-tab-navigation {
	position: static;
	top: auto;
	z-index: auto;
	margin-top: 0;
}

body:has(.settings-sticky-stack) .dbgrid-container .dbgrid-page {
	scroll-margin-top: calc(70px + 2.625rem + 40px + 0.5rem);
}

.dbgrid-reports-form .form-label {
	font-size: 0.75rem;
}

.dbgrid-reports-form {
	width: 100%;
	max-width: 100%;
}

.dbgrid-reports-form .dbgrid-reports-report-col {
	min-width: 0;
}

.dbgrid-reports-form .dbgrid-reports-daterange-row {
	width: 100%;
	max-width: 100%;
}

.dbgrid-reports-form .dbgrid-reports-daterange {
	flex: 1 1 14.75rem;
	width: 14.75rem;
	max-width: 100%;
	min-width: 0;
}

.dbgrid-reports-form .dbgrid-reports-daterange .form-control {
	min-width: 0;
}

@media (min-width: 768px) {
	.dbgrid-reports-form .dbgrid-reports-report-col {
		flex: 1 1 12rem;
		min-width: 10rem;
		max-width: min(28rem, 42vw);
	}

	.dbgrid-reports-form .dbgrid-reports-daterange-col {
		flex: 0 0 auto;
		width: auto;
		max-width: none;
	}

	.dbgrid-reports-form .dbgrid-reports-daterange {
		flex: 0 0 14.75rem;
		width: 14.75rem;
	}
}


@media (max-width: 768px) {
	body.login-page {
		padding-top: 80px;
	}

	.sticky-top {
		min-height: 73px;
	}

	.dbgrid-reports-top,
	.settings-nav-bar,
	.settings-sticky-stack {
		top: 73px;
	}

	.settings-page-wrap .settings-content {
		scroll-margin-top: calc(73px + 5.25rem + 0.5rem);
	}

	body:has(.settings-sticky-stack) .dbgrid-container .dbgrid-page {
		scroll-margin-top: calc(73px + 5.25rem + 40px + 0.5rem);
	}

	body:has(> .dbgrid-tab-navigation),
	body:has(> .app-calendar-page),
	body:has(> .dbgrid-reports-top),
	body:has(.settings-sticky-stack),
	body:has(> .settings-nav-bar):not(:has(.settings-sticky-stack)) {
		padding-top: 73px;
	}

	body.login-page .container {
		align-items: flex-start;
		padding-top: 30px;
		padding-bottom: 30px;
	}

	body.login-page .wrapper-center-login {
		width: 96%;
		max-width: 460px;
		margin-top: 12px;
		padding: 12px;
	}

	.container-bottom {
		height: 80px;
	}

	/* Settings forms: buttons on same row as inputs - match purchases/sales padding */
	.settings-section form.row {
		margin-bottom: 0;
		margin-left: 0;
		margin-right: 0;
	}

	.settings-section form.row>.col-sm-4 {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
		margin-bottom: 5px;
		padding-left: 8px;
		padding-right: 8px;
	}

	.settings-section form.row>.col-sm-5 {
		width: auto;
		max-width: none;
		flex: 1 1 auto;
		margin-right: 0;
		padding-right: 8px;
		padding-left: 8px;
		margin-bottom: 5px;
	}

	.settings-section form.row>.col-sm-5>.form-control-sm,
	.settings-section form.row>.col-sm-5>.input-group {
		width: 100%;
	}

	.settings-section form.row>.col-sm-3 {
		width: auto;
		max-width: none;
		flex: 0 0 auto;
		display: flex;
		align-items: center;
		padding-left: 8px;
		padding-right: 8px;
		margin-left: 0;
		margin-bottom: 5px;
	}

	.settings-section form.row>.col-sm-3>.btn-sm {
		margin: 0;
	}

	/* Match purchases/sales form row spacing on mobile */
	.settings-section form.row.mb-3 {
		margin-bottom: 0.5rem;
	}

	/* Settings section card body padding on mobile - match purchases/sales */
	.settings-section .card-body {
		padding: 0.5rem !important;
	}


	.custom-reports-block .row.g-2.align-items-center.mb-3>.col-auto {
		width: 100%;
		max-width: 100%;
		margin-bottom: 8px;
	}

	.custom-reports-block .table-responsive {
		overflow-x: auto;
		overflow-y: visible;
	}

	.custom-reports-block .input-group.input-group-sm {
		flex-direction: column;
		align-items: stretch;
	}

	.custom-reports-block .input-group.input-group-sm>input,
	.custom-reports-block .input-group.input-group-sm>button {
		width: 100%;
		margin-bottom: 6px;
	}

	.custom-reports-block .btn {
		width: 100%;
		margin-bottom: 6px;
	}

	body {
		padding-top: 40px;
		padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px)) !important;
	}

	/* DBGRID / REPORTS / CALENDAR / SETTINGS GRID — ΣΤΟΙΧΙΣΗ ΜΕ FIXED HEADER */
	body:has(> .dbgrid-tab-navigation),
	body:has(> .app-calendar-page),
	body:has(> .dbgrid-reports-top),
	body:has(.settings-sticky-stack) {
		padding-top: 70px;
	}

	body:has(> .settings-nav-bar):not(:has(.settings-sticky-stack)) {
		padding-top: 70px;
	}

	body:has(> .dbgrid-tab-navigation)>.dbgrid-tab-navigation {
		margin-top: 0;
	}

	body:has(> .dbgrid-reports-top)>.dbgrid-reports-top,
	body:has(> .dbgrid-reports-top)>.dbgrid-container {
		margin-top: 0;
	}

	body:has(> .settings-nav-bar)>.settings-nav-bar {
		margin-top: 0;
	}

	body:has(> .dbgrid-reports-top) .sticky-top,
	body:has(> .settings-nav-bar) .sticky-top {
		border-bottom: none;
	}

	.sticky-doclist-navbar-form,
	.sticky-doclist-navbar-buttons,
	.wrapper-center,
	.wrapper-center-login {
		width: 98%;
		max-width: 98%;
	}

	.sticky-doclist-navbar-form input {
		max-width: 100%;
		width: 100%;
	}

	.sticky-doclist-navbar {
		height: auto;
		padding: 15px 10px;
	}

	.sticky-top-inner {
		padding-left: 10px;
		padding-right: 10px;
		padding-top: 10px;
		padding-bottom: 0px;
	}

	.sticky-top-navbar {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.logo {
		margin-right: 0;
		margin-bottom: 10px;
		float: none;
	}

	.logo img {
		max-width: 90px;
	}

	.sticky-top-welcome {
		margin-right: 0;
		float: none;
		width: 100%;
		text-align: left;
	}

	.sticky-top-username,
	.sticky-top-time {
		display: none;
	}

	.sticky-top-buttons {
		float: none;
		display: flex;
		flex-wrap: wrap;

		justify-content: flex-start;
	}

	.dropdown {
		margin-left: 0;
	}

	.menu-icon {
		display: inline-block;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		max-width: 64px;
	}

	.col-2.col-sm-2.text-center {
		width: 17%;
		margin-left: 0px;
		padding-left: 0px;
	}

	.col {
		flex: 1 0 54%;
	}

	.wrapper-center,
	.wrapper-center-login {
		padding: 10px;
	}

	/* Make dropdown menus smaller on mobile */
	.dropdown-menu {
		min-width: 120px;
		font-size: 12px;
		border-radius: 5px;
	}

	/* Make dropdown items smaller */
	.dropdown-item {
		padding: 4px 8px;
		font-size: 12px;
	}

	/* Make buttons smaller on mobile */
	.btn,
	.btn-primary,
	.btn-secondary,
	.btn-third {
		padding: 6px 12px;
		font-size: 12px;
		border-radius: 0;
	}

	/* Make pagination smaller */
	.pagination {
		font-size: 12px;
		margin: 0px;
	}

	.page-link {
		padding: 4px 8px;
		font-size: 12px;
		border-radius: 4px;
	}

	.page-item .page-link {
		margin: 0 1px;
	}

	/* Reduce table padding for small screens */
	.table td,
	.table th {
		padding: 6px 4px;
		font-size: 13px;
	}

	h2,
	.h2 {
		font-size: 14px;
	}

	/* Show only icons for profile and language dropdowns */
	.dropdown-profile span,
	.dropdown-profile .dropdown-text,
	.dropdown-lang span,
	.dropdown-lang .dropdown-text {
		display: none !important;
	}

	.sticky-top-buttons.doc-buttons-stack .dropdown-profile>.btn,
	.sticky-top-buttons.doc-buttons-stack .dropdown-lang>.btn {
		width: auto !important;
		min-width: 40px !important;
		max-width: none !important;
		padding: 0 !important;
	}

	.sticky-top-buttons.doc-buttons-stack .dropdown-profile>.btn .bi,
	.sticky-top-buttons.doc-buttons-stack .dropdown-lang>.btn .bi {
		margin-right: 0;
	}

	.sticky-top {
		position: fixed !important;
		top: 0;
		left: 0;
		width: 100vw;
		z-index: 1050;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
		background: linear-gradient(135deg, #fff 0%, #a48eb7 100%);
		border-bottom: 2px solid #e9ecef;
		min-height: 0;
	}

	body:has(> .dbgrid-tab-navigation) .sticky-top,
	body:has(> .app-calendar-page) .sticky-top {
		border-bottom: none;
	}

	.filters-text {
		font-size: 0px;
	}

	.export-text {
		font-size: 0px;
	}

	/* ΚΑΤΩ ΜΕΝΟΥ — ΟΡΑΤΟ ΣΕ ΚΙΝΗΤΟ (ΣΩΣΤΟ SELECTOR) */
	.main-menu.container-fluid,
	.main-menu.row.bottomnavbar,
	.row.justify-content-center.bottomnavbar.fixed-bottom {
		position: fixed !important;
		bottom: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100vw !important;
		max-width: 100vw !important;
		padding: 0 !important;
		margin: 0 !important;
		z-index: 1100 !important;
		display: flex !important;
		visibility: visible !important;
	}

	/* MODAL — ΚΑΤΩ ΜΕΝΟΥ ΔΕΝ ΚΑΛΥΠΤΕΙ FOOTER (bootstrap modal ~1055) */
	body.modal-open .row.justify-content-center.bottomnavbar.fixed-bottom {
		z-index: 1040 !important;
	}

	.main-menu .row.bottomnavbar {
		margin: 0 !important;
		width: 100% !important;
	}

	.settings-nav-inner {
		gap: 0.4rem;
		flex-wrap: wrap;
		align-items: center;
	}

	.settings-nav-label {
		font-size: 0.75rem;
		flex: 0 0 auto;
	}

	.settings-nav-select-wrap {
		flex: 1 1 0;
		width: auto;
		max-width: none;
		min-width: 0;
	}

	.settings-nav-search-wrap {
		flex: 1 1 100%;
		width: 100%;
		max-width: none;
	}

	.settings-nav-search-input {
		min-height: 2.75rem;
		font-size: 16px;
	}

	.settings-nav-select {
		min-height: 2.75rem;
		font-size: 16px;
		width: 100%;
		max-width: 100%;
	}

	.settings-search-results {
		max-height: min(50vh, 20rem);
		-webkit-overflow-scrolling: touch;
	}

	.settings-search-result {
		padding: 0.65rem 0.75rem;
		min-height: 2.75rem;
		-webkit-tap-highlight-color: rgba(39, 77, 200, 0.12);
	}

	.settings-search-result-text {
		font-size: 0.875rem;
	}

	.settings-nav-bar {
		min-height: 0;
		padding: 6px 8px;
	}

	.settings-nav-label > span {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	.settings-panel-savebar .btn {
		width: 100%;
	}

	.settings-page-wrap .settings-panel-field>label.col-form-label,
	.settings-page-wrap .settings-panel-field .settings-label-col label,
	.settings-page-wrap .settings-panel-field .settings-label-col,
	.settings-page-wrap .settings-panel-field .col-md-4 label,
	.settings-page-wrap .settings-section .form-label {
		text-align: left !important;
		font-weight: 300 !important;
		font-variation-settings: "wght" 300;
		padding-right: 0;
		padding-bottom: 0.25rem;
	}

	.settings-page-wrap .settings-panel-field.row>.col-md-4,
	.settings-page-wrap .settings-panel-field.row>.settings-label-col,
	.settings-page-wrap .settings-panel-field.row>label.col-md-4,
	.settings-page-wrap .settings-panel-field.row>.col-md-8,
	.settings-page-wrap .settings-panel-field.row>.settings-input-col {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
	}

	/* Mobile exception: rows that are only label + single checkbox */
	.settings-page-wrap .settings-panel-field.settings-panel-field-checkbox.row {
		flex-wrap: nowrap;
		align-items: center;
	}

	.settings-page-wrap .settings-panel-field.settings-panel-field-checkbox.row>.settings-label-col,
	.settings-page-wrap .settings-panel-field.settings-panel-field-checkbox.row>label.col-md-4 {
		flex: 1 1 auto;
		max-width: none;
		width: auto;
		padding-bottom: 0;
	}

	.settings-page-wrap .settings-panel-field.settings-panel-field-checkbox.row>.settings-input-col,
	.settings-page-wrap .settings-panel-field.settings-panel-field-checkbox.row>.col-md-8 {
		flex: 0 0 auto;
		max-width: none;
		width: auto;
	}

	.settings-page-wrap .settings-panel-field.row>.settings-input-col-offset,
	.settings-page-wrap .settings-panel-field.row>.col-md-8.offset-md-4 {
		margin-left: 0;
	}

	.settings-page-wrap .settings-panel-field>.col-md-8>.form-control,
	.settings-page-wrap .settings-panel-field>.col-md-8>.form-select,
	.settings-page-wrap .settings-panel-field>.col-md-8>.input-group,
	.settings-page-wrap .settings-panel-field>.col-md-8>textarea.form-control,
	.settings-page-wrap .settings-panel-field>.col-md-8 .d-flex>.form-control,
	.settings-page-wrap .settings-panel-field>.col-md-8 [class*="settings-field-"],
	.settings-page-wrap .settings-panel-field>.settings-input-col>.form-control,
	.settings-page-wrap .settings-panel-field>.settings-input-col>.form-select,
	.settings-page-wrap .settings-panel-field>.settings-input-col>.input-group,
	.settings-page-wrap .settings-panel-field>.settings-input-col>textarea.form-control,
	.settings-page-wrap .settings-panel-field>.settings-input-col .d-flex>.form-control,
	.settings-page-wrap .settings-panel-field>.settings-input-col [class*="settings-field-"] {
		max-width: 100% !important;
		width: 100%;
	}

	.settings-email-sms-host-row {
		max-width: 100%;
		width: 100%;
	}

}

/* ΑΡΧΙΚΗ + ΠΡΟΣΑΡΜΟΣΜΕΝΑ ΚΟΥΜΠΙΑ */
.emdi-home {
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
}

.emdi-home-welcome h3 {
	font-weight: 600;
}

.emdi-home-kpi {
	border-left: 4px solid var(--primary-color, #274dc8);
}

.emdi-home-kpi-rev {
	border-left-color: #198754;
}

.emdi-home-kpi-exp {
	border-left-color: #dc3545;
}

.emdi-home-kpi-profit {
	border-left-color: #0d6efd;
}

.emdi-home-kpi-negative {
	border-left-color: #fd7e14;
}

.emdi-home-kpi-negative .emdi-home-kpi-value {
	color: #c45a00;
}

.emdi-home-kpi-value {
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--text-dark, #2c3e50);
}

.emdi-home-chart-wrap {
	position: relative;
	width: 100%;
	height: 220px;
	min-height: 180px;
}

.emdi-home-charts .card-header {
	font-size: 0.95rem;
	font-weight: 600;
}

.emdi-home-tile {
	min-height: 6.5rem;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
	color: inherit;
}

.emdi-home-tile:hover {
	transform: translateY(-2px);
	box-shadow: 0 0.35rem 0.75rem rgba(0, 0, 0, 0.12) !important;
}

.emdi-home-tile-icon {
	font-size: 1.75rem;
	color: var(--primary-color, #0d6efd);
}

.emdi-home-tile-img {
	max-width: 2.5rem;
	max-height: 2.5rem;
	object-fit: contain;
}

.emdi-home-tile-label {
	line-height: 1.2;
	color: #333;
}

/* ICON-ONLY — ΙΔΙΟ ΣΤΥΛ ΜΕ btn btn-primary btn-sm (π.χ. dbgrid search) */
.emdi-custom-buttons-wrap .dropdown-toggle.emdi-cb-toggle-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.2rem;
	line-height: 1;
	white-space: nowrap;
}

.emdi-custom-buttons-wrap .dropdown-toggle.emdi-cb-toggle-icon .bi {
	font-size: 1rem;
	line-height: 1;
	margin: 0;
}


.dbgrid-edit-form .dbgrid-form-header .emdi-custom-buttons-wrap {
	flex-shrink: 0;
}

/* ΚΟΥΜΠΙΑ — ΧΩΡΙΣ BORDER-RADIUS (tenant + dbgrid + bootstrap groups) */
.btn,
.btn-sm,
.btn-lg,
.btn-group>.btn,
.btn-group>.btn:first-child,
.btn-group>.btn:last-child,
.btn-group-vertical>.btn,
.input-group>.btn,
.dbgrid-page .btn,
.dbgrid-container .btn,
.dbgrid-export .btn,
.dbgrid-export .dbgrid-print-btn,
.sales-save-btn,
.sales-add-btn,
.sales-clear-btn,
.sales-delete-btn,
.sticky-top .btn,
.bottomnavbar .btn {
	border-radius: 0 !important;
}

/* =============================================================================
   ΣΚΟΤΕΙΝΟ ΘΕΜΑ — EMDIWEB TENANT
   ============================================================================= */

[data-emdi-theme="dark"] body,
[data-bs-theme="dark"] body {
	background: var(--bg-light);
	background-image: none;
	color: var(--text-dark);
}

[data-emdi-theme="dark"] h1,
[data-emdi-theme="dark"] .h1,
[data-emdi-theme="dark"] h2,
[data-emdi-theme="dark"] .h2,
[data-emdi-theme="dark"] a:not(.btn):not(.page-link):not(.dropdown-item):not(.dbgrid-nav-link):not(.fc-col-header-cell-cushion):not(.fc-daygrid-day-number),
[data-bs-theme="dark"] h1,
[data-bs-theme="dark"] .h1,
[data-bs-theme="dark"] h2,
[data-bs-theme="dark"] .h2,
[data-bs-theme="dark"] a:not(.btn):not(.page-link):not(.dropdown-item):not(.dbgrid-nav-link):not(.fc-col-header-cell-cushion):not(.fc-daygrid-day-number) {
	color: var(--primary-color);
}

[data-emdi-theme="dark"] .btn-primary,
[data-emdi-theme="dark"] a.btn-primary,
[data-bs-theme="dark"] .btn-primary,
[data-bs-theme="dark"] a.btn-primary {
	color: #fff;
}

[data-emdi-theme="dark"] .doc-buttons-stack a.btn.btn-primary .bi,
[data-emdi-theme="dark"] .dbgrid-form-header a.dbgrid-documents-btn .bi,
[data-bs-theme="dark"] .doc-buttons-stack a.btn.btn-primary .bi,
[data-bs-theme="dark"] .dbgrid-form-header a.dbgrid-documents-btn .bi {
	color: #fff;
}

[data-emdi-theme="dark"] .wrapper-center,
[data-emdi-theme="dark"] .wrapper-center-login,
[data-bs-theme="dark"] .wrapper-center,
[data-bs-theme="dark"] .wrapper-center-login {
	background: var(--bg-white);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .sticky-top,
[data-bs-theme="dark"] .sticky-top {
	background: linear-gradient(135deg, #2a2d3a 0%, #3d3550 100%);
	border-bottom-color: var(--border-color);
}

[data-emdi-theme="dark"] .sticky-top-navbar,
[data-bs-theme="dark"] .sticky-top-navbar {
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .sticky-doclist-navbar,
[data-bs-theme="dark"] .sticky-doclist-navbar {
	background: var(--primary-dark);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .sticky-doclist-navbar-form input,
[data-bs-theme="dark"] .sticky-doclist-navbar-form input {
	background: var(--bg-white);
	border-color: var(--primary-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .table,
[data-emdi-theme="dark"] .table-responsive-box,
[data-bs-theme="dark"] .table,
[data-bs-theme="dark"] .table-responsive-box {
	background: var(--bg-white);
	border-color: var(--border-color);
}

[data-emdi-theme="dark"] .table td,
[data-emdi-theme="dark"] .table th,
[data-bs-theme="dark"] .table td,
[data-bs-theme="dark"] .table th {
	border-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .table .thead-dark th,
[data-bs-theme="dark"] .table .thead-dark th {
	background: #3a3f4f;
	color: var(--text-dark);
	border-color: var(--border-color);
}

[data-emdi-theme="dark"] .table-responsive-box thead th,
[data-bs-theme="dark"] .table-responsive-box thead th {
	background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary-color) 100%);
}

[data-emdi-theme="dark"] .table-responsive-box::-webkit-scrollbar-track,
[data-bs-theme="dark"] .table-responsive-box::-webkit-scrollbar-track {
	background: #2a2e3a;
}

[data-emdi-theme="dark"] .table-responsive-box::-webkit-scrollbar-thumb,
[data-bs-theme="dark"] .table-responsive-box::-webkit-scrollbar-thumb {
	background: #5a6275;
}

[data-emdi-theme="dark"] .form-control,
[data-emdi-theme="dark"] .form-select,
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
	background-color: var(--bg-white);
	border-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .form-control:focus,
[data-emdi-theme="dark"] .form-select:focus,
[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
	background-color: var(--bg-white);
	border-color: var(--primary-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .dropdown-menu,
[data-bs-theme="dark"] .dropdown-menu {
	background: var(--bg-white);
	border-color: var(--border-color);
}

[data-emdi-theme="dark"] .dropdown-item,
[data-bs-theme="dark"] .dropdown-item {
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .dropdown-item:focus,
[data-emdi-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus,
[data-bs-theme="dark"] .dropdown-item:hover {
	background-color: #3a3f4f;
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .btn-third,
[data-bs-theme="dark"] .btn-third {
	background-color: var(--bg-white);
	border-color: var(--border-color);
	color: var(--text-muted);
}

[data-emdi-theme="dark"] .btn-third:hover,
[data-bs-theme="dark"] .btn-third:hover {
	background-color: #3a3f4f;
	border-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .card,
[data-emdi-theme="dark"] .card-body,
[data-bs-theme="dark"] .card,
[data-bs-theme="dark"] .card-body {
	background: var(--bg-white);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .card-header,
[data-bs-theme="dark"] .card-header {
	background: #3a3f4f !important;
	color: var(--text-dark) !important;
}

[data-emdi-theme="dark"] .row.justify-content-center.bottomnavbar.py-2.fixed-bottom.shadow,
[data-bs-theme="dark"] .row.justify-content-center.bottomnavbar.py-2.fixed-bottom.shadow {
	background: rgba(30, 32, 42, 0.96);
	border-top-color: var(--border-color);
}

[data-emdi-theme="dark"] .item-suggestions,
[data-bs-theme="dark"] .item-suggestions {
	background: var(--bg-white);
	border-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .settings-page-wrap .settings-section,
[data-emdi-theme="dark"] .settings-page-wrap .settings-panel-form,
[data-emdi-theme="dark"] .settings-page-wrap .card,
[data-bs-theme="dark"] .settings-page-wrap .settings-section,
[data-bs-theme="dark"] .settings-page-wrap .settings-panel-form,
[data-bs-theme="dark"] .settings-page-wrap .card {
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .settings-nav-bar,
[data-bs-theme="dark"] .settings-nav-bar,
[data-emdi-theme="dark"] .settings-sticky-stack,
[data-bs-theme="dark"] .settings-sticky-stack {
	background: rgba(30, 32, 42, 0.96);
	border-bottom-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .settings-panel-savebar,
[data-bs-theme="dark"] .settings-panel-savebar {
	background: rgba(30, 32, 42, 0.96) !important;
	border-top-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .emdi-home-kpi-value,
[data-emdi-theme="dark"] .emdi-home-tile-label,
[data-bs-theme="dark"] .emdi-home-kpi-value,
[data-bs-theme="dark"] .emdi-home-tile-label {
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .emdi-home-tile,
[data-bs-theme="dark"] .emdi-home-tile {
	background: var(--bg-white);
}

[data-emdi-theme="dark"] .alert-secondary,
[data-bs-theme="dark"] .alert-secondary {
	background: #3a3f4f;
	border-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .modal-content,
[data-bs-theme="dark"] .modal-content {
	background: var(--bg-white);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] #waitModal .modal-content,
[data-bs-theme="dark"] #waitModal .modal-content {
	background-color: var(--bg-white);
	border-color: var(--border-color);
	color: var(--text-dark);
	box-shadow: var(--shadow-lg);
}

[data-emdi-theme="dark"] #waitModal .wait-message,
[data-bs-theme="dark"] #waitModal .wait-message {
	color: var(--text-muted);
}

[data-emdi-theme="dark"] .modal-header,
[data-emdi-theme="dark"] .modal-footer,
[data-bs-theme="dark"] .modal-header,
[data-bs-theme="dark"] .modal-footer {
	border-color: var(--border-color);
}

[data-emdi-theme="dark"] .list-group-item,
[data-bs-theme="dark"] .list-group-item {
	background: var(--bg-white);
	border-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .daterangepicker,
[data-bs-theme="dark"] .daterangepicker {
	background: var(--bg-white);
	border-color: var(--border-color);
	color: var(--text-dark);
}

[data-emdi-theme="dark"] .daterangepicker .calendar-table,
[data-bs-theme="dark"] .daterangepicker .calendar-table {
	background: var(--bg-white);
	border-color: var(--border-color);
}

[data-emdi-theme="dark"] .daterangepicker td.off,
[data-emdi-theme="dark"] .daterangepicker td.off.in-range,
[data-bs-theme="dark"] .daterangepicker td.off,
[data-bs-theme="dark"] .daterangepicker td.off.in-range {
	background: var(--bg-light);
	color: var(--text-muted);
}