/* E-TEL Admin integration adapters — consumes etel-design-system.css tokens. */
:root {
  --etel-midnight-charcoal: #101620;
  --etel-theme-primary: #ED1C24;
  --etel-theme-action: #D71920;
  --etel-theme-accent: #AFE8F2;
  --etel-theme-accent-ink: #17788B;
  --etel-theme-accent-soft: #EAF8FB;
  --etel-theme-primary-soft: #FFF0F1;
  --etel-theme-indicator: #FF646C;
  --etel-brand-red: var(--etel-theme-primary); --etel-action: var(--etel-theme-action); --etel-action-hover: color-mix(in srgb,var(--etel-theme-action) 92%,#000); --etel-action-pressed: color-mix(in srgb,var(--etel-theme-action) 82%,#000);
  --etel-brand-cyan: var(--etel-theme-accent); --etel-accent-ink: var(--etel-theme-accent-ink); --etel-accent-soft: var(--etel-theme-accent-soft); --etel-selected: var(--etel-theme-accent-soft); --etel-focus: var(--etel-theme-accent-ink); --etel-sidebar-indicator: var(--etel-theme-indicator);
  --etel-primary-ink: color-mix(in srgb,var(--etel-theme-action) 84%,#000); --etel-red-soft: var(--etel-theme-primary-soft); --etel-sidebar-active: color-mix(in srgb,var(--etel-theme-primary) 16%,var(--etel-midnight-charcoal));
  --bg: var(--etel-canvas); --card: var(--etel-surface); --line: var(--etel-border); --ink: var(--etel-text); --muted: var(--etel-muted); --radius: var(--etel-radius-card);
  --navy-950: var(--etel-sidebar); --navy-900: var(--etel-sidebar); --navy-800: var(--etel-surface-soft); --navy-700: var(--etel-text); --navy: var(--etel-sidebar);
  --gold: var(--etel-action); --gold-light: var(--etel-brand-cyan); --gold-ink: var(--etel-on-action); --gold-soft: var(--etel-red-soft); --grad-gold: var(--etel-action); --grad-navy: var(--etel-sidebar);
  --sidebar-bg: var(--etel-sidebar); --sidebar-brand: var(--etel-sidebar-ink); --sidebar-fg: var(--etel-sidebar-muted); --sidebar-fg-strong: var(--etel-sidebar-ink); --sidebar-hover: var(--etel-sidebar-hover); --sidebar-active: var(--etel-sidebar-active); --sidebar-active-fg: var(--etel-sidebar-ink);
  --header-bg: var(--etel-surface); --header-title: var(--etel-text); --header-fg: var(--etel-text); --header-line: var(--etel-border); --header-btn-bg: var(--etel-surface); --header-btn-line: var(--etel-control-border); --header-btn-hover-line: var(--etel-accent-ink);
  --shadow-sm: var(--etel-shadow-card); --shadow-md: var(--etel-shadow-overlay); --topbar-h: var(--etel-topbar-height); --sidebar-w: var(--etel-sidebar-width); --content-max: none; --font-sans: var(--etel-font-sans); --font-display: var(--etel-font-sans);
}
html[data-density="compact"] .etel-app { --etel-control-height: var(--etel-control-compact); --etel-table-row: var(--etel-table-row-compact); }
html[data-sidebar-skin="dark"] { --sidebar-bg: var(--etel-sidebar); --sidebar-fg: var(--etel-sidebar-muted); --sidebar-fg-strong: var(--etel-sidebar-ink); --sidebar-brand: var(--etel-sidebar-ink); --sidebar-muted: var(--etel-sidebar-muted); --sidebar-hover: var(--etel-sidebar-hover); --sidebar-active-fg: var(--etel-sidebar-ink); }
html[data-sidebar-skin="light"],html[data-theme][data-sidebar-skin="light"] { --sidebar-bg: var(--etel-on-action); --sidebar-fg: #566176; --sidebar-fg-strong: var(--etel-midnight-charcoal); --sidebar-brand: var(--etel-midnight-charcoal); --sidebar-muted: #738096; --sidebar-hover: #EEF1F5; --sidebar-active-fg: var(--etel-midnight-charcoal); }
html[data-sidebar-skin="gradient"] { --sidebar-bg: linear-gradient(160deg,var(--etel-midnight-charcoal) 0%,var(--etel-sidebar-hover) 62%,var(--etel-sidebar-active) 100%); --sidebar-fg: var(--etel-sidebar-muted); --sidebar-fg-strong: var(--etel-sidebar-ink); --sidebar-brand: var(--etel-sidebar-ink); --sidebar-muted: var(--etel-sidebar-muted); --sidebar-hover: color-mix(in srgb,var(--etel-sidebar-ink) 8%,transparent); --sidebar-active-fg: var(--etel-sidebar-ink); }
html[data-header-skin="light"] { --header-bg: var(--etel-on-action); --header-title: var(--etel-midnight-charcoal); --header-fg: var(--etel-midnight-charcoal); --header-line: #DCE3EC; --header-btn-bg: var(--etel-on-action); --header-btn-line: #C9D3E1; --header-btn-hover-line: var(--etel-brand-red); }
html[data-header-skin="dark"] { --header-bg: var(--etel-midnight-charcoal); --header-title: var(--etel-sidebar-ink); --header-fg: var(--etel-sidebar-ink); --header-line: color-mix(in srgb,var(--etel-sidebar-ink) 14%,transparent); --header-btn-bg: var(--etel-sidebar-hover); --header-btn-line: color-mix(in srgb,var(--etel-sidebar-ink) 20%,transparent); --header-btn-hover-line: var(--etel-brand-cyan); }
html[data-header-skin="gradient"] { --header-bg: linear-gradient(100deg,var(--etel-midnight-charcoal) 0%,var(--etel-sidebar-hover) 58%,var(--etel-sidebar-active) 100%); --header-title: var(--etel-sidebar-ink); --header-fg: var(--etel-sidebar-ink); --header-line: color-mix(in srgb,var(--etel-sidebar-ink) 14%,transparent); --header-btn-bg: color-mix(in srgb,var(--etel-sidebar-ink) 8%,transparent); --header-btn-line: color-mix(in srgb,var(--etel-sidebar-ink) 20%,transparent); --header-btn-hover-line: var(--etel-brand-cyan); }
html { max-width: 100%; overflow-x: clip; }
body.etel-app { min-width: 0; max-width: 100%; margin: 0; overflow-x: clip; background: var(--etel-canvas); color: var(--etel-text); font-family: var(--etel-font-sans); font-size: var(--etel-font-body); line-height: var(--etel-line-body); letter-spacing: normal; }
html[data-bs-theme="dark"] body.etel-app,html[data-bs-theme="dark"] .etel-app .cmc-main,html[data-bs-theme="dark"] .etel-app .cmc-content { background: var(--etel-sidebar); }
html[data-bs-theme="dark"] { --etel-primary-ink: color-mix(in srgb,var(--etel-theme-primary) 55%,#fff); --etel-red-soft: color-mix(in srgb,var(--etel-theme-primary) 22%,var(--etel-midnight-charcoal)); --etel-accent-ink: var(--etel-theme-accent); --etel-accent-soft: color-mix(in srgb,var(--etel-theme-primary) 18%,var(--etel-midnight-charcoal)); --etel-selected: var(--etel-accent-soft); --etel-focus: var(--etel-theme-accent); }
.etel-app h1,.etel-app h2,.etel-app h3,.etel-app h4,.etel-app h5,.etel-app h6,.etel-app .brand-name,.etel-app .login-title { color: var(--etel-text); font-family: var(--etel-font-sans); }
.etel-app a { color: var(--etel-link); }.etel-app a:hover { color: var(--etel-link-hover); }.etel-app .text-gold { color: var(--etel-accent-ink) !important; }
.etel-app .etel-skip-link { position: fixed; inset-block-start: var(--etel-space-2); inset-inline-start: var(--etel-space-2); z-index: var(--etel-z-toast); padding: var(--etel-space-2) var(--etel-space-3); border-radius: var(--etel-radius-control); background: var(--etel-surface); color: var(--etel-text); }

/* Application shell */
.etel-app .cmc-sidebar { width: var(--etel-sidebar-width); z-index: var(--etel-z-desktop-sidebar); background: var(--sidebar-bg); color: var(--sidebar-fg); box-shadow: none; }
.etel-app .cmc-sidebar .brand { min-height: var(--etel-topbar-height); padding: var(--etel-space-2) var(--etel-space-4); }
.etel-app .brand::after { background: var(--etel-border); opacity: .2; }
.etel-app .brand-settings-logo { width: 111px; max-width: 111px; height: 50px; max-height: 50px; object-fit: contain; object-position: left center; filter: none; }
.etel-app .brand-mark { background: var(--etel-action); color: var(--etel-on-action); }.etel-app .brand-name { color: var(--sidebar-brand); }.etel-app .brand-sub { color: var(--etel-brand-cyan); }
.etel-app .cmc-nav { padding: var(--etel-space-3) var(--etel-space-3) var(--etel-space-4); }
.etel-app .nav-section { margin: var(--etel-space-4) var(--etel-space-2) var(--etel-space-2); color: var(--sidebar-muted); font-size: var(--etel-font-micro); font-weight: 600; line-height: var(--etel-line-body); letter-spacing: .06em; }
.etel-app .cmc-nav .nav-link { min-height: 36px; margin: 0 0 var(--etel-space-1); padding: var(--etel-space-2); gap: var(--etel-space-2); border: 0; border-radius: var(--etel-radius-control); color: var(--sidebar-fg); font-size: var(--etel-font-ui); line-height: var(--etel-line-body); transform: none; }
.etel-app .cmc-nav .nav-link i { width: 16px; color: currentColor; font-size: 1rem; opacity: 1; }
.etel-app .cmc-nav .nav-link:hover { background: var(--sidebar-hover); color: var(--sidebar-fg-strong); transform: none; }
.etel-app .cmc-nav .nav-link.active,.etel-app .cmc-nav .nav-sub .nav-sub-link.active { background: var(--etel-sidebar-active); color: var(--sidebar-active-fg); }
.etel-app .cmc-nav .nav-link.active::before { width: 3px; background: var(--etel-sidebar-indicator); }.etel-app .cmc-nav .nav-link.active i { color: var(--etel-sidebar-indicator); }
.etel-app .sidebar-user { border-color: color-mix(in srgb, var(--etel-sidebar-ink) 16%, transparent); border-radius: var(--etel-radius-card); background: var(--etel-sidebar-hover); }
.etel-app .sidebar-user-main,.etel-app .sidebar-user-main:hover { color: var(--etel-sidebar-ink); }.etel-app .sidebar-user-main small { color: var(--etel-sidebar-muted); }
.etel-app .sidebar-user-action { color: var(--etel-sidebar-muted); }.etel-app .sidebar-user-action:hover { background: var(--etel-sidebar-active); color: var(--etel-sidebar-ink); }
.etel-app .sidebar-collapse-toggle { z-index: calc(var(--etel-z-desktop-sidebar) + 11); border-color: var(--etel-border); background: var(--etel-sidebar-hover); color: var(--etel-sidebar-ink); }
.etel-app .cmc-main,.etel-app .cmc-content { background: var(--etel-canvas); color: var(--etel-text); }
.etel-app .cmc-topbar { min-height: var(--etel-topbar-height); padding: 0 var(--etel-space-5); z-index: var(--etel-z-topbar); border-color: var(--header-line); background: var(--header-bg); color: var(--header-fg); box-shadow: none; }
html[data-header-skin] body.etel-app .cmc-topbar { background: var(--header-bg); color: var(--header-fg); border-color: var(--header-line); }
.etel-app .page-title { color: var(--header-title); font-size: var(--etel-font-page); font-weight: 600; line-height: var(--etel-line-heading); }.etel-app .page-title::after { width: 24px; height: 2px; margin-top: var(--etel-space-2); background: var(--etel-brand-red); }
.etel-app .unit-editor-icon,.etel-app .contact-form-section-icon { color: var(--etel-midnight-charcoal); }
.etel-app .global-search { max-width: 450px; }.etel-app .global-search-shell { min-height: var(--etel-control-height); border-color: var(--etel-control-border); border-radius: var(--etel-radius-control); background: var(--etel-surface); box-shadow: none; }
.etel-app .global-search-shell:focus-within { border-color: var(--etel-focus); outline: var(--etel-focus-width) solid var(--etel-focus); outline-offset: var(--etel-focus-offset); }
.etel-app .global-search-shell input { color: var(--etel-text); font-size: var(--etel-font-ui); }.etel-app .global-search-shell input::placeholder { color: var(--etel-muted); opacity: 1; }
.etel-app .global-search-results { z-index: var(--etel-z-popover); border-color: var(--etel-border); border-radius: var(--etel-radius-overlay); background: var(--etel-surface); box-shadow: var(--etel-shadow-overlay); }
.etel-app .cmc-topbar .btn-light { min-width: var(--etel-control-height); min-height: var(--etel-control-height); border-color: var(--header-btn-line); border-radius: var(--etel-radius-control); background: var(--header-btn-bg); color: var(--header-fg); box-shadow: none; }
.etel-app .cmc-topbar .btn-light:hover { border-color: var(--header-btn-hover-line); background: var(--etel-hover); color: var(--header-fg); transform: none; box-shadow: none; }
html[data-header-skin="light"] body.etel-app .cmc-topbar .global-search-shell { border-color: var(--header-btn-line); background: var(--header-btn-bg); color: #566176; }
html[data-header-skin="light"] body.etel-app .cmc-topbar .global-search-shell input { color: var(--etel-midnight-charcoal); }
html[data-header-skin="dark"] body.etel-app .cmc-topbar .global-search-shell,html[data-header-skin="gradient"] body.etel-app .cmc-topbar .global-search-shell { border-color: var(--header-btn-line); background: var(--header-btn-bg); color: var(--etel-sidebar-muted); }
html[data-header-skin="dark"] body.etel-app .cmc-topbar .global-search-shell input,html[data-header-skin="gradient"] body.etel-app .cmc-topbar .global-search-shell input { color: var(--etel-sidebar-ink); }
.etel-app .cmc-content { width: 100%; max-width: var(--content-max); margin-inline: auto; padding: var(--etel-space-5); }.etel-app .cmc-footer { padding: var(--etel-space-3) var(--etel-space-5); border-color: var(--etel-border); color: var(--etel-muted); font-size: var(--etel-font-small); }

/* Shared surfaces and controls */
.etel-app .card,.etel-app .data-list-card,.etel-app .data-toolbar,.etel-app .mobile-card { border: var(--etel-border-width) solid var(--etel-border); border-radius: var(--etel-radius-card); background: var(--etel-surface); color: var(--etel-text); box-shadow: var(--etel-shadow-card); }
.etel-app .card-header,.etel-app .card-footer { padding: var(--etel-space-4) var(--etel-space-5); border-color: var(--etel-border); background: var(--etel-surface); color: var(--etel-text); }.etel-app .card-body { padding: var(--etel-space-5); }
.etel-app .btn-primary,.etel-app .btn-gold { background: var(--etel-action); border-color: var(--etel-action); color: var(--etel-on-action); box-shadow: none; }
.etel-app .btn-primary:hover,.etel-app .btn-gold:hover { background: var(--etel-action-hover); border-color: var(--etel-action-hover); color: var(--etel-on-action); transform: none; box-shadow: none; }
.etel-app .btn-primary:active,.etel-app .btn-gold:active { background: var(--etel-action-pressed); border-color: var(--etel-action-pressed); color: var(--etel-on-action); }
.etel-app .btn-outline-primary { --bs-btn-color: var(--etel-primary-ink); --bs-btn-border-color: var(--etel-primary-ink); --bs-btn-hover-bg: var(--etel-red-soft); --bs-btn-hover-color: var(--etel-primary-ink); --bs-btn-hover-border-color: var(--etel-primary-ink); --bs-btn-active-bg: var(--etel-red-soft); --bs-btn-active-color: var(--etel-primary-ink); --bs-btn-active-border-color: var(--etel-primary-ink); }
.etel-app .btn-outline-dark { --bs-btn-color: var(--etel-text); --bs-btn-border-color: var(--etel-control-border); --bs-btn-hover-bg: var(--etel-hover); --bs-btn-hover-color: var(--etel-text); --bs-btn-hover-border-color: var(--etel-accent-ink); }
.etel-app .btn:disabled,.etel-app .btn.disabled { background: var(--etel-disabled-bg); border-color: var(--etel-control-border); color: var(--etel-disabled-ink); opacity: 1; box-shadow: none; }
.etel-app .btn-close { opacity: 1; }
.etel-app .form-control,.etel-app .form-select,.etel-app .input-group-text,.etel-app .ts-wrapper.form-select { min-height: var(--etel-control-height); border-color: var(--etel-control-border); border-radius: var(--etel-radius-control); background-color: var(--etel-surface); color: var(--etel-text); font-size: var(--etel-font-ui); }
.etel-app .input-group>.form-control:not(:first-child),.etel-app .input-group>.form-select:not(:first-child) { border-start-start-radius: 0; border-end-start-radius: 0; }
.etel-app .form-label { margin-bottom: var(--etel-space-2); color: var(--etel-text); font-size: var(--etel-font-ui); font-weight: 600; }.etel-app .form-text { margin-top: var(--etel-space-1); color: var(--etel-muted); font-size: var(--etel-font-small); }
.etel-app .form-control::placeholder { color: var(--etel-muted); opacity: 1; }
.etel-app .form-control:focus,.etel-app .form-select:focus,.etel-app .form-check-input:focus,.etel-app .ts-wrapper.form-select.focus { border-color: var(--etel-focus); outline: var(--etel-focus-width) solid var(--etel-focus); outline-offset: var(--etel-focus-offset); box-shadow: none; }
.etel-app .form-check-input { border-color: var(--etel-control-border); }.etel-app .form-check-input:checked { border-color: var(--etel-action); background-color: var(--etel-action); }
.etel-app .is-invalid,.etel-app .ts-wrapper.is-invalid { border-color: var(--etel-danger-ink); }.etel-app .invalid-feedback,.etel-app .cmc-field-error { color: var(--etel-danger-ink); font-size: var(--etel-font-small); }
.etel-app .form-control:disabled,.etel-app .form-select:disabled,.etel-app .form-control[readonly] { background: var(--etel-disabled-bg); color: var(--etel-disabled-ink); opacity: 1; }

/* Directories and data tables */
.etel-app .user-directory-toolbar { padding: var(--etel-space-4) var(--etel-space-5); }.etel-app .user-directory-title { min-width: 190px; }.etel-app .user-directory-title .fw-bold { font-size: var(--etel-font-ui); }.etel-app .user-directory-title .small { font-size: var(--etel-font-small); }
.etel-app .user-header-search { min-height: var(--etel-control-height); border-color: var(--etel-control-border); border-radius: var(--etel-radius-control); background: var(--etel-surface); }.etel-app .user-header-search:focus-within { border-color: var(--etel-focus); outline: var(--etel-focus-width) solid var(--etel-focus); outline-offset: var(--etel-focus-offset); }
.etel-app .user-header-search input { height: calc(var(--etel-control-height) - 2px); color: var(--etel-text); font-size: var(--etel-font-ui); }.etel-app .user-header-search input::placeholder { color: var(--etel-muted); opacity: 1; }
.etel-app .user-header-search-button,.etel-app .user-header-icon { width: var(--etel-control-height); height: var(--etel-control-height); border-color: var(--etel-border); color: var(--etel-muted); }.etel-app .user-header-search-button:hover,.etel-app .user-header-icon:hover { background: var(--etel-hover); color: var(--etel-text); }
.etel-app .user-add-button { min-height: var(--etel-control-height); height: auto; padding: var(--etel-space-2) var(--etel-space-3); border-radius: var(--etel-radius-control); font-size: var(--etel-font-ui); }
.etel-app .table-responsive { overflow-x: auto; scrollbar-color: var(--etel-control-border) var(--etel-surface-soft); }.etel-app .data-table th,.etel-app .data-table td { height: auto; min-height: inherit; padding: var(--etel-space-2) var(--etel-space-4); }
.etel-app .data-table thead th { height: var(--etel-table-head); color: var(--etel-muted); font-size: var(--etel-font-micro); font-weight: 600; letter-spacing: .06em; }.etel-app .data-table tbody tr { height: var(--etel-table-row); }
.etel-app .data-table tbody tr:hover td { background: var(--etel-hover); }.etel-app .data-table tbody tr:hover td:first-child { box-shadow: inset 3px 0 0 var(--etel-accent-ink); }
.etel-app .data-table .fw-semibold { color: var(--etel-text); font-size: var(--etel-font-ui); }.etel-app .data-table .small { font-size: var(--etel-font-small); }.etel-app .data-table .form-check-input { width: 16px; height: 16px; border-color: var(--etel-control-border); border-radius: var(--etel-space-1); }
.etel-app .table-sort { color: var(--etel-muted); }.etel-app .table-sort:hover { color: var(--etel-text); }.etel-app .row-actions { gap: var(--etel-space-2); }
.etel-app .row-actions .action-icon { width: var(--etel-control-compact); min-width: var(--etel-control-compact); height: var(--etel-control-compact); min-height: var(--etel-control-compact); padding: 0; border-radius: var(--etel-radius-control); box-shadow: none; }
.etel-app .row-actions .btn-outline-primary { color: var(--etel-accent-ink); border-color: var(--etel-accent-ink); }.etel-app .row-actions .btn-outline-primary:hover { color: var(--etel-accent-ink); border-color: var(--etel-accent-ink); background: var(--etel-accent-soft); }
.etel-app .row-actions .btn-outline-danger { color: var(--etel-danger-ink); border-color: var(--etel-danger-ink); }.etel-app .row-actions .btn-outline-danger:hover { color: var(--etel-danger-ink); border-color: var(--etel-danger-ink); background: var(--etel-danger-bg); }
.etel-app .cmc-pager { padding: var(--etel-space-3) var(--etel-space-4); border-color: var(--etel-border); font-size: var(--etel-font-small); }.etel-app .pagination { gap: var(--etel-space-1); }
.etel-app .pagination .page-link { min-width: var(--etel-control-height); min-height: var(--etel-control-height); padding: 0 var(--etel-space-2); border: 1px solid var(--etel-control-border); border-radius: var(--etel-radius-control); color: var(--etel-muted); background: var(--etel-surface); }
.etel-app .pagination .page-item.active .page-link { border-color: var(--etel-action); background: var(--etel-action); color: var(--etel-on-action); box-shadow: none; }.etel-app .pager-exports a { width: var(--etel-control-compact); height: var(--etel-control-compact); border-radius: var(--etel-radius-control); }
.etel-app .empty-state { min-height: 140px; color: var(--etel-muted); font-size: var(--etel-font-body); }.etel-app .empty-state i { color: var(--etel-neutral-ink); }

/* Semantic states */
.etel-app .badge { border-radius: var(--etel-radius-badge); font-size: var(--etel-font-small); font-weight: 600; }
.etel-app .text-bg-success,.etel-app .badge.bg-success { color: var(--etel-success-ink) !important; background: var(--etel-success-bg) !important; }.etel-app .text-bg-warning,.etel-app .badge.bg-warning { color: var(--etel-warning-ink) !important; background: var(--etel-warning-bg) !important; }
.etel-app .text-bg-danger,.etel-app .badge.bg-danger { color: var(--etel-danger-ink) !important; background: var(--etel-danger-bg) !important; }.etel-app .text-bg-info,.etel-app .badge.bg-info { color: var(--etel-info-ink) !important; background: var(--etel-info-bg) !important; }
.etel-app .text-bg-secondary,.etel-app .text-bg-dark,.etel-app .text-bg-light { color: var(--etel-neutral-ink) !important; background: var(--etel-neutral-bg) !important; }.etel-app .text-bg-primary,.etel-app .badge.bg-primary { color: var(--etel-accent-ink) !important; background: var(--etel-accent-soft) !important; }
.etel-app .alert { border-radius: var(--etel-radius-card); }.etel-app .alert-success { border-color: var(--etel-success-ink); background: var(--etel-success-bg); color: var(--etel-success-ink); }.etel-app .alert-warning { border-color: var(--etel-warning-ink); background: var(--etel-warning-bg); color: var(--etel-warning-ink); }
.etel-app .alert-danger { border-color: var(--etel-danger-ink); background: var(--etel-danger-bg); color: var(--etel-danger-ink); }.etel-app .alert-info { border-color: var(--etel-info-ink); background: var(--etel-info-bg); color: var(--etel-info-ink); }.etel-app .alert-light { border-color: var(--etel-border); background: var(--etel-surface-soft); color: var(--etel-text); }

/* Menus and overlays */
.etel-app .dropdown-menu { z-index: var(--etel-z-popover); padding: var(--etel-space-1); border-color: var(--etel-border); border-radius: var(--etel-radius-overlay); background: var(--etel-surface); box-shadow: var(--etel-shadow-overlay); }.etel-app .dropdown-item { padding: var(--etel-space-2) var(--etel-space-3); border-radius: var(--etel-radius-control); color: var(--etel-text); font-size: var(--etel-font-ui); }
.etel-app .dropdown-item:hover,.etel-app .dropdown-item:focus { background: var(--etel-hover); color: var(--etel-text); }.etel-app .dropdown-item.active { background: var(--etel-accent-soft); color: var(--etel-accent-ink); }.etel-app .dropdown-divider { border-color: var(--etel-border); }
.etel-app .modal-backdrop { z-index: var(--etel-z-modal-backdrop); background: var(--etel-overlay); }.etel-app .modal { z-index: var(--etel-z-modal); }.etel-app .modal-content { border: 1px solid var(--etel-border); border-radius: var(--etel-radius-overlay); background: var(--etel-surface); color: var(--etel-text); box-shadow: var(--etel-shadow-overlay); }
.etel-app .modal-header,.etel-app .modal-footer { padding: var(--etel-space-4) var(--etel-space-5); border-color: var(--etel-border); background: var(--etel-surface); }.etel-app .modal-body { padding: var(--etel-space-5); }.etel-app .modal-title { color: var(--etel-text); font-size: var(--etel-font-section); font-weight: 600; }
.etel-app .offcanvas-backdrop { z-index: var(--etel-z-offcanvas-backdrop); background: var(--etel-overlay); }.etel-app .offcanvas { z-index: var(--etel-z-offcanvas); border-color: var(--etel-border); background: var(--etel-surface); color: var(--etel-text); box-shadow: var(--etel-shadow-overlay); }
.etel-app .offcanvas-header,.etel-app .offcanvas-footer { padding: var(--etel-space-4) var(--etel-space-5); border-color: var(--etel-border); }.etel-app .offcanvas-body { padding: var(--etel-space-5); }.etel-app .tooltip { z-index: var(--etel-z-tooltip); }.etel-app .popover { z-index: var(--etel-z-popover); }
.etel-app .cmc-appearance-launcher { z-index: var(--etel-z-desktop-sidebar); width: var(--etel-control-touch); height: var(--etel-control-touch); border-radius: var(--etel-radius-control) 0 0 var(--etel-radius-control); background: var(--etel-action); color: var(--etel-on-action); box-shadow: var(--etel-shadow-overlay); }
.etel-app .cmc-appearance-launcher:hover { width: var(--etel-control-touch); background: var(--etel-action-hover); color: var(--etel-on-action); box-shadow: var(--etel-shadow-overlay); }.etel-app .cmc-appearance-launcher i { animation: none; }
.etel-app .offcanvas.cmc-appearance { z-index: var(--etel-z-offcanvas); width: min(390px, 96vw); }.etel-app .cmc-appearance .offcanvas-header { background: var(--etel-sidebar); color: var(--etel-sidebar-ink); }.etel-app .cmc-appearance .offcanvas-title { color: var(--etel-sidebar-ink); }.etel-app .cmc-appearance .offcanvas-title small { color: var(--etel-brand-cyan); }
.etel-app .cmc-appearance .offcanvas-body { padding: 0; }.etel-app .cmc-appearance .offcanvas-footer { background: var(--etel-surface); }.etel-app .appearance-group { border-color: var(--etel-border); }.etel-app .appearance-option span { border-color: var(--etel-control-border); border-radius: var(--etel-radius-control); background: var(--etel-surface); color: var(--etel-text); }.etel-app .appearance-option input:checked+span { border-color: var(--etel-action); background: var(--etel-red-soft); color: var(--etel-primary-ink); }

/* Directory advanced filters */
.etel-app .unit-directory-card .unit-advanced-filter { padding: var(--etel-space-4); border: 1px solid var(--etel-border); border-radius: var(--etel-radius-control); background: var(--etel-surface-soft); box-shadow: none; }
.etel-app .unit-advanced-filter-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: var(--etel-space-3) var(--etel-space-4); }
.etel-app .unit-filter-field { min-width: 0; }
.etel-app .unit-filter-field label { display: block; margin: 0 0 var(--etel-space-2); color: var(--etel-muted); font-size: var(--etel-font-micro); font-weight: 600; letter-spacing: .04em; line-height: var(--etel-line-heading); }
.etel-app .unit-filter-field .form-control,.etel-app .unit-filter-field .form-select { width: 100%; min-height: var(--etel-control-height); padding-block: 0; border-color: var(--etel-border); border-radius: var(--etel-radius-control); background-color: var(--etel-surface); color: var(--etel-text); font-size: var(--etel-font-ui); box-shadow: none; }
.etel-app .unit-filter-field .form-control:focus,.etel-app .unit-filter-field .form-select:focus { border-color: var(--etel-focus); outline: var(--etel-focus-width) solid var(--etel-focus); outline-offset: 0; box-shadow: none; }
.etel-app .unit-filter-records { grid-column: span 2; }
.etel-app .unit-advanced-filter-footer { display: flex; align-items: center; justify-content: flex-end; gap: var(--etel-space-4); margin-top: var(--etel-space-4); padding-top: var(--etel-space-3); border-top: 1px solid var(--etel-border); }
.etel-app .unit-filter-reset { color: var(--etel-accent-ink); font-size: var(--etel-font-small); font-weight: 600; text-decoration: none; }
.etel-app .unit-filter-reset:hover { color: var(--etel-link-hover); text-decoration: underline; }.etel-app .unit-filter-reset.is-disabled { color: var(--etel-disabled-ink); pointer-events: none; }

/* Sales operations */
.etel-app .sale-delivery-strip { display:flex; gap:var(--etel-space-2); padding:var(--etel-space-3) var(--etel-space-4); overflow-x:auto; border-top:1px solid var(--etel-border); border-bottom:1px solid var(--etel-border); background:var(--etel-surface-soft); scrollbar-width:thin; }
.etel-app .sale-delivery-stat { display:flex; min-width:92px; padding:var(--etel-space-2) var(--etel-space-3); flex:0 0 auto; align-items:center; justify-content:space-between; gap:var(--etel-space-2); border:1px solid var(--etel-control-border); border-radius:var(--etel-radius-control); background:var(--etel-surface); color:var(--etel-text); text-decoration:none; box-shadow:var(--etel-shadow-xs); }
.etel-app .sale-delivery-stat strong { color:var(--etel-accent-ink); font-size:var(--etel-font-section); }.etel-app .sale-delivery-stat span { color:var(--etel-muted); font-size:var(--etel-font-small); white-space:nowrap; }
.etel-app .sale-delivery-stat:hover,.etel-app .sale-delivery-stat.active { border-color:var(--etel-action); background:var(--etel-action); color:var(--etel-on-action); }.etel-app .sale-delivery-stat:hover strong,.etel-app .sale-delivery-stat:hover span,.etel-app .sale-delivery-stat.active strong,.etel-app .sale-delivery-stat.active span { color:var(--etel-on-action); }
.etel-app .sale-amount-breakdown { margin-top:var(--etel-space-1); color:var(--etel-muted); font-size:var(--etel-font-micro); line-height:1.35; white-space:nowrap; }
.etel-app .sale-financial-summary { display:grid; grid-template-columns:repeat(9,minmax(95px,1fr)); gap:1px; border-top:1px solid var(--etel-border); border-bottom:1px solid var(--etel-border); background:var(--etel-border); }
.etel-app .sale-financial-summary>div { display:flex; min-width:0; padding:var(--etel-space-3); flex-direction:column; gap:var(--etel-space-1); background:var(--etel-surface-soft); text-align:end; }.etel-app .sale-financial-summary span { color:var(--etel-muted); font-size:var(--etel-font-micro); font-weight:600; letter-spacing:.04em; text-transform:uppercase; }.etel-app .sale-financial-summary strong { color:var(--etel-text); font-size:var(--etel-font-ui); }.etel-app .sale-financial-summary .total strong { color:var(--etel-accent-ink); }.etel-app .sale-financial-summary .due strong { color:var(--etel-danger-ink); }

/* Third-party adapters */
.flatpickr-calendar { z-index: var(--etel-z-popover) !important; border: 1px solid var(--etel-border); border-radius: var(--etel-radius-overlay); background: var(--etel-surface); color: var(--etel-text); box-shadow: var(--etel-shadow-overlay); font-family: var(--etel-font-sans); }
.flatpickr-months .flatpickr-month,.flatpickr-current-month .flatpickr-monthDropdown-months,span.flatpickr-weekday { background: var(--etel-surface); color: var(--etel-text); }.flatpickr-day { color: var(--etel-text); }.flatpickr-day:hover,.flatpickr-day:focus { border-color: var(--etel-accent-ink); background: var(--etel-accent-soft); color: var(--etel-accent-ink); }
.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange { border-color: var(--etel-action); background: var(--etel-action); color: var(--etel-on-action); }.flatpickr-day.today { border-color: var(--etel-accent-ink); }.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay { color: var(--etel-muted); }.flatpickr-time,.flatpickr-time input,.flatpickr-time .flatpickr-am-pm { border-color: var(--etel-border); background: var(--etel-surface); color: var(--etel-text); }
.etel-app .ts-wrapper.form-select .ts-control { min-height: calc(var(--etel-control-height) - 2px); padding: var(--etel-space-2) var(--etel-space-3); background: transparent; color: var(--etel-text); }.etel-app .ts-wrapper.multi .ts-control>.item { border-radius: var(--etel-radius-badge); background: var(--etel-accent-soft); color: var(--etel-accent-ink); font-size: var(--etel-font-small); }
.ts-dropdown { z-index: var(--etel-z-popover); border: 1px solid var(--etel-border); border-radius: var(--etel-radius-overlay); background: var(--etel-surface); color: var(--etel-text); box-shadow: var(--etel-shadow-overlay); font-size: var(--etel-font-ui); }.ts-dropdown .dropdown-input-wrap { border-color: var(--etel-border); background: var(--etel-surface); }.ts-dropdown .dropdown-input { min-height: var(--etel-control-height); border-color: var(--etel-control-border); border-radius: var(--etel-radius-control); background-color: var(--etel-surface); color: var(--etel-text); }.ts-dropdown .option { border-radius: var(--etel-radius-control); }.ts-dropdown .option.active { background: var(--etel-accent-soft); color: var(--etel-accent-ink); }.ts-dropdown .no-results { color: var(--etel-muted); }
.etel-app .rich-editor,.etel-app .jodit-container:not(.jodit_inline) { border-color: var(--etel-control-border) !important; border-radius: var(--etel-radius-control) !important; background: var(--etel-surface); color: var(--etel-text); }.etel-app .rich-editor-toolbar,.etel-app .jodit-toolbar__box:not(:empty),.etel-app .jodit-status-bar { border-color: var(--etel-border) !important; background: var(--etel-surface-soft) !important; color: var(--etel-muted) !important; }.etel-app .rich-editor-toolbar button { border-radius: var(--etel-radius-control); color: var(--etel-muted); }.etel-app .rich-editor-toolbar button:hover,.etel-app .rich-editor-toolbar button:focus,.etel-app .jodit-toolbar-button__button:hover { background: var(--etel-accent-soft) !important; color: var(--etel-accent-ink); }.etel-app .rich-editor-surface,.etel-app .jodit-wysiwyg,.etel-app .jodit-workplace { background: var(--etel-surface); color: var(--etel-text); font-family: var(--etel-font-sans); }
.swal2-container { z-index: var(--etel-z-toast); }.cmc-swal.swal2-popup,.cmc-swal-toast.swal2-popup { border: 1px solid var(--etel-border); border-radius: var(--etel-radius-overlay); background: var(--etel-surface); color: var(--etel-text); box-shadow: var(--etel-shadow-overlay); font-family: var(--etel-font-sans); }.cmc-swal .swal2-title { color: var(--etel-text); font-family: var(--etel-font-sans); font-size: var(--etel-font-section); font-weight: 600; }.cmc-swal .swal2-html-container { color: var(--etel-muted); font-size: var(--etel-font-body); }.cmc-swal-toast.swal2-popup.swal2-icon-success { border-inline-start-color: var(--etel-success-ink); }.cmc-swal-toast.swal2-popup.swal2-icon-error { border-inline-start-color: var(--etel-danger-ink); }.cmc-swal-toast.swal2-popup.swal2-icon-warning { border-inline-start-color: var(--etel-warning-ink); }.cmc-swal-toast.swal2-popup.swal2-icon-info { border-inline-start-color: var(--etel-info-ink); }.cmc-swal-toast .swal2-timer-progress-bar { background: var(--etel-accent-ink); }

/* Authentication */
.etel-app.auth-page[data-auth-style="basic"],.etel-app.auth-page[data-auth-style="cover"] { background: radial-gradient(900px 600px at 80% 10%,color-mix(in srgb,var(--etel-brand-red) 18%,transparent),transparent 55%),radial-gradient(700px 500px at 10% 90%,color-mix(in srgb,var(--etel-brand-cyan) 18%,transparent),transparent 55%),var(--etel-sidebar); }.etel-app .login-card { border: 1px solid var(--etel-border); border-radius: var(--etel-radius-card); background: var(--etel-surface); box-shadow: var(--etel-shadow-overlay) !important; }.etel-app .login-title { color: var(--etel-text) !important; font-size: var(--etel-font-page); font-weight: 600; }.etel-app .auth-aside { background: transparent; color: var(--etel-sidebar-ink); }
.etel-app.etel-public .card { max-width: 880px; }.etel-app.etel-public h1 { font-size: var(--etel-font-workspace); font-weight: 700; line-height: var(--etel-line-heading); }.etel-app.etel-public h2 { font-size: var(--etel-font-section); font-weight: 600; }.etel-app.etel-public summary { color: var(--etel-text); font-weight: 600; cursor: pointer; }

/* Density */
html[data-density="compact"] .etel-app .cmc-content { padding: var(--etel-space-4); }html[data-density="compact"] .etel-app .card-body { padding: var(--etel-space-4); }html[data-density="compact"] .etel-app .card-header,html[data-density="compact"] .etel-app .card-footer,html[data-density="compact"] .etel-app .user-directory-toolbar { padding: var(--etel-space-3) var(--etel-space-4); }html[data-density="compact"] .etel-app .data-table th,html[data-density="compact"] .etel-app .data-table td { padding-block: var(--etel-space-1); }html[data-density="compact"] .etel-app .cmc-pager { padding: var(--etel-space-2) var(--etel-space-4); }

/* Responsive acceptance widths */
@media (min-width: 992px) {
  .etel-app .cmc-topbar { grid-template-columns: 250px minmax(300px,450px) minmax(0,1fr); gap: var(--etel-space-4); }
  html.cmc-sidebar-collapsed .etel-app .cmc-sidebar { width: var(--etel-sidebar-collapsed); }
  html.cmc-sidebar-collapsed:not(.cmc-sidebar-peek) .etel-app .sidebar-collapse-toggle { inset-inline-start: calc((var(--etel-sidebar-collapsed) - 30px) / 2); }
  html.cmc-sidebar-collapsed.cmc-sidebar-peek .etel-app .cmc-sidebar { width: var(--etel-sidebar-width); margin-inline-end: calc(var(--etel-sidebar-collapsed) - var(--etel-sidebar-width)); z-index: calc(var(--etel-z-desktop-sidebar) + 10); box-shadow: 18px 0 38px var(--sidebar-shadow); }
  html.cmc-sidebar-collapsed.cmc-sidebar-peek .etel-app .sidebar-collapse-toggle { inset-inline-start: calc(var(--etel-sidebar-width) - 16px); z-index: calc(var(--etel-z-desktop-sidebar) + 11); }
  html.cmc-sidebar-collapsed.cmc-sidebar-peek .etel-app .brand { min-height: var(--etel-topbar-height); padding: var(--etel-space-2) var(--etel-space-4); }
  html.cmc-sidebar-collapsed.cmc-sidebar-peek .etel-app .cmc-nav { padding: var(--etel-space-3) var(--etel-space-3) var(--etel-space-4); }
  html.cmc-sidebar-collapsed.cmc-sidebar-peek .etel-app .cmc-nav .nav-link { gap: var(--etel-space-2); padding: var(--etel-space-2); margin-bottom: var(--etel-space-1); }
  html[dir="rtl"].cmc-sidebar-collapsed.cmc-sidebar-peek .etel-app .cmc-sidebar { box-shadow: -18px 0 38px var(--sidebar-shadow); }
}
@media (min-width: 768px) and (max-width: 991.98px) { .etel-app .cmc-content { padding: var(--etel-space-4); } }
@media (min-width: 768px) and (max-width: 1199.98px) { .etel-app .unit-advanced-filter-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 1199.98px) { .etel-app .sale-financial-summary { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width: 767.98px) { .etel-app { --etel-control-height: var(--etel-control-touch); --etel-table-row: 56px; }.etel-app .cmc-topbar { min-height: var(--etel-topbar-mobile); padding-inline: var(--etel-space-3); }.etel-app .cmc-content { padding: var(--etel-space-3); }.etel-app .cmc-sidebar { width: min(var(--etel-sidebar-mobile),88vw); }.etel-app .form-control,.etel-app .form-select,.etel-app .ts-control { font-size: 1rem; }.etel-app .user-toolbar-head { display:flex; align-items:stretch; flex-direction:column; }.etel-app .user-toolbar-actions,.etel-app .toolbar-actions { align-items: stretch; flex-direction: column; }.etel-app .user-directory-title { width:100%; min-width:0; }.etel-app .user-header-search,.etel-app .user-add-button,.etel-app .user-toolbar-actions>.btn,.etel-app .user-toolbar-actions>form { width: 100%; }.etel-app .row-actions .action-icon,.etel-app .pagination .page-link,.etel-app .pager-exports a { min-width: var(--etel-control-touch); min-height: var(--etel-control-touch); }.etel-app .modal-dialog { margin: var(--etel-space-3); }.etel-app .modal-footer { gap: var(--etel-space-2); }.etel-app .modal-footer .btn { flex: 1 1 auto; } }
@media (max-width: 767.98px) { .etel-app .unit-advanced-filter-grid { grid-template-columns: minmax(0,1fr); }.etel-app .unit-filter-records { grid-column: auto; }.etel-app .unit-advanced-filter-footer { align-items: stretch; flex-direction: column; }.etel-app .unit-advanced-filter-footer .btn { width: 100%; min-height: var(--etel-control-touch); }.etel-app .unit-filter-reset { align-self: center; padding: var(--etel-space-2); } }
@media (max-width: 767.98px) { .etel-app .sale-delivery-strip { padding:var(--etel-space-3); }.etel-app .sale-financial-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }.etel-app .sale-financial-summary>div { text-align:start; } }
@media (max-width: 767.98px) { html[data-density="compact"] .etel-app .user-add-button { min-height: var(--etel-control-touch) !important; } }
@media (pointer: coarse) { .etel-app { --etel-control-height: var(--etel-control-touch); --etel-table-row: 56px; }.etel-app .row-actions .action-icon,.etel-app .pagination .page-link { min-width: var(--etel-control-touch); min-height: var(--etel-control-touch); } }
@media (prefers-reduced-motion: reduce) { .etel-app *,.etel-app *::before,.etel-app *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
