/* KOVLEON Future UI
   A restrained technology-forward visual layer shared by the whole product.
   It changes presentation only: business logic, semantic colors and accessibility remain intact. */

:root{
  --kv-future-navy:#0f376b;
  --kv-future-blue:#176bc9;
  --kv-future-bright:#2a8cf0;
  --kv-future-ink:#162a43;
  --kv-future-muted:#667b93;
  --kv-future-line:rgba(92,132,178,.24);
  --kv-future-line-strong:rgba(63,126,198,.45);
  --kv-future-surface:rgba(255,255,255,.92);
  --kv-future-surface-soft:rgba(246,250,255,.88);
  --kv-future-shadow:0 12px 34px rgba(24,61,103,.09);
  --kv-future-shadow-soft:0 5px 18px rgba(24,61,103,.07);
  --kv-future-focus:0 0 0 3px rgba(42,140,240,.18);
}

/* Product atmosphere: subtle depth, no neon wallpaper. */
body{
  background:
    radial-gradient(circle at 10% 0,rgba(71,148,232,.07),transparent 28%),
    radial-gradient(circle at 92% 12%,rgba(90,174,245,.045),transparent 23%),
    #f3f6fa;
  color:var(--kv-future-ink);
}

/* Shared surfaces. */
.card,.dw-panel,.dw-kpi,.modal,.crm-detail,.crm-row-card,.crm-dialog,.crm-quick-dialog,
.op-pane,.op-feed,.op-editor,.bank-center-card,.bank-center-import,.bank-center-help,
.loan-center-card,.loan-card,.wh-panel,.wh-card,.kpss-card,.dr-card,.saas-card,
.platform-card,.dashboard-section,.dashboard-news-section,.salary-card{
  border-color:var(--kv-future-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,252,255,.95))!important;
  box-shadow:
    var(--kv-future-shadow-soft),
    inset 0 1px 0 rgba(255,255,255,.92)!important;
}
.card,.dw-panel,.modal,.crm-detail,.crm-dialog,.crm-quick-dialog,.op-pane,.op-feed,.op-editor,
.bank-center-card,.loan-center-card,.wh-panel,.kpss-card,.dr-card,.saas-card,.platform-card{
  border-radius:14px!important;
}

/* Shared button chassis. */
button.btn,label.btn,.dw-btn,.bank-center-action,.wh-row-action,.loan-center-tab,
.crm-switch button,.op-tab,.dr-switch button,.kpss-center-tabs button,
.dashboard-news-categories button,.dashboard-news-categories a,
.header-action-button,.action-btn,.toolbar-btn{
  position:relative;
  isolation:isolate;
  border-radius:10px!important;
  border:1px solid var(--kv-future-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.99),rgba(241,247,253,.96))!important;
  color:#315272!important;
  box-shadow:
    0 4px 13px rgba(26,65,109,.07),
    inset 0 1px 0 rgba(255,255,255,.96)!important;
  font-weight:700!important;
  letter-spacing:.005em;
  transition:
    transform .16s ease,
    color .16s ease,
    border-color .16s ease,
    background .16s ease,
    box-shadow .16s ease!important;
}

button.btn:hover,label.btn:hover,.dw-btn:hover,.bank-center-action:hover,.wh-row-action:hover,
.loan-center-tab:hover,.crm-switch button:hover,.op-tab:hover,.dr-switch button:hover,
.kpss-center-tabs button:hover,.dashboard-news-categories button:hover,.dashboard-news-categories a:hover,
.header-action-button:hover,.action-btn:hover,.toolbar-btn:hover{
  border-color:var(--kv-future-line-strong)!important;
  color:#185a9f!important;
  background:
    radial-gradient(circle at 20% 0,rgba(94,177,255,.12),transparent 42%),
    linear-gradient(180deg,#fff,#eef6ff)!important;
  box-shadow:
    0 9px 21px rgba(30,84,144,.13),
    inset 0 1px 0 #fff!important;
  transform:translateY(-1px);
}

button.btn:active,.dw-btn:active,.bank-center-action:active,.wh-row-action:active,
.loan-center-tab:active,.crm-switch button:active,.op-tab:active,.dr-switch button:active,
.kpss-center-tabs button:active,.dashboard-news-categories button:active,
.header-action-button:active,.action-btn:active,.toolbar-btn:active{
  transform:translateY(0) scale(.985);
}

/* Primary / brand actions. */
.btn-blue,.btn-primary,.dw-btn-primary,
button[data-primary="1"],.crm-switch button.active,.op-tab.active,
.loan-center-tab.active,.dr-switch button.active,.dr-switch button[aria-pressed="true"],
.kpss-center-tabs button.active,.kpss-center-tabs button[aria-selected="true"],
.dashboard-news-categories button.active,.dashboard-news-categories button[aria-pressed="true"]{
  border-color:rgba(42,108,190,.72)!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 22% 0,rgba(126,198,255,.34),transparent 36%),
    linear-gradient(135deg,var(--kv-future-navy) 0%,var(--kv-future-blue) 62%,var(--kv-future-bright) 100%)!important;
  box-shadow:
    0 10px 24px rgba(20,88,166,.22),
    0 0 0 1px rgba(82,157,241,.13),
    inset 0 1px 0 rgba(255,255,255,.31),
    inset 0 -8px 18px rgba(6,49,105,.14)!important;
  text-shadow:0 1px 2px rgba(4,31,68,.28);
}
.btn-blue:hover,.btn-primary:hover,.dw-btn-primary:hover,
.crm-switch button.active:hover,.op-tab.active:hover,.loan-center-tab.active:hover,
.dr-switch button.active:hover,.dr-switch button[aria-pressed="true"]:hover,
.kpss-center-tabs button.active:hover,.dashboard-news-categories button.active:hover{
  color:#fff!important;
  border-color:#4b9cf1!important;
  background:
    radial-gradient(circle at 22% 0,rgba(155,213,255,.42),transparent 38%),
    linear-gradient(135deg,#123f79 0%,#1974d7 60%,#3598f5 100%)!important;
  box-shadow:
    0 13px 29px rgba(20,88,166,.28),
    0 0 0 1px rgba(92,169,255,.18),
    inset 0 1px 0 rgba(255,255,255,.38)!important;
}

/* Semantic actions keep semantic meaning, just receive the same finish. */
.btn-green{
  color:#fff!important;
  border-color:#24855b!important;
  background:linear-gradient(135deg,#176442,#279b69)!important;
  box-shadow:0 8px 20px rgba(30,123,82,.18),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
.btn-red,.dw-btn-danger{
  color:#fff!important;
  border-color:#b33842!important;
  background:linear-gradient(135deg,#8f2631,#c74750)!important;
  box-shadow:0 8px 20px rgba(165,51,61,.17),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.btn-gray{
  color:#344a61!important;
  border-color:rgba(109,132,156,.35)!important;
  background:linear-gradient(180deg,#f9fbfd,#e9eff5)!important;
}

/* Compact icon/destructive controls stay compact instead of becoming large CTA buttons. */
.modal-close,.crm-close,.crm-entity-clear,.dw-payment-trash,.dashboard-attention-dismiss,
button[aria-label*="Удалить"],button[title*="Удалить"],button[aria-label*="Закрыть"]{
  box-shadow:0 3px 10px rgba(32,66,105,.08),inset 0 1px 0 rgba(255,255,255,.75);
}
.dw-payment-trash{
  background:linear-gradient(180deg,#fff,#fff7f7)!important;
  border-color:#efc5c8!important;
  color:#a82d37!important;
}
.dw-payment-trash:hover{
  background:linear-gradient(180deg,#fff8f7,#ffefee)!important;
  border-color:#dc858b!important;
  color:#8f202a!important;
}

/* Fields: calm glass border at rest, blue energy only on focus. */
.form-group input,.form-group select,.form-group textarea,
.dw-field input,.dw-field select,.dw-field textarea,
.crm-toolbar input,.crm-toolbar select,.crm-dialog input,.crm-dialog select,.crm-dialog textarea,
.crm-inline-form input,.crm-inline-form select,.crm-inline-form textarea,
.op-form-grid input,.op-form-grid select,.op-form-grid textarea,
.bank-center-filters input,.bank-center-filters select,.bank-intel-form input,.bank-intel-form select,
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
select,textarea{
  border-color:rgba(107,140,176,.3)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.99),rgba(249,252,255,.97))!important;
  box-shadow:inset 0 1px 2px rgba(20,50,82,.035);
  border-radius:9px;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus,
.dw-field input:focus,.dw-field select:focus,.dw-field textarea:focus,
.crm-toolbar input:focus,.crm-toolbar select:focus,.crm-dialog input:focus,.crm-dialog select:focus,.crm-dialog textarea:focus,
.op-form-grid input:focus,.op-form-grid select:focus,.op-form-grid textarea:focus,
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):focus,select:focus,textarea:focus{
  outline:0!important;
  border-color:#6aa9eb!important;
  background:#fff!important;
  box-shadow:
    var(--kv-future-focus),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
}

/* Tables: faint tech header and cleaner row interaction. */
table thead th,.dw-table th,.bank-center-table-wrap th,.wh-table th,.dr-table th{
  background:
    linear-gradient(180deg,rgba(239,246,254,.95),rgba(248,251,255,.96))!important;
  color:#516b87!important;
  border-bottom-color:rgba(92,132,178,.25)!important;
}
table tbody tr{
  transition:background .14s ease,box-shadow .14s ease;
}
table tbody tr:hover{
  background:rgba(232,243,255,.55)!important;
}

/* KPI and summary cards get a thin luminous top edge rather than heavy decoration. */
.dw-kpi,.crm-kpi,.bank-center-metric,.op-kpis>div,.dashboard-kpi,.salary-card{
  position:relative;
  overflow:hidden;
}
.dw-kpi::before,.crm-kpi::before,.bank-center-metric::before,.op-kpis>div::before,.dashboard-kpi::before,.salary-card::before{
  content:'';
  position:absolute;
  top:0;left:12%;right:12%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(55,137,226,.45),transparent);
  pointer-events:none;
}

/* Modal backdrops and dialogs feel more like a focused workspace. */
.modal-overlay,.crm-dialog::backdrop,.crm-quick-dialog::backdrop{
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.modal,.crm-dialog,.crm-quick-dialog{
  box-shadow:
    0 30px 80px rgba(13,37,68,.25),
    0 0 0 1px rgba(96,146,201,.12),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
}

/* Pills / badges: cleaner system-status chips. */
.badge,.dw-pill,.crm-stage,.deal-status,.bank-profile-chip{
  border:1px solid rgba(101,139,181,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}

/* Main top-level tabs in the legacy shell receive the same future language. */
.tabs{
  gap:7px;
  padding:8px 12px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(244,248,253,.96))!important;
  border-bottom:1px solid rgba(91,130,177,.22)!important;
}
.tab-btn{
  border:1px solid transparent!important;
  border-radius:9px!important;
  border-bottom:1px solid transparent!important;
  color:#5b7088!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.tab-btn:hover{
  background:#f0f7ff!important;
  border-color:rgba(92,145,207,.28)!important;
  color:#1f5e9f!important;
  transform:translateY(-1px);
}
.tab-btn.active{
  color:#fff!important;
  border-color:rgba(42,108,190,.68)!important;
  background:linear-gradient(135deg,#123b70,#1769c8 64%,#2584e7)!important;
  box-shadow:0 7px 18px rgba(20,88,166,.2),inset 0 1px 0 rgba(255,255,255,.26)!important;
}

/* Universal keyboard focus. */
:where(button,a,[role="button"],input,select,textarea):focus-visible{
  outline:0;
  box-shadow:var(--kv-future-focus);
}

/* Disabled stays obviously disabled and does not float on hover. */
:where(button,.btn,.dw-btn)[disabled],:where(button,.btn,.dw-btn)[aria-disabled="true"]{
  opacity:.52!important;
  filter:saturate(.7);
  cursor:not-allowed!important;
  transform:none!important;
}

/* Mobile: preserve touch targets, reduce depth and motion. */
@media(max-width:600px){
  button.btn,label.btn,.dw-btn,.bank-center-action,.wh-row-action{
    min-height:42px;
  }
  .card,.dw-panel,.modal,.crm-detail,.op-pane,.op-feed,.op-editor{
    box-shadow:0 5px 18px rgba(24,61,103,.07),inset 0 1px 0 rgba(255,255,255,.9)!important;
  }
}

@media(prefers-reduced-motion:reduce){
  button,.btn,.dw-btn,.tab-btn,.card,.crm-row-card{
    transition:none!important;
  }
  button:hover,.btn:hover,.dw-btn:hover,.tab-btn:hover{
    transform:none!important;
  }
}


/* Global shell: premium technology bar rather than a flat utility strip. */
.app-wrapper>header{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% -30%,rgba(116,195,255,.26),transparent 36%),
    linear-gradient(115deg,#0d2f5f 0%,#124b89 58%,#1766ad 100%)!important;
  border-bottom:1px solid rgba(139,198,249,.22);
  box-shadow:0 8px 28px rgba(8,38,73,.18),inset 0 -1px 0 rgba(255,255,255,.07);
}
.app-wrapper>header::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.08) 49%,transparent 57%);
}
.app-wrapper>header>*{position:relative;z-index:1}
.app-wrapper>header button,.dw-top{
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.app-wrapper>header button{
  border:1px solid rgba(211,234,255,.18)!important;
  background:rgba(255,255,255,.1)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.app-wrapper>header button:hover{
  background:rgba(255,255,255,.17)!important;
  border-color:rgba(211,234,255,.34)!important;
  transform:translateY(-1px);
}
.dw-top{
  background:rgba(251,253,255,.9)!important;
  border-bottom-color:rgba(96,139,185,.22)!important;
  box-shadow:0 7px 22px rgba(25,61,100,.07)!important;
}

/* Interactive cards get subtle lift, while static content remains calm. */
.salary-card,.crm-row-card,.dashboard-news-card,.crm-priority-item,.op-item,
.deal-row-card,.warehouse-item-card,.loan-card,.bank-account-card{
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.salary-card:hover,.crm-row-card:hover,.dashboard-news-card:hover,.crm-priority-item:hover,
.op-item:hover,.deal-row-card:hover,.warehouse-item-card:hover,.loan-card:hover,.bank-account-card:hover{
  transform:translateY(-2px);
  border-color:rgba(70,137,210,.38)!important;
  box-shadow:0 13px 30px rgba(29,72,120,.12),inset 0 1px 0 rgba(255,255,255,.95)!important;
}

/* Section separators become deliberate system chrome. */
.dw-payment-separator,.crm-form-actions,.section-divider,hr{
  border-color:transparent!important;
  background:linear-gradient(90deg,transparent,rgba(77,132,192,.28),transparent);
}
hr{height:1px;border:0}

/* Search/autocomplete/dropdown surfaces share the same depth. */
.autocomplete-list,.crm-lookup-results,.suggestions-list,.dropdown-menu,.context-menu{
  border-color:var(--kv-future-line)!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 18px 40px rgba(18,54,94,.16),inset 0 1px 0 rgba(255,255,255,.9)!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

/* Empty states and notices feel integrated rather than placeholder-like. */
.dw-empty,.crm-empty,.empty-state,.placeholder-state{
  border-color:rgba(91,132,179,.28)!important;
  background:
    radial-gradient(circle at 50% 0,rgba(83,159,236,.08),transparent 46%),
    rgba(249,252,255,.86)!important;
}
.dw-note,.notice-info,.info-panel{
  border:1px solid rgba(77,136,201,.18);
  background:
    linear-gradient(180deg,rgba(240,247,255,.96),rgba(247,251,255,.97))!important;
}

/* A faint luminous edge for major workspace panels. */
.dw-panel,.card,.crm-detail,.op-pane,.op-feed,.op-editor,.bank-center-card,.loan-center-card,.wh-panel{
  position:relative;
}
.dw-panel::before,.card::before,.crm-detail::before,.op-pane::before,.op-feed::before,.op-editor::before,
.bank-center-card::before,.loan-center-card::before,.wh-panel::before{
  content:'';
  position:absolute;
  top:0;
  left:8%;
  right:8%;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(56,139,228,.28),transparent);
}

/* Login / onboarding should feel like the same product. */
.login-screen{
  border:1px solid rgba(92,132,178,.24)!important;
  background:
    radial-gradient(circle at 50% -20%,rgba(81,162,245,.11),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.99),rgba(246,250,255,.97))!important;
  box-shadow:0 24px 70px rgba(19,55,95,.16),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.login-screen button:not(.btn-link){
  min-height:44px;
  border-radius:10px!important;
  border:1px solid rgba(75,132,194,.28)!important;
  font-weight:750;
}
.login-screen .btn-primary{
  color:#fff!important;
  background:
    radial-gradient(circle at 24% 0,rgba(143,207,255,.3),transparent 36%),
    linear-gradient(135deg,#113a70,#176bc9 62%,#2a8cf0)!important;
  box-shadow:0 10px 24px rgba(20,88,166,.22),inset 0 1px 0 rgba(255,255,255,.28)!important;
}
.login-screen .btn-link{
  color:#245f9e!important;
  text-decoration:none!important;
  font-weight:700;
}
.login-screen .btn-link:hover{text-decoration:underline!important}

/* Generic buttons not covered by module classes still get refined motion/focus without forced recoloring. */
button{
  border-radius:9px;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease,color .16s ease;
}
button:not(:disabled):hover{filter:saturate(1.03)}
button:not(:disabled):active{transform:scale(.985)}

/* Scrollbars are quiet and product-colored where scrolling is still semantically necessary. */
*{
  scrollbar-width:thin;
  scrollbar-color:rgba(68,116,169,.38) transparent;
}
*::-webkit-scrollbar{width:8px;height:8px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(94,151,212,.42),rgba(58,108,163,.35));
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box;
}

/* Respect accessibility and low-motion preferences globally. */
@media(prefers-reduced-motion:reduce){
  .salary-card,.crm-row-card,.dashboard-news-card,.crm-priority-item,.op-item,
  .deal-row-card,.warehouse-item-card,.loan-card,.bank-account-card,
  .app-wrapper>header button,button{
    transition:none!important;
    transform:none!important;
  }
}


/* Future UI v2: extend the same material language to module-specific controls and surfaces. */
:where(
  .wh-btn,.platform-console-tab,.platform-shortcut,.fleet-mini-form button,.fleet-footer button,
  .estimate-section-actions button,.estimate-row-actions button,.kv-fast-controls button,
  .site-sidebar-actions button,.dashboard-quick-action,.crm-form-actions .btn,
  .kpss-task-action .btn,.object-workspace-actions .btn,.korvex-page-actions .btn,
  .salary-toolbar-actions .btn,.salary-entry-actions .btn,.salary-payment-actions .btn
){
  position:relative;
  isolation:isolate;
  border:1px solid var(--kv-future-line)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(241,247,253,.96))!important;
  color:#315272!important;
  box-shadow:0 4px 13px rgba(26,65,109,.07),inset 0 1px 0 rgba(255,255,255,.96)!important;
  font-weight:700;
  transition:transform .16s ease,color .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease!important;
}
:where(
  .wh-btn,.platform-console-tab,.platform-shortcut,.fleet-mini-form button,.fleet-footer button,
  .estimate-section-actions button,.estimate-row-actions button,.kv-fast-controls button,
  .site-sidebar-actions button,.dashboard-quick-action,.crm-form-actions .btn,
  .kpss-task-action .btn,.object-workspace-actions .btn,.korvex-page-actions .btn,
  .salary-toolbar-actions .btn,.salary-entry-actions .btn,.salary-payment-actions .btn
):not(:disabled):hover{
  transform:translateY(-1px);
  border-color:var(--kv-future-line-strong)!important;
  color:#185a9f!important;
  background:linear-gradient(180deg,#fff,#eef6ff)!important;
  box-shadow:0 9px 21px rgba(30,84,144,.13),inset 0 1px 0 #fff!important;
}

:where(.wh-btn.primary,.dashboard-quick-action,.platform-console-tab.active,.platform-console-tab[aria-selected="true"]){
  color:#fff!important;
  border-color:rgba(42,108,190,.72)!important;
  background:
    radial-gradient(circle at 22% 0,rgba(126,198,255,.34),transparent 36%),
    linear-gradient(135deg,var(--kv-future-navy),var(--kv-future-blue) 62%,var(--kv-future-bright))!important;
  box-shadow:0 10px 24px rgba(20,88,166,.22),inset 0 1px 0 rgba(255,255,255,.31)!important;
  text-shadow:0 1px 2px rgba(4,31,68,.28);
}

.site-sidebar .tab-btn{
  border:1px solid transparent!important;
  border-radius:9px!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
}
.site-sidebar .tab-btn:hover{
  color:#195f9f!important;
  border-color:rgba(92,145,207,.23)!important;
  background:linear-gradient(180deg,#f8fbff,#eef6ff)!important;
  box-shadow:0 5px 14px rgba(28,76,132,.07)!important;
}
.site-sidebar .tab-btn.active{
  color:#fff!important;
  border-color:rgba(42,108,190,.66)!important;
  background:
    radial-gradient(circle at 18% 0,rgba(117,192,255,.29),transparent 34%),
    linear-gradient(135deg,#12345f,#1769c8)!important;
  box-shadow:0 8px 18px rgba(22,92,169,.19),inset 0 1px 0 rgba(255,255,255,.25)!important;
}

:where(
  .dr-panel,.dr-stat,.loan-contract-card,.platform-operation-card,.fleet-panel,.wh-location-card,
  .kpss-coverage-card,.dashboard-trend-card,.dw-finance-card,.object-workspace-kpis>div,
  .deal-kanban-card,.fleet-card,.crm-row-card
){
  border-color:var(--kv-future-line)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,252,255,.95))!important;
  box-shadow:0 7px 22px rgba(24,61,103,.065),inset 0 1px 0 rgba(255,255,255,.94)!important;
}

:where(.fleet-card,.crm-row-card,.deal-kanban-card,.wh-location-card,.loan-contract-card):hover{
  border-color:rgba(67,131,204,.42)!important;
  box-shadow:0 13px 30px rgba(23,78,142,.11),inset 0 1px 0 rgba(255,255,255,.96)!important;
}

:where(.dr-stat,.dw-kpi,.crm-kpi,.bank-center-metric,.dashboard-trend-card,.object-workspace-kpis>div){
  position:relative;
  overflow:hidden;
}
:where(.dr-stat,.dw-kpi,.crm-kpi,.bank-center-metric,.dashboard-trend-card,.object-workspace-kpis>div)::after{
  content:'';
  position:absolute;
  left:14%;right:14%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(64,148,238,.48),transparent);
  pointer-events:none;
}

/* Small tool buttons use the same precision, not oversized CTA styling. */
:where(.estimate-section-actions button,.estimate-row-actions button,.kv-fast-controls button){
  width:auto;
  min-width:28px;
  box-shadow:0 2px 8px rgba(26,65,109,.075),inset 0 1px 0 #fff!important;
}
:where(.estimate-section-actions button,.estimate-row-actions button).danger{
  color:#a92c36!important;
  border-color:rgba(200,75,83,.3)!important;
  background:linear-gradient(180deg,#fff,#fff7f6)!important;
}

/* Technology details on information bars and section shells. */
:where(.dw-note,.deal-control-note,.fleet-tip,.saas-note,.kpss-center-panel>p){
  border-color:rgba(89,139,198,.18)!important;
}
:where(.dw-payment-separator,.wh-bottom-actions,.crm-form-actions){
  border-color:rgba(87,133,187,.18)!important;
}

/* Keep future styling restrained in print. */
@media print{
  *{box-shadow:none!important;text-shadow:none!important}
  body{background:#fff!important}
}


/* Universal destructive icon: all visible delete actions use one KOVLEON trash control.
   The accessible label/title stays in markup; the word itself is not shown. */
.kv-trash-btn{
  position:relative;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:36px;
  min-width:36px;
  height:36px;
  min-height:36px;
  padding:0!important;
  border:1px solid rgba(205,84,91,.27)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,#fff,#fff6f5)!important;
  color:#a92d37!important;
  box-shadow:0 4px 12px rgba(163,40,48,.07),inset 0 1px 0 #fff!important;
  font-size:0!important;
  line-height:0!important;
  cursor:pointer;
  vertical-align:middle;
  transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease!important;
}
.kv-trash-btn::before{
  content:'';
  display:block;
  width:18px;
  height:18px;
  flex:0 0 18px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2h-1l-1 13H6L5 7H4V5h4l1-2Zm1.2 2h3.6l-.4-.8h-2.8l-.4.8ZM7.1 7l.85 11h8.1l.85-11H7.1Zm2.4 2h1.7v7H9.5V9Zm3.3 0h1.7v7h-1.7V9Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2h-1l-1 13H6L5 7H4V5h4l1-2Zm1.2 2h3.6l-.4-.8h-2.8l-.4.8ZM7.1 7l.85 11h8.1l.85-11H7.1Zm2.4 2h1.7v7H9.5V9Zm3.3 0h1.7v7h-1.7V9Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.kv-trash-btn:not(:disabled):hover{
  transform:translateY(-1px);
  color:#8f1d27!important;
  border-color:rgba(196,61,71,.48)!important;
  background:linear-gradient(180deg,#fff9f8,#ffecea)!important;
  box-shadow:0 9px 20px rgba(160,37,45,.13),inset 0 1px 0 #fff!important;
}
.kv-trash-btn:not(:disabled):active{transform:translateY(0) scale(.96)}
.kv-trash-btn:focus-visible{
  outline:0!important;
  border-color:#dd626b!important;
  box-shadow:0 0 0 3px rgba(211,72,83,.16),0 8px 18px rgba(160,37,45,.12)!important;
}
.kv-trash-btn:disabled{opacity:.42;cursor:not-allowed}
.kv-trash-btn.kv-trash-sm{width:32px;min-width:32px;height:32px;min-height:32px;border-radius:8px!important}
.kv-trash-btn.kv-trash-sm::before{width:16px;height:16px;flex-basis:16px}
.kv-trash-btn.kv-trash-bulk{
  width:auto;
  min-width:44px;
  padding:0 11px!important;
  gap:6px;
  font-size:12px!important;
  line-height:1!important;
}
.kv-trash-btn.kv-trash-bulk::after{
  content:attr(data-count);
  display:inline-block;
  min-width:0;
  color:currentColor;
  font-size:11px;
  font-weight:800;
  line-height:1;
}
.kv-trash-btn.kv-trash-bulk[data-count=""]::after{display:none}

/* Existing specialized delete controls inherit the same icon treatment. */
.dw-payment-trash,.dr-delete{
  font-size:0!important;
}
.dw-payment-trash::before,.dr-delete::before{
  content:'';
  display:block;
  width:18px;
  height:18px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2h-1l-1 13H6L5 7H4V5h4l1-2Zm1.2 2h3.6l-.4-.8h-2.8l-.4.8ZM7.1 7l.85 11h8.1l.85-11H7.1Zm2.4 2h1.7v7H9.5V9Zm3.3 0h1.7v7h-1.7V9Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2h-1l-1 13H6L5 7H4V5h4l1-2Zm1.2 2h3.6l-.4-.8h-2.8l-.4.8ZM7.1 7l.85 11h8.1l.85-11H7.1Zm2.4 2h1.7v7H9.5V9Zm3.3 0h1.7v7h-1.7V9Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
