
@font-face {
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("fonts/pt-root-ui-300.dd93b6f4ff76.woff2") format("woff2");
}
@font-face {
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/pt-root-ui-400.515dfc28b84d.woff2") format("woff2");
}
@font-face {
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/pt-root-ui-500.02b33df684df.woff2") format("woff2");
}
@font-face {
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url("fonts/pt-root-ui-700.330ce4e7085e.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-400-cyrillic.cd34c7793d97.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-400-cyrillic-ext.f572f7b57d27.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-400-latin.814fe1615d4d.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-400-latin-ext.17a5b2a15bf5.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-500-cyrillic.0ba762bde65a.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-500-cyrillic-ext.de1d49f26130.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-500-latin.6708425c446b.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/ibm-plex-mono-500-latin-ext.216ee1a35b06.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
:root {
--color-page: #e4e8ee;           
  --color-surface: #ffffff;        
  --color-surface-raised: #ffffff; 
  --color-surface-sunken: #f6f8fa; 
  --color-text: #1f2328;           
  --color-muted: #59636e;          
  --color-faint: #818b98;          
  --color-border: #dfe4e9;         
  --color-border-window: #bfc6cc; 
  --color-border-strong: #d1d9e0;  
  --color-on-primary: #ffffff;     
--color-sidebar: #25292e;             
  --color-sidebar-text: #d1d9e0;        
  --color-sidebar-muted: #9198a1;       
  --color-sidebar-hover: #3d444d;       
  --color-sidebar-active: #0969da;      
  --color-sidebar-active-text: #ffffff;
  --color-sidebar-border: #3d444d;      
--color-primary: #0969da;        
  --color-primary-hover: #0757ba;  
  --color-primary-active: #0550ae; 
  --color-primary-soft: #ddf4ff;   
  --color-focus: #0969da;          
  --color-info-bg: #ddf4ff;        
  --color-info-text: #0969da;      
  --color-info-border: #bbdfff;    
  --color-info-solid: #0969da;     
--color-success-bg: #dafbe1;     
  --color-success-text: #1a7f37;   
  --color-success-border: #b7e7c4; 
  --color-success-solid: #1f883d;  
  --color-warning-bg: #fff8c5;     
  --color-warning-text: #9a6700;   
  --color-warning-border: #eedcab; 
  --color-warning-solid: #9a6700;  
  --color-warning-dot: #bf8700;    
  --color-danger-bg: #ffebe9;      
  --color-danger-text: #d1242f;    
  --color-danger-border: #ffcdcd;  
  --color-danger-solid: #cf222e;   
  --color-neutral-bg: #e6eaef;     
  --color-neutral-text: #59636e;   
  --color-neutral-border: #d1d9e0; 
--color-avito-bg: #e2f4fd;
  --color-avito-text: #086da8;
  --color-avito-border: #b3e0f7;
  --color-avito-solid: #1fa3e0;
--stage-1: var(--color-muted);   
  --stage-2: var(--color-primary); 
  --stage-3: #8250df; 
  --stage-4: #bf3989; 
  --stage-5: #9a6700; 
  --stage-6: #bc4c00; 
--stage-ink: var(--color-text);
  --stage-fill-first: #ffc9a8;
  --stage-fill-catalog: #d6eaff;
  --stage-fill-calc: #f9deff;
  --stage-fill-warm: #87f2c0;
  --stage-fill-order: #ffce5a;
  --stage-fill-silent: #99ccff;
  --stage-fill-won: #ccff66;
  --stage-fill-lost: #d5d8db;
--avatar-tone-1: #2c5fa8;
  --avatar-tone-2: #0f766e;
  --avatar-tone-3: #4f7a16;
  --avatar-tone-4: #9a5b07;
  --avatar-tone-5: #b03f1d;
  --avatar-tone-6: #a03063;
  --avatar-tone-7: #6544b5;
  --avatar-tone-8: #7a4a2e;
--font-base: "PT Root UI", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --text-2xs: 11px;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-md: 16px;
  --text-lg: 18px;
  --text-xl: 22px;
  --text-2xl: 28px;
  --leading-tight: 1.3;
--leading-normal: 1.43;
  --weight-normal: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
--space-05: 2px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 32px;
  --space-8: 40px;
--panel-inset: var(--space-3);
  --panel-inset-y: var(--space-2);
--chip-inset-y: var(--space-1);
  --chip-inset-x: var(--space-2);
--radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 10px;
  --radius-full: 999px;
  --shadow-sm: 0 1px 2px color-mix(in srgb, var(--color-text) 6%, transparent);
  --shadow-md: 0 4px 12px color-mix(in srgb, var(--color-text) 12%, transparent);
  --focus-ring: 0 0 0 3px color-mix(in srgb, var(--color-focus) 22%, transparent);
--radius-panel: var(--radius-lg);
  --radius-control: var(--radius-md);
  --radius-input: var(--radius-sm);
  --radius-pill: var(--radius-full);
--elevation-flat: none;
  --elevation-raised: var(--shadow-sm);
  --elevation-overlay: var(--shadow-md);
--state-hover: color-mix(in srgb, var(--color-text) 5%, transparent);
  --state-active: color-mix(in srgb, var(--color-text) 9%, transparent);
  --state-selected: var(--color-primary-soft);
  --opacity-disabled: 0.5;
--label-size: var(--text-xs);
  --label-weight: var(--weight-medium);
  --label-color: var(--color-muted);
--window-head-bg: var(--color-surface-sunken);
  --caption-color: var(--color-text);
  --section-size: var(--text-sm);
  --group-gap: var(--space-4);
--link-on-page: var(--color-primary-hover);
  --label-transform: none;
  --label-tracking: 0;
--transition-fast: 120ms ease;
  --transition: 180ms ease;
--ease-card-in: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-card-out: cubic-bezier(0.64, 0, 0.78, 0);
  --duration-card: 200ms;
  --delay-stale: 400ms; 
  --duration-panel: 280ms; 
--icon-sm: 14px;
  --icon-md: 16px;
  --icon-lg: 18px;
  --loader-size: 36px; 
  --loader-width: 272px; 
  --loader-body-h: 42px; 
  --loader-ring-box: 44px; 
  --loader-ring: 20px; 
--control-h-sm: 28px;
  --control-h-md: 32px;
  --control-h: var(--control-h-md);
  --control-h-lg: 40px;
--tap-min: 0px;
--table-row-height: var(--control-h-lg);
  --table-row-height-2: 48px;
  --sidebar-width: 216px;
--field-min: 280px;
  --field-max: 480px;
--feed-max: 1400px;
  --pane-min: 260px;
--z-sticky: 10;
  --z-dropdown: 40;
  --z-modal: 100;
--z-above: 1;
--nav-bar-height: 57px;
  --nav-bar-space: calc(var(--nav-bar-height) + env(safe-area-inset-bottom));
}
* {
  box-sizing: border-box;
}
html {
  overflow-y: scroll;
}
body {
  margin: 0;
  background: var(--color-page);
  color: var(--color-text);
  font-family: var(--font-base);
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  -webkit-font-smoothing: antialiased;
font-kerning: none;
}
a {
  color: var(--color-primary);
  text-decoration: none;
}
a:hover {
  color: var(--color-primary-hover);
  text-decoration: underline;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
@media (hover: none) {
  :root {
    --control-h: 44px;
    --control-h-lg: 48px;
    --tap-min: 44px;
  }
}
@media (hover: none) and (pointer: coarse) {
  :is(a, button)[data-tel-call] {
    display: none;
  }
a[data-tel-text] {
    color: inherit;
    cursor: text;
    pointer-events: none;
    text-decoration: none;
  }
}
.app-shell {
  display: grid;
  grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
  min-height: 100vh;
}
.sidebar {
  background: var(--color-sidebar);
  color: var(--color-sidebar-text);
  display: flex;
  flex-direction: column;
  padding: var(--space-4) var(--space-3);
}
.brand {
  align-items: center;
  color: var(--color-on-primary);
  display: flex;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
  padding: var(--space-2) var(--space-3);
}
.brand-mark {
  flex: none;
  height: var(--space-6);
  width: var(--space-6);
}
.brand:hover {
  color: var(--color-on-primary);
  text-decoration: none;
}
.brand strong {
  display: block;
  white-space: nowrap;
  font-size: var(--text-md);
  font-weight: var(--weight-bold);
  letter-spacing: 0.01em;
}
.sidebar-profile {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
  padding: 0 var(--space-3);
}
.sidebar-profile-name {
  color: var(--color-on-primary);
  font-weight: var(--weight-semibold);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
a.sidebar-profile-name:hover { text-decoration: underline; }
a.sidebar-profile {
  border-radius: var(--radius-md);
  color: inherit;
  min-height: 44px;
  text-decoration: none;
}
a.sidebar-profile:hover .sidebar-profile-name { text-decoration: underline; }
.sidebar-profile-ava {
  display: inline-flex;
  flex: none;
  position: relative;
}
.sidebar-profile-role {
  background: var(--color-warning-dot);
  border: 2px solid var(--color-sidebar);
  border-radius: var(--radius-full);
  bottom: calc(-1 * var(--space-1) / 2);
  height: var(--space-3);
  position: absolute;
  right: calc(-1 * var(--space-1) / 2);
  width: var(--space-3);
}
.sidebar-profile-text {
  display: grid;
  min-width: 0;
}
.sidebar-profile-sub {
  color: var(--color-sidebar-text);
  font-size: var(--text-xs);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.profile-head {
  align-items: flex-start;
  display: flex;
  gap: var(--space-3);
}
.profile-head form {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.profile-head label.ui-btn {
  position: relative;
}
.profile-head label.ui-btn:focus-within {
  box-shadow: var(--focus-ring);
}
.ui-avatar.profile-photo {
  font-size: var(--text-xl);
  height: 64px;
  width: 64px;
}
@media (hover: none) {
  #telephony-apps .ui-row-end a {
    margin-block: calc((var(--icon-lg) - var(--tap-min)) / 2);
  }
}
.avatar-crop {
  aspect-ratio: 1;
  background: var(--color-surface-sunken);
  border-radius: var(--radius-panel);
  cursor: grab;
  margin: var(--space-3) auto;
  overflow: hidden;
  position: relative;
  touch-action: none;
  user-select: none;
  width: min(100%, 320px);
}
.avatar-crop.is-grabbing { cursor: grabbing; }
.avatar-crop:focus-visible { box-shadow: var(--focus-ring); outline: none; }
.avatar-crop img {
  left: 50%;
  max-width: none;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform-origin: center;
  will-change: transform;
}
.avatar-crop__mask {
  border: 2px solid var(--color-surface);
  border-radius: var(--radius-full);
  box-shadow: 0 0 0 100vmax color-mix(in srgb, var(--color-text) 55%, transparent);
  inset: 0;
  pointer-events: none;
  position: absolute;
}
.avatar-crop-zoom {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  margin: 0 auto;
  width: min(100%, 320px);
}
.avatar-crop-zoom input[type="range"] { flex: 1 1 auto; min-width: 0; }
.avatar-crop-preview {
  align-items: center;
  display: flex;
  gap: var(--space-3);
  margin: var(--space-3) auto 0;
  width: min(100%, 320px);
}
.brand small {
  color: var(--color-sidebar-muted);
  display: block;
  font-size: var(--text-xs);
  margin-top: var(--space-05);
}
.nav-list {
  display: grid;
  gap: var(--space-05);
}
.nav-item {
  align-items: center;
  border-radius: var(--radius-md);
  color: var(--color-sidebar-text);
  display: flex;
  font-weight: var(--weight-medium);
  gap: var(--space-2);
  min-height: max(36px, var(--tap-min));
  padding: var(--space-2) var(--space-3);
  transition: background var(--transition-fast), color var(--transition-fast);
}
.nav-item:hover {
  background: var(--color-sidebar-hover);
  color: var(--color-on-primary);
  text-decoration: none;
}
.icon {
  --icon-stroke: 2.25;
  flex-shrink: 0;
  height: var(--icon-md);
  vertical-align: -0.15em;
  width: var(--icon-md);
}
.icon--sm {
  --icon-stroke: 2.5;
  height: var(--icon-sm);
  width: var(--icon-sm);
}
.icon--lg {
  --icon-stroke: 2;
  height: var(--icon-lg);
  width: var(--icon-lg);
}
.ui-avatar {
  align-items: center;
  border-radius: var(--radius-full);
  display: inline-flex;
  flex-shrink: 0;
  height: 28px;
  justify-content: center;
  overflow: hidden;
  user-select: none;
  width: 28px;
}
.avatar--photo { object-fit: cover; object-position: 50% 20%; }
.avatar--tone-1 { --avatar-color: var(--avatar-tone-1); }
.avatar--tone-2 { --avatar-color: var(--avatar-tone-2); }
.avatar--tone-3 { --avatar-color: var(--avatar-tone-3); }
.avatar--tone-4 { --avatar-color: var(--avatar-tone-4); }
.avatar--tone-5 { --avatar-color: var(--avatar-tone-5); }
.avatar--tone-6 { --avatar-color: var(--avatar-tone-6); }
.avatar--tone-7 { --avatar-color: var(--avatar-tone-7); }
.avatar--tone-8 { --avatar-color: var(--avatar-tone-8); }
.avatar--initial {
  background: var(--avatar-color);
  color: var(--color-surface);
  font-size: calc(28px * 0.4);
  font-weight: var(--weight-semibold);
  letter-spacing: 0.02em;
  line-height: 1;
}
.avatar--empty {
  background: color-mix(in srgb, var(--avatar-color) 18%, var(--color-surface));
}
.nav-icon,
.icon.nav-icon {
  --icon-stroke: 2;
  flex: 0 0 var(--icon-lg);
  height: var(--icon-lg);
  width: var(--icon-lg);
}
@media (min-width: 981px) {
  .nav-item--box .icon.nav-icon {
    background: var(--color-sidebar-active);
    border-radius: var(--radius-full);
    color: var(--color-sidebar-active-text);
    flex: 0 0 24px;
    height: 24px;
    margin: -3px;
    overflow: hidden;
    padding: calc((24px - var(--icon-lg)) / 2);
    width: 24px;
  }
html:not([data-sidebar="wide"]) .nav-item--box .icon.nav-icon {
    flex-basis: 30px;
    height: 30px;
    margin: -6px;
    padding: calc((30px - var(--icon-lg)) / 2);
    width: 30px;
  }
.nav-item--box.active .icon.nav-icon {
    outline: 2px solid var(--color-sidebar-active-text);
    outline-offset: -2px;
  }
}
.nav-item.active {
  background: color-mix(in srgb, var(--color-sidebar-active) 24%, var(--color-sidebar));
  box-shadow: inset 3px 0 0 var(--color-sidebar-active);
  color: var(--color-sidebar-active-text);
  font-weight: var(--weight-semibold);
}
.nav-item.disabled {
  color: var(--color-sidebar-muted);
  cursor: default;
}
.nav-item.disabled:hover {
  background: transparent;
  color: var(--color-sidebar-muted);
}
.nav-more {
  display: none;
}
.main-area {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.topbar {
  align-items: center;
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex: 0 0 auto;
  gap: var(--space-4);
  justify-content: space-between;
  min-height: 48px;
  padding: var(--space-2) var(--space-6);
}
.topbar-title {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-3);
}
.topbar-title .eyebrow {
  margin: 0;
}
.topbar :is(.notification-button, .admin-link) {
  min-height: max(32px, var(--tap-min));
}
.topbar h1,
.summary-main h2,
.panel-header h2,
.info-panel h2 {
  margin: 0;
}
.topbar h1 {
  font-size: var(--text-lg);
  font-weight: 700;
  line-height: 1.25;
}
.topbar-actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: var(--space-3);
}
.topbar .account-menu {
  position: relative;
}
.topbar .account-menu-toggle {
  display: none;
}
.topbar .account-menu .menu-drop-body {
  align-items: center;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: flex;
  gap: var(--space-3);
  min-width: 0;
  padding: 0;
  position: static;
}
.sidebar-account {
  border-top: 1px solid var(--color-sidebar-border);
  display: grid;
  gap: var(--space-1);
margin-top: auto;
  padding-top: var(--space-3);
}
.sidebar-account:empty {
  border: 0;
  display: none;
  margin: 0;
  padding: 0;
}
.sidebar-account .topbar-actions {
  align-items: stretch;
  flex-direction: column;
  gap: var(--space-1);
}
.sidebar-account .account-menu {
  position: relative;
}
.sidebar-account .account-menu .ui-label {
  display: none;
}
.sidebar-account .account-menu-toggle {
  display: none;
}
.sidebar-account .account-menu .menu-drop-body {
  align-items: stretch;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
  padding: 0;
  position: static;
}
.sidebar-account :is(.notification-button, .ui-label, .ui-btn, .admin-link) {
  background: none;
  border: 0;
  border-radius: var(--radius-md);
  color: var(--color-sidebar-text);
  justify-content: flex-start;
  padding: var(--space-2) var(--space-3);
  width: 100%;
}
.sidebar-account :is(.notification-button, .ui-label, .ui-btn, .admin-link):hover {
  background: var(--color-sidebar-hover);
  color: var(--color-on-primary);
}
@media (min-width: 981px) {
  .sidebar-account .ui-label[data-view-role] { display: none; }
}
.sidebar-account .ui-label[data-view-role] {
  background: var(--color-warning-bg);
  color: var(--color-warning-text);
}
.sidebar-account .notification-menu-body .ui-btn {
  color: var(--color-muted);
}
.sidebar-account .notification-menu-body .ui-btn:hover {
  background: none;
  color: var(--color-text);
}
.sidebar-account .logout-form,
.sidebar-account .logout-form .ui-btn {
  width: 100%;
}
.sidebar-account .menu-drop-body {
  left: 0;
  right: auto;
}
.sidebar-account .menu-drop-body {
  bottom: calc(100% + var(--space-1));
  top: auto;
}
@media (min-width: 981px) {
  button.nav-item {
    background: transparent;
    border-color: transparent;
    justify-content: flex-start;
  }
button.nav-item:hover {
    background: var(--color-sidebar-hover);
    border-color: transparent;
  }
}
[data-sidebar-toggle] { margin-top: var(--space-2); width: 100%; }
[data-sidebar-toggle] .nav-icon { rotate: 180deg; transition: rotate var(--transition); }
@media (min-width: 981px) {
.sidebar {
    height: 100dvh;
    position: sticky;
    top: 0;
z-index: var(--z-dropdown);
  }
:root { --sidebar-width: 60px; }
html:not([data-sidebar="wide"]) .sidebar { cursor: pointer; }
html[data-sidebar="wide"] .sidebar {
    animation: sidebar-reveal var(--transition) var(--ease-card-in);
    box-shadow: var(--elevation-overlay);
    width: 216px;
    z-index: var(--z-dropdown);
  }
html:not([data-sidebar="wide"]) .sidebar {
    align-items: center;
    padding: var(--space-3) var(--space-2);
  }
html:not([data-sidebar="wide"]) .brand { justify-content: center; margin-bottom: var(--space-2); padding: var(--space-2) 0; }
  html:not([data-sidebar="wide"]) .brand-mark { height: var(--space-7); width: var(--space-7); }
  html:not([data-sidebar="wide"]) .brand strong,
  html:not([data-sidebar="wide"]) .sidebar-profile-name,
  html:not([data-sidebar="wide"]) .sidebar-profile-sub { display: none; }
html:not([data-sidebar="wide"]) .sidebar-profile {
    margin-bottom: var(--space-3);
    padding: 0;
  }
html:not([data-sidebar="wide"]) .nav-list { width: 100%; }
html:not([data-sidebar="wide"]) .nav-item {
    justify-content: center;
    padding: var(--space-2) 0;
    position: relative;
  }
html:not([data-sidebar="wide"]) [data-sidebar-toggle] .nav-icon { rotate: 0deg; }
html:not([data-sidebar="wide"]) .nav-item .nav-label {
    background: var(--color-sidebar);
    border-radius: var(--radius-sm);
    box-shadow: var(--elevation-overlay);
    color: var(--color-on-primary);
    font-size: var(--text-sm);
    font-weight: var(--weight-medium);
    left: calc(100% + var(--space-2));
    opacity: 0;
    padding: var(--space-1) var(--space-2);
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    visibility: hidden;
    white-space: nowrap;
    z-index: var(--z-dropdown);
  }
html:not([data-sidebar="wide"]) .nav-item:hover .nav-label,
  html:not([data-sidebar="wide"]) .nav-item:focus-visible .nav-label {
    opacity: 1;
    transition: opacity var(--transition-fast), visibility var(--transition-fast);
    visibility: visible;
  }
html:not([data-sidebar="wide"]) .nav-item .nav-badge-slot {
    margin: 0;
    position: absolute;
    right: 2px;
    top: 2px;
  }
html:not([data-sidebar="wide"]) .nav-item .nav-badge {
    min-width: 16px;
    padding: 1px 4px;
  }
html:not([data-sidebar="wide"]) .sidebar-account { width: 100%; }
html:not([data-sidebar="wide"]) .sidebar-account .notification-label { display: none; }
html:not([data-sidebar="wide"]) .sidebar-account :is(.notification-button, .account-menu-toggle) {
    justify-content: center;
    padding: var(--space-2) 0;
    position: relative;
    width: 100%;
  }
html:not([data-sidebar="wide"]) .sidebar-account .notification-button .nav-badge {
    position: absolute;
    right: 2px;
    top: 2px;
  }
html:not([data-sidebar="wide"]) .sidebar-account .account-menu-toggle {
    background: none;
    border: 0;
    color: var(--color-sidebar-text);
    display: inline-flex;
    min-height: max(36px, var(--tap-min));
  }
html:not([data-sidebar="wide"]) .sidebar-account .account-menu-toggle:hover {
    background: var(--color-sidebar-hover);
    color: var(--color-on-primary);
  }
html:not([data-sidebar="wide"]) .sidebar-account .account-menu .menu-drop-body {
    background: var(--color-sidebar);
    border: 1px solid var(--color-sidebar-border);
    border-radius: var(--radius-control);
    bottom: 0;
    box-shadow: var(--elevation-overlay);
    display: none;
    left: calc(100% + var(--space-2));
    min-width: 180px;
    padding: var(--space-1);
    position: absolute;
    top: auto;
    z-index: var(--z-dropdown);
  }
html:not([data-sidebar="wide"]) .sidebar-account .account-menu.is-open .menu-drop-body { display: flex; }
}
@media (min-width: 981px) and (max-height: 660px) {
  html:not([data-sidebar="wide"]) .nav-item {
    min-height: var(--control-h-sm);
    padding: var(--space-1) var(--space-3);
  }
html[data-sidebar="wide"] .nav-list {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
  }
}
@media (max-width: 980px) {
  .app-shell .sidebar button[data-sidebar-toggle] { display: none; }
}
@keyframes sidebar-reveal {
  from { clip-path: inset(0 calc(100% - 60px) 0 0); }
  to { clip-path: inset(0 -24px 0 0); }
}
.topbar-tabs {
  align-items: center;
  border-bottom: 0;
  margin: 0;
  min-width: 0;
}
.topbar-tabs form {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
}
.topbar .deal-result-bar {
  flex: 0 0 auto;
  margin: 0 0 0 auto;
  min-height: 0;
}
.topbar .deal-result-bar .record-count {
  margin: 0;
  white-space: nowrap;
}
.topbar-tail {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: var(--space-3);
  margin-left: auto;
}
@media (max-width: 1400px) {
  .topbar-title .eyebrow {
    display: none;
  }
}
@media (max-width: 1100px) {
  .topbar-actions {
    flex-wrap: wrap;
  }
}
.admin-link,
.row-action,
button {
  align-items: center;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  gap: var(--space-2);
  justify-content: center;
  min-height: var(--control-h);
  padding: 6px 12px;
  transition: background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);
}
.admin-link,
.row-action {
  background: var(--color-surface);
  color: var(--color-text);
}
.admin-link:hover,
.row-action:hover {
  background: var(--color-neutral-bg);
  border-color: var(--color-border-strong);
  color: var(--color-text);
  text-decoration: none;
}
button {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-on-primary);
  text-decoration: none;
}
button:hover {
  background: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
  color: var(--color-on-primary);
  text-decoration: none;
}
button:active {
  background: var(--color-primary-active);
}
.admin-link:active,
.row-action:active,
.stage-rail-step:active,
.tl-filter-btn:active,
.tl-scope-btn:active,
.ui-tabs-item:active,
.tl-compose-tab:active {
  background-image: linear-gradient(var(--state-active), var(--state-active));
}
button:disabled,
input:disabled,
select:disabled,
textarea:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}
button:disabled:hover {
  background: var(--color-primary);
}
.row-action[aria-disabled="true"]:hover {
  background: var(--color-surface);
}
.htmx-indicator { display: none; }
.htmx-request .htmx-indicator,
.htmx-request.htmx-indicator { display: inline-flex; }
.htmx-request button[type="submit"],
button.htmx-request {
  cursor: progress;
  opacity: 0.7;
  pointer-events: none;
}
.spinner {
  animation: spin 700ms linear infinite;
  border: 2px solid color-mix(in srgb, currentColor 25%, transparent);
  border-radius: var(--radius-full);
  border-top-color: currentColor;
  height: var(--icon-sm);
  width: var(--icon-sm);
}
@keyframes spin { to { transform: rotate(360deg); } }
.page-loading {
  background: var(--color-sidebar);
  border: 1px solid var(--color-sidebar-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  color: var(--color-on-primary);
  inset: 50% auto auto 50%;
  padding: var(--space-3) var(--space-4);
  pointer-events: none;
  position: fixed;
  transform: translate(-50%, -50%);
  width: min(var(--loader-width), calc(100vw - var(--space-6)));
  z-index: calc(var(--z-modal) + 1);
}
.page-loading[hidden] { display: none; }
.page-loading--ring {
  align-items: center;
  border-radius: var(--radius-full);
  display: flex;
  height: var(--loader-ring-box);
  justify-content: center;
  padding: 0;
  width: var(--loader-ring-box);
}
.loader__ring {
  border-width: 2.5px;
  height: var(--loader-ring);
  width: var(--loader-ring);
}
.loader {
  align-items: center;
  animation: loader-in var(--duration-card) var(--ease-card-in) both;
  display: flex;
  font: var(--weight-medium) var(--text-md) / var(--leading-tight) var(--font-base);
  gap: var(--space-3);
justify-content: center;
  max-width: 100%;
  min-width: 0;
}
@keyframes loader-in {
  from { opacity: 0; transform: translateY(var(--space-1)); }
}
.loader[data-stage="hidden"] { visibility: hidden; }
.loader__house {
  color: var(--color-on-primary);
  flex: none;
  height: var(--loader-size);
  width: var(--loader-size);
}
.loader__body {
  display: flex;
  flex: 0 1 auto;
  flex-direction: column;
  justify-content: center;
  min-height: var(--loader-body-h);
  min-width: 0;
  overflow-wrap: anywhere;
}
.loader__message {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.loader__message:empty,
.loader__actions[hidden] { display: none; }
.loader__actions {
  display: flex;
  gap: var(--space-2);
  margin-top: var(--space-2);
  pointer-events: auto;
}
.loader .house-frame,
.loader .house-walls,
.loader .house-roof {
  animation-duration: calc(var(--duration-card) * 15);
  animation-iteration-count: infinite;
  animation-timing-function: var(--ease-card-in);
  transform-box: fill-box;
  transform-origin: center;
}
.loader .house-frame { animation-name: loader-frame; }
.loader .house-walls { animation-name: loader-walls; }
.loader .house-roof { animation-name: loader-roof; }
@keyframes loader-frame {
  0%, 70% { opacity: 1; transform: none; }
  78%, 82% { opacity: 0.3; transform: translateY(3px); }
  90%, 100% { opacity: 1; transform: none; }
}
@keyframes loader-walls {
  0%, 70% { opacity: 1; transform: none; }
  78%, 88% { opacity: 0.3; transform: translateY(2px); }
  95%, 100% { opacity: 1; transform: none; }
}
@keyframes loader-roof {
  0%, 70% { opacity: 1; transform: none; }
  78%, 92% { opacity: 0.3; transform: translateY(-3px); }
  100% { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .loader { animation: none; }
  .loader .house-frame,
  .loader .house-walls,
  .loader .house-roof { animation: none; opacity: 1; transform: none; }
  .loader__house { animation: loader-pulse calc(var(--duration-card) * 8) ease-in-out infinite; }
.loader__ring { animation: loader-pulse calc(var(--duration-card) * 8) ease-in-out infinite; }
  @keyframes loader-pulse { 50% { opacity: 0.45; } }
}
.content {
  flex: 1;
  min-height: 0;
  padding: var(--space-1) var(--space-6) var(--space-6);
}
.page-actions {
  align-items: center;
  display: flex;
  gap: var(--space-3);
  justify-content: flex-end;
  margin-bottom: var(--space-4);
}
.logout-form {
  margin: 0;
}
.eyebrow {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0;
  margin: 0 0 var(--space-1);
  text-transform: uppercase;
}
label {
  color: var(--label-color);
  display: grid;
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  gap: var(--space-1);
}
.field-caption {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  letter-spacing: var(--label-tracking);
  text-transform: var(--label-transform);
}
input,
select,
textarea {
  background: var(--color-surface);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  color: var(--color-text);
  font: inherit;
  font-size: var(--text-base);
  min-height: var(--control-h);
padding: 5px 10px;
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
input:hover,
select:hover,
textarea:hover {
  border-color: var(--color-faint);
}
input:focus,
select:focus,
textarea:focus {
  border-color: var(--color-focus);
  outline: none;
  box-shadow: var(--focus-ring);
}
.req {
  color: var(--color-danger-solid);
  font-weight: var(--weight-semibold);
  text-decoration: none;
}
.entity-form div:has(> input[required], > select[required], > textarea[required]) > label::after,
.form-section div:has(> input[required], > select[required], > textarea[required]) > label::after {
  color: var(--color-danger-solid);
  content: " *";
  font-weight: var(--weight-semibold);
}
input:user-invalid,
select:user-invalid,
textarea:user-invalid {
  background: color-mix(in srgb, var(--color-danger-bg) 55%, var(--color-surface));
  border-color: var(--color-danger-solid);
}
input:user-invalid:focus,
select:user-invalid:focus,
textarea:user-invalid:focus {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-danger-solid) 20%, transparent);
}
.field-error,
.helptext {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.helptext ul {
  margin: 0;
  padding-left: var(--space-4);
}
.errorlist {
  color: var(--color-danger-text);
  font-size: var(--text-xs);
  list-style: none;
  margin: var(--space-05) 0 0;
  padding: 0;
}
select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%2364748b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");
  background-position: right 10px center;
  background-repeat: no-repeat;
  padding-right: 28px;
}
input[type="checkbox"],
input[type="radio"] {
  appearance: auto;
  -webkit-appearance: auto;
  accent-color: var(--color-primary);
  background: none;
  min-height: auto;
}
textarea {
  line-height: var(--leading-normal);
  min-height: 64px;
  resize: vertical;
}
.table-panel,
.summary-panel,
.info-panel,
.mobile-lead-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-flat);
}
.panel-header {
  align-items: start;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4);
}
.panel-header h2,
.info-panel h2 {
  font-size: var(--text-lg);
  font-weight: 700;
}
.panel-header p,
.summary-main p,
.info-panel p {
  color: var(--color-muted);
  margin: var(--space-1) 0 0;
}
.record-count,
.status-badge {
  border-radius: var(--radius-pill);
  display: inline-flex;
  font-size: var(--text-xs);
  font-weight: 700;
  line-height: 1;
  padding: 5px 8px;
  white-space: nowrap;
}
.record-count {
  background: var(--color-neutral-bg);
  color: var(--color-neutral-text);
}
a.ui-label:hover {
  background: color-mix(in srgb, var(--color-neutral-bg) 88%, var(--color-text));
  color: var(--color-text);
  text-decoration: none;
}
.table-scroll {
  overflow-x: auto;
}
table {
  border-collapse: collapse;
  width: 100%;
}
th,
td {
  border-bottom: 1px solid var(--color-border);
  padding: var(--space-2) var(--space-4);
  text-align: left;
  vertical-align: middle;
}
th {
  background: var(--color-surface-sunken);
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 700;
  white-space: nowrap;
position: relative;
}
tbody tr {
  height: var(--table-row-height);
}
tbody tr:hover {
  background: var(--color-surface-sunken);
}
.lead-title {
  color: var(--color-text);
  display: block;
  font-weight: var(--weight-semibold);
}
.lead-title:hover {
  color: var(--color-primary-hover);
}
.lead-channel {
  float: left;
  margin: 2px var(--space-1) 0 0;
}
.cell-waiting--overdue {
  color: var(--color-danger-text);
  font-weight: var(--weight-medium);
}
.muted {
  color: var(--color-muted);
  display: block;
  font-size: var(--text-xs);
  margin-top: 2px;
}
.status-order,
.status-done {
  background: var(--color-success-bg);
  color: var(--color-success-text);
}
.status-new {
  background: var(--color-success-solid);
  color: var(--color-on-primary);
}
.status-in-work,
.status-wait,
.status-calculation {
  background: var(--color-warning-bg);
  color: var(--color-warning-text);
}
.status-work {
  background: var(--color-primary-soft);
  color: var(--color-primary-active);
}
.status-closed {
  background: var(--color-danger-bg);
  color: var(--color-danger-text);
}
.status-cancelled {
  background: var(--color-danger-bg);
  color: var(--color-danger-text);
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}
.orders-table tr.row-cancelled,
.mobile-lead-card.row-cancelled {
  background: var(--color-danger-bg);
  --color-text: var(--color-danger-text);
  --color-muted: color-mix(in srgb, var(--color-danger-text), transparent 25%);
}
.orders-table tr.row-cancelled:hover {
  background: color-mix(in srgb, var(--color-danger-bg), var(--color-text) 6%);
}
.orders-table tr.row-new,
.mobile-lead-card.row-new {
  background: var(--color-success-bg);
  --color-muted: var(--color-success-text);
}
.orders-table tr.row-new:hover {
  background: color-mix(in srgb, var(--color-success-bg), var(--color-text) 6%);
}
.orders-table tr.row-done,
.mobile-lead-card.row-done {
  background: var(--color-success-bg);
  --color-muted: var(--color-success-text);
}
.orders-table tr.row-done:hover {
  background: color-mix(in srgb, var(--color-success-bg), var(--color-text) 6%);
}
.orders-table tr.row-soon,
.mobile-lead-card.row-soon {
  background: var(--color-warning-bg);
  --color-muted: var(--color-warning-text);
}
.orders-table tr.row-soon:hover {
  background: color-mix(in srgb, var(--color-warning-bg), var(--color-text) 6%);
}
.orders-table tr.row-pending,
.mobile-lead-card.row-pending {
  background: color-mix(in srgb, var(--color-primary-soft), var(--color-primary) 16%);
  --color-muted: color-mix(in srgb, var(--color-muted), var(--color-text) 25%);
}
.orders-table tr.row-pending:hover {
  background: color-mix(in srgb, var(--color-primary-soft), var(--color-primary) 24%);
}
.mobile-lead-list {
  display: none;
}
.detail-layout {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.summary-panel {
  display: grid;
  gap: var(--space-4);
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, 1fr);
  padding: var(--space-5);
}
.priority-panel {
  align-items: start;
}
.summary-main h2 {
  font-size: var(--text-xl);
  font-weight: 700;
}
.summary-grid,
.field-list {
  display: grid;
  gap: var(--space-3);
  margin: 0;
}
.summary-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.summary-grid div,
.field-list div {
  min-width: 0;
}
dt {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 700;
}
dd {
  margin: 3px 0 0;
}
.info-panel {
  padding: var(--space-4);
}
.workspace-grid {
  align-items: flex-start;
  display: grid;
  gap: var(--space-4);
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
}
.workspace-column {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  min-width: 0;
}
.doc-text {
  background: var(--color-neutral-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  font: inherit;
  line-height: 1.5;
  margin: var(--space-3) 0 0;
  padding: var(--space-3) var(--space-4);
  white-space: pre-wrap;
  word-break: break-word;
}
.workspace-panel {
  align-self: stretch;
}
.workspace-panel h2 {
  font-size: var(--text-md);
  margin: 0;
}
.detail-section {
  align-self: start;
}
.detail-section > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: var(--text-md);
  font-weight: 700;
  gap: var(--space-2);
  list-style: none;
}
.detail-section > summary::-webkit-details-marker {
  display: none;
}
.detail-section > summary::before {
  border: solid var(--color-muted);
  border-width: 0 1.5px 1.5px 0;
  content: "";
  display: inline-block;
  height: 7px;
  transform: rotate(-45deg);
  transition: transform var(--transition-fast);
  width: 7px;
}
.detail-section[open] > summary::before {
  transform: rotate(45deg);
}
.detail-section > summary:focus-visible {
  border-radius: var(--radius-sm);
  outline: 2px solid var(--color-focus);
  outline-offset: 4px;
}
.detail-section > summary + * {
  margin-top: var(--space-4);
}
.field-list.compact {
  margin-top: var(--space-4);
}
.activity-list {
  display: grid;
  gap: var(--space-3);
  list-style: none;
  margin: var(--space-4) 0 0;
  padding: 0;
}
.activity-list li {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: var(--space-3);
}
.activity-list {
  list-style: decimal;
  padding-left: var(--space-5);
}
.quote-status {
  background: var(--color-neutral-bg);
  border-radius: var(--radius-pill);
  color: var(--color-neutral-text);
  font-size: var(--text-xs);
  font-weight: 700;
  padding: 5px 8px;
}
.quote-detail-shell--chat {
  align-items: start;
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 320px) minmax(0, 1fr);
}
.quote-detail-shell--chat .quote-detail-page {
  min-width: 0;
}
@media (max-width: 1199px) {
  .quote-detail-shell--chat {
    grid-template-columns: minmax(0, 1fr);
  }
}
.quote-head-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.quote-hero {
  align-items: stretch;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  display: grid;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 1fr) minmax(320px, auto);
  margin-bottom: var(--space-3);
  padding: var(--space-4);
}
.quote-hero-main {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}
.quote-hero-main h2 {
  font-size: var(--text-xl);
  line-height: 1.25;
  margin: 0;
}
.quote-hero-main .muted {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: 0;
}
.quote-hero-side {
  align-items: flex-end;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  justify-content: flex-end;
  min-width: 320px;
}
.quote-hero-total {
  align-self: end;
  background: var(--color-primary-soft);
  border: 1px solid var(--color-primary);
  border-radius: var(--radius-md);
  display: grid;
  gap: var(--space-1);
  min-width: 0;
  padding: var(--space-3);
  text-align: right;
  width: min(100%, 360px);
}
.quote-hero-total span {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  letter-spacing: var(--label-tracking);
  text-transform: var(--label-transform);
}
.quote-hero-total strong {
  color: var(--color-primary);
  font-family: var(--font-mono);
  font-weight: 500;
  font-size: 32px;
  line-height: 1.1;
}
.quote-totals-strip {
  align-items: stretch;
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(4, minmax(108px, 1fr));
  margin: var(--space-3) 0 0;
  max-width: 680px;
}
.quote-total-tile {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  display: grid;
  gap: 2px;
  min-height: 52px;
  padding: 6px 9px;
  position: relative;
}
.quote-total-tile dt {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  letter-spacing: var(--label-tracking);
  text-transform: var(--label-transform);
}
.quote-total-tile dd {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-weight: 500;
  font-size: var(--text-md);
  margin: 0;
  overflow-wrap: anywhere;
}
.quote-markup-form {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  margin-top: 0;
}
.quote-markup-field {
  align-items: center;
  display: flex;
  gap: var(--space-2);
}
.quote-markup-field > span {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  letter-spacing: var(--label-tracking);
  text-transform: var(--label-transform);
}
.quote-markup-field select {
  width: 4.5rem;
}
.quote-hero-edit {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: auto;
  padding-top: var(--space-4);
}
.quote-hero-side .quote-order-actions {
margin-top: var(--space-4);
  width: 100%;
}
.quote-hero-side .quote-order-actions .ui-btn {
  width: 100%;
}
.quote-head {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  justify-content: space-between;
  margin-bottom: var(--space-3);
}
.quote-head-titles h2 {
  font-size: var(--text-xl);
  line-height: 1.25;
  margin: 0;
}
.quote-head-titles .muted {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: var(--space-1) 0 0;
}
.quote-work {
  align-items: start;
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 1fr) minmax(var(--pane-min), 340px);
}
.quote-work-main {
  min-width: 0;
}
.quote-message {
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  font-size: var(--text-md);
  line-height: 1.6;
  max-width: 62ch;
  overflow-wrap: anywhere;
  padding: var(--space-3) var(--space-4);
  white-space: pre-wrap;
}
.quote-text-ok {
  background: var(--color-success-bg);
}
.quote-text-over {
  background: var(--color-danger-bg);
}
.quote-char-count--over {
  color: var(--color-danger-text);
}
.quote-rail {
  gap: var(--space-3);
max-height: calc(100vh - var(--space-6));
  overflow-y: auto;
  position: sticky;
  top: var(--space-4);
}
.quote-rail .qsum-total {
  padding-top: 0;
}
.quote-rail .quote-rail-markup-note {
  margin: calc(-1 * var(--space-2)) 0 0;
}
.quote-rail .qsum-lines {
  flex: 0 0 auto;
  overflow: visible;
}
.quote-rail .quote-delivery-summary-line {
  font-weight: var(--weight-normal);
  row-gap: var(--space-05);
}
.quote-rail .quote-delivery-summary-line span:not(.quote-delivery-address) {
  font-weight: var(--weight-semibold);
}
.quote-rail-copy {
  display: grid;
  gap: var(--space-1);
}
.quote-rail-copy .ui-btn {
  width: 100%;
}
.quote-rail-copy [data-copy-status] {
  font-size: var(--text-xs);
  min-height: 1.2em;
  text-align: center;
}
.quote-rail-group {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: var(--space-2);
  padding-top: var(--space-3);
}
.quote-rail-heading {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  letter-spacing: var(--label-tracking);
  margin: 0;
  text-transform: var(--label-transform);
}
.quote-rail-head {
  align-items: baseline;
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
}
.rail-last-change {
  align-items: flex-start;
  border-top: 1px solid var(--color-border);
  color: var(--color-muted);
  display: flex;
  font-size: var(--text-2xs);
  gap: var(--space-1);
  line-height: 1.4;
  margin: var(--space-2) 0 0;
  padding-top: var(--space-2);
}
.rail-last-change .icon {
  color: var(--color-faint);
  flex: 0 0 auto;
  margin-top: 1px;
}
.order-next-step {
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  margin: var(--space-1) 0 0;
}
.order-prewrap {
  margin: 0;
  white-space: pre-wrap;
}
.quote-order-actions {
  margin-top: var(--space-4);
}
.quote-rail .quote-order-actions {
  border-top: 1px solid var(--color-border);
  margin-top: 0;
  padding-top: var(--space-3);
}
.quote-rail .quote-order-actions .ui-btn {
  text-align: center;
  width: 100%;
}
.quote-bar {
  display: none;
}
@media (max-width: 980px) {
  .quote-work {
    grid-template-columns: minmax(0, 1fr);
  }
.quote-rail.qsum-card {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-panel);
    box-shadow: var(--elevation-flat);
    display: flex;
    max-height: none;
    padding-bottom: var(--space-4);
    position: static;
  }
.quote-detail-page--house .quote-rail .quote-order-actions:not(:has(> .muted)) {
    display: none;
  }
.quote-detail-page--house .quote-rail .qsum-total,
  .quote-detail-page--house .quote-rail-copy [data-copy-quote],
  .quote-detail-page--house .quote-rail .quote-order-actions > a {
    display: none;
  }
.quote-detail-page--house {
    --quote-bar-clearance: 108px;
    padding-bottom: var(--quote-bar-clearance);
  }
.quote-bar {
    align-items: center;
    background: var(--color-surface);
    border-top: 1px solid var(--color-border);
    bottom: var(--nav-bar-space);
    box-shadow: var(--elevation-overlay);
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2) var(--space-3);
    justify-content: space-between;
    left: 0;
    padding: var(--space-2) var(--space-4);
    position: fixed;
    right: 0;
    z-index: var(--z-sticky);
  }
.quote-bar-actions {
    display: flex;
    flex: 1 1 260px;
    gap: var(--space-2);
    justify-content: flex-end;
  }
.quote-bar-actions .ui-btn {
    flex: 1 1 auto;
    text-align: center;
  }
.quote-bar-total {
    display: flex;
    flex-direction: column;
    line-height: var(--leading-tight);
    min-width: 0;
  }
.quote-bar-total strong {
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
  }
.quote-bar-status {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-pill);
    bottom: calc(100% + var(--space-1));
    font-size: var(--text-xs);
    line-height: var(--leading-tight);
    max-width: calc(100% - var(--space-6));
    padding: var(--chip-inset-y) var(--space-3);
    position: absolute;
    right: var(--space-3);
  }
.quote-bar-status:empty {
    display: none;
  }
}
.quote-delivery-card {
  display: grid;
  gap: var(--space-3);
}
.quote-delivery-summary {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.quote-delivery-summary-main {
  max-width: min(100%, 620px);
  min-width: 0;
}
.quote-delivery-summary-main .muted {
  margin-bottom: var(--space-1);
}
.quote-delivery-summary-content {
  display: grid;
  gap: var(--space-1);
  min-width: 0;
}
.quote-delivery-address {
  color: var(--color-text);
  font-size: var(--text-md);
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
  overflow-wrap: anywhere;
}
.quote-delivery-summary-line {
  align-items: center;
  color: var(--color-text);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-sm);
  gap: 0 var(--space-2);
  line-height: 1.45;
  margin: 0;
  max-width: 100%;
}
.quote-delivery-summary-line .quote-delivery-address {
  font-size: var(--text-sm);
}
.quote-delivery-summary-line span:not(.quote-delivery-address) {
  font-weight: 800;
}
.quote-delivery-summary-line span + span::before {
  color: var(--color-border-strong);
  content: "·";
  margin-right: var(--space-2);
}
.quote-delivery-editor {
  flex-grow: 1;
  margin: 0;
  min-width: 0;
}
.quote-delivery-editor[open] ~ .quote-delivery-delete {
  display: none;
}
.quote-delivery-editor summary {
  cursor: pointer;
  list-style: none;
}
.quote-delivery-editor summary::-webkit-details-marker {
  display: none;
}
.quote-delivery-form {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-3);
  padding-top: var(--space-3);
}
.quote-delivery-layout {
  display: grid;
  gap: var(--space-3);
  grid-template-areas:
    "address map"
    "route map"
    "comment map";
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  align-items: start;
}
.quote-delivery-field {
  display: grid;
  gap: 6px;
  min-width: 0;
}
.quote-delivery-field input,
.quote-delivery-field textarea {
  width: 100%;
}
.quote-delivery-address-wrap {
  position: relative;
}
.quote-delivery-address-field {
  grid-area: address;
}
.quote-delivery-suggestions {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  display: grid;
  left: 0;
  max-height: 220px;
  overflow-y: auto;
  position: absolute;
  right: 0;
  top: calc(100% + var(--space-1));
  z-index: var(--z-dropdown);
}
.quote-delivery-suggestions[hidden] {
  display: none;
}
.quote-delivery-suggestion {
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--color-border);
  color: var(--color-text);
  cursor: pointer;
  font: inherit;
  justify-content: flex-start;
  padding: 9px 10px;
  text-align: left;
}
.quote-delivery-suggestion:hover,
.quote-delivery-suggestion:focus-visible {
  background: var(--color-neutral-bg);
  outline: none;
}
.quote-delivery-suggestion:last-child {
  border-bottom: 0;
}
.quote-delivery-map {
  background: var(--color-neutral-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  height: clamp(260px, 32vh, 360px);
  margin-top: var(--space-2);
  overflow: hidden;
}
.quote-delivery-map-column {
  grid-area: map;
  min-width: 0;
}
.quote-delivery-map-note {
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  color: var(--color-muted);
  margin: var(--space-2) 0 0;
  padding: var(--space-3);
}
.quote-delivery-route-group {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: var(--space-2);
  grid-area: route;
  padding-top: var(--space-2);
}
.quote-delivery-route-title {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 700;
}
.quote-delivery-metrics {
  align-items: start;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.quote-delivery-distance-field {
  flex: 0 1 180px;
}
.quote-delivery-help {
  color: var(--color-muted);
  font-size: var(--text-xs);
  margin: 2px 0 0;
}
.quote-delivery-comment-field {
  grid-area: comment;
}
.quote-delivery-editor-actions {
  align-items: center;
  border-top: 1px solid var(--color-border);
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
  margin-top: var(--space-3);
  padding-top: var(--space-3);
}
.quote-delivery-delete {
  margin: 0;
}
.quote-delivery-editor-actions .ui-btn {
  margin-left: auto;
}
.quote-offer-section {
  display: grid;
  gap: var(--space-3);
  margin-bottom: var(--space-3);
}
.quote-offer-list {
  display: grid;
  gap: var(--space-3);
}
.quote-offer-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  display: grid;
  gap: var(--space-3);
  padding: var(--space-3);
}
.quote-offer-header {
  align-items: start;
  display: grid;
  gap: var(--space-2);
  grid-template-columns: minmax(0, 1fr) auto;
}
.quote-offer-header h3 {
  font-size: var(--text-md);
  line-height: 1.3;
  margin: 0;
}
.quote-offer-meta {
  color: var(--color-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-sm);
  gap: 4px var(--space-2);
  line-height: 1.45;
  margin: 0;
}
.quote-offer-meta span + span::before {
  color: var(--color-border-strong);
  content: "·";
  margin-right: var(--space-2);
}
.quote-price-breakdown {
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}
.quote-price-breakdown div {
  align-content: start;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
  display: grid;
  gap: var(--space-1);
  min-width: 0;
  padding: var(--space-2);
}
.quote-price-breakdown dt {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 700;
}
.quote-price-breakdown dd {
  color: var(--color-text);
  font-size: var(--text-md);
  font-weight: 800;
  margin: 0;
  overflow-wrap: anywhere;
}
.quote-offer-prices {
  display: grid;
  gap: var(--space-2);
}
.quote-price-breakdown .quote-price-total {
  background: var(--color-primary-soft);
  border-color: var(--color-primary);
  box-shadow: none;
}
.quote-price-breakdown .quote-price-total dd {
  color: var(--color-primary);
  font-size: var(--text-lg);
}
.quote-options-list {
  display: grid;
  gap: var(--space-2);
  list-style: none;
  margin: var(--space-2) 0 0;
  padding: 0;
}
.quote-options-list li {
  align-items: start;
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  display: grid;
  gap: var(--space-2);
  grid-template-columns: minmax(0, 1fr) auto;
  justify-content: space-between;
  padding: 8px 10px;
}
.quote-options-list li::before {
  content: none;
}
.quote-options-list span {
  color: var(--color-text);
  min-width: 0;
}
.quote-options-list strong {
  flex: 0 0 auto;
  font-size: var(--text-sm);
  line-height: 1.5;
  white-space: nowrap;
}
.quote-option-main {
  align-items: start;
  display: grid;
  gap: var(--space-2);
  grid-template-columns: 16px minmax(0, 1fr);
  min-width: 0;
}
.quote-option-check {
  color: var(--color-success-text);
  font-size: var(--text-xs);
  font-weight: 800;
  line-height: 1.7;
}
.quote-option-text {
  overflow-wrap: anywhere;
}
.quote-package {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 4%, transparent);
  padding: var(--space-2);
}
.quote-package summary {
  align-items: center;
  background: var(--color-surface-sunken);
  border: 1px solid color-mix(in srgb, var(--color-primary) 22%, transparent);
  border-radius: var(--radius-sm);
  color: var(--color-text);
  cursor: pointer;
  display: flex;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: 800;
  list-style: none;
  padding: 9px 11px;
}
.quote-package[open] summary {
  background: var(--color-primary-soft);
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.quote-package summary::-webkit-details-marker {
  display: none;
}
.quote-package summary span {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 700;
}
.quote-package summary::after {
  color: var(--color-muted);
  content: "▾";
  font-size: var(--text-xs);
  margin-left: auto;
  transition: transform var(--transition-fast);
}
.quote-package[open] summary::after {
  transform: rotate(180deg);
}
.quote-package summary:focus-visible {
  border-color: var(--color-primary);
  box-shadow: var(--focus-ring);
  outline: none;
}
.quote-package .catalog-detail-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  margin-top: var(--space-3);
}
.quote-package .catalog-card-title {
  margin-bottom: var(--space-2);
}
.quote-package .catalog-attrs-list {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: var(--space-2);
}
.quote-technical-lines {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  margin-top: var(--space-3);
  padding: var(--space-3);
}
.quote-technical-lines summary {
  color: var(--color-muted);
  cursor: pointer;
  font-size: var(--text-sm);
  font-weight: 800;
}
.quote-technical-lines .table-scroll {
  margin-top: var(--space-3);
}
.quote-lines-table {
  min-width: 760px;
}
.quote-detail-actions {
  align-items: center;
  display: flex;
  gap: var(--space-3);
  justify-content: space-between;
  margin-bottom: var(--space-3);
}
.quote-copy-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: flex-end;
}
.entity-form {
  display: grid;
  gap: var(--space-4);
}
.form-section {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  padding: var(--space-5);
}
.form-section h2 {
  font-size: var(--text-lg);
  margin: 0 0 var(--space-4);
}
.entity-form div {
  display: grid;
  gap: 6px;
}
.entity-form div + div {
  margin-top: var(--space-3);
}
.form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: flex-end;
}
.mobile-lead-actions,
.dup-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.form-actions:has(> :nth-child(2)) {
  display: flex;
  gap: var(--space-2);
}
.form-actions:has(> :nth-child(2)) > :is(button, .ui-btn),
.mobile-lead-actions .ui-btn,
.dup-actions .ui-btn {
  flex: 1 1 0;
  justify-content: center;
white-space: nowrap;
}
.standalone-form {
  border-top: 0;
  display: grid;
  gap: var(--space-4);
  margin-top: 0;
  padding-top: 0;
}
.standalone-form > .field-hint { margin-top: calc(var(--space-3) * -1); }
.standalone-form > .ui-btn { justify-self: start; }
.panel-title-row {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
}
.form-error {
  background: var(--color-danger-bg);
  border: 1px solid var(--color-danger-border);
  border-radius: var(--radius-md);
  color: var(--color-danger-text);
  padding: var(--space-3);
}
.messages {
  display: grid;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}
.message {
  background: var(--color-success-bg);
  border: 1px solid var(--color-success-border);
  border-radius: var(--radius-md);
  color: var(--color-success-text);
  margin: 0;
  padding: var(--space-3);
}
.message--error {
  background: var(--color-danger-bg);
  border-color: var(--color-danger-border);
  color: var(--color-danger-text);
}
.message--warning {
  background: var(--color-warning-bg);
  border-color: var(--color-warning-border);
  color: var(--color-warning-text);
}
.message--info,
.message--debug {
  background: var(--color-surface-sunken);
  border-color: var(--color-border);
  color: var(--color-text);
}
.notify-sticker,
.crm-toast,
.kanban-toast {
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  font-size: var(--text-sm);
  z-index: var(--z-modal);
}
.crm-toast {
  align-items: center;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  bottom: var(--space-4);
  color: var(--color-text);
  display: flex;
  gap: var(--space-3);
  left: 50%;
  margin: 0;
  max-width: min(92vw, 520px);
  padding: var(--space-3) var(--space-4);
  position: fixed;
  transform: translateX(-50%);
  width: max-content;
}
@media (max-width: 980px) {
  .crm-toast { bottom: calc(var(--nav-bar-space) + var(--space-3)); }
}
body:has(#compose-chat) .crm-toast {
  bottom: auto;
  top: calc(var(--topbar-h, 0px) + var(--space-2));
}
.crm-toast--danger {
  background: var(--color-danger-bg);
  border-color: var(--color-danger-border);
  color: var(--color-danger-text);
}
.crm-toast-action {
  background: none;
  border: 0;
  cursor: pointer;
  color: inherit;
  flex: none;
  font-weight: 600;
  min-height: var(--tap-min);
  padding: 0 var(--space-2);
  text-decoration: underline;
}
.crm-toast-close {
  align-items: center;
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  flex: none;
  font-size: var(--text-lg);
  justify-content: center;
  line-height: 1;
  min-height: 44px;
  min-width: 44px;
}
.notify-stack {
  display: grid;
  gap: var(--space-2);
  justify-items: end;
  pointer-events: none;
  position: fixed;
  right: var(--space-4);
  top: calc(var(--topbar-h, 0px) + var(--space-2));
  width: min(360px, calc(100vw - 2 * var(--space-4)));
  z-index: var(--z-modal);
}
.notify-sticker {
  animation: notify-in var(--duration-card) var(--ease-card-in);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  color: var(--color-text);
  pointer-events: auto;
  position: relative;
  width: 100%;
}
.notify-sticker[hidden] { display: none; }
.notify-sticker.is-settled { animation: none; }
.notify-sticker.is-leaving {
  animation: notify-out var(--duration-card) var(--ease-card-out) forwards;
  pointer-events: none;
}
@keyframes notify-in {
  from { opacity: 0; transform: translateX(var(--space-4)); }
}
@keyframes notify-out {
  to { opacity: 0; transform: translateX(var(--space-4)); }
}
.notify-sticker-main.ui-btn {
  align-items: start;
  border-radius: var(--radius-md);
  color: var(--color-text);
  display: grid;
  font-weight: var(--weight-normal);
  gap: var(--space-2);
  grid-template-columns: auto minmax(0, 1fr);
  justify-content: stretch;
  min-height: 0;
  padding: var(--space-3) 44px var(--space-3) var(--space-3);
  text-align: left;
  white-space: normal;
  width: 100%;
}
.notify-sticker-main.ui-btn:hover { background: var(--color-surface-sunken); color: var(--color-text); }
.notify-sticker-main.ui-btn:disabled { cursor: default; opacity: 1; }
.notify-sticker-mark { display: inline-flex; justify-content: center; margin-top: 2px; width: var(--icon-md); }
.notify-sticker-mark .icon { color: var(--color-muted); }
.notify-sticker-body { display: grid; gap: 2px; min-width: 0; }
.notify-sticker-head { align-items: baseline; display: flex; gap: var(--space-2); min-width: 0; }
.notify-sticker-name { font-weight: var(--weight-semibold); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.notify-sticker-when { color: var(--color-muted); flex: none; font-size: var(--text-xs); }
.notify-sticker--lead .notify-sticker-when { color: var(--color-primary); font-weight: var(--weight-semibold); }
.notify-sticker-text {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.notify-sticker-text:empty { display: none; }
.notify-sticker-due { color: var(--color-muted); font-size: var(--text-xs); }
.notify-sticker-due[hidden] { display: none; }
.notify-sticker { border-radius: var(--radius-lg); box-shadow: var(--shadow-md); }
.notify-sticker-mark--face { margin-top: 0; position: relative; width: 28px; }
.notify-sticker-mark--face .ch-mark {
  background: var(--color-surface);
  border-radius: var(--radius-full);
  bottom: -3px;
  box-shadow: 0 0 0 2px var(--color-surface);
  height: 14px;
  position: absolute;
  right: -4px;
  width: 14px;
}
.notify-sticker-when::before {
  background: var(--tone-dot, transparent);
  border-radius: var(--radius-full);
  content: "";
  display: inline-block;
  height: 6px;
  margin-right: 5px;
  vertical-align: 1px;
  width: 6px;
}
.notify-sticker[data-tone="warning"] { --tone-dot: var(--color-warning-solid); }
.notify-sticker[data-tone="danger"] { --tone-dot: var(--color-danger-solid); }
.notify-sticker[data-tone="success"] { --tone-dot: var(--color-success-solid); }
.notify-sticker[data-tone="info"] .notify-sticker-mark .icon { color: var(--color-info-text); }
.notify-sticker[data-tone="warning"] .notify-sticker-mark .icon { color: var(--color-warning-text); }
.notify-sticker[data-tone="danger"] .notify-sticker-mark .icon { color: var(--color-danger-text); }
.notify-sticker[data-tone="success"] .notify-sticker-mark .icon { color: var(--color-success-text); }
.notify-sticker-act { color: var(--color-primary); font-size: var(--text-xs); font-weight: var(--weight-semibold); }
.notify-sticker-act:empty { display: none; }
.notify-sticker-close.ui-btn {
  min-height: 44px;
  min-width: 44px;
  position: absolute;
  right: 0;
  top: 0;
}
.notify-ring { pointer-events: none; width: 100%; }
.notify-ring:empty { display: none; }
.notify-sticker-main--static {
  display: grid;
  gap: var(--space-2);
  grid-template-columns: auto minmax(0, 1fr);
  padding: var(--space-3) 44px var(--space-3) var(--space-3);
}
.notify-sticker--call .notify-sticker-mark .icon { color: var(--color-primary); }
.notify-sticker-actions { display: flex; margin-top: var(--space-2); }
@media (max-width: 640px) {
  .notify-stack { left: var(--space-4); width: auto; }
  @keyframes notify-in { from { opacity: 0; transform: translateY(calc(-1 * var(--space-2))); } }
}
@media (max-width: 980px) {
  body:has([data-sound-unlock]:not([hidden])) {
    --nav-bar-space: calc(var(--nav-bar-height) + env(safe-area-inset-bottom) + var(--control-h-lg) + 2 * var(--space-2));
  }
.notify-sticker[data-sound-unlock] {
    bottom: calc(var(--nav-bar-height) + env(safe-area-inset-bottom) + var(--space-2));
    height: var(--control-h-lg);
    left: var(--space-4);
    position: fixed;
    right: var(--space-4);
    width: auto;
  }
[data-sound-unlock] .notify-sticker-main.ui-btn {
    align-items: center;
    height: 100%;
    padding: 0 var(--space-3);
  }
[data-sound-unlock] .notify-sticker-mark { margin-top: 0; }
  [data-sound-unlock] .notify-sticker-text { display: none; }
}
.configurator {
  align-items: start;
  display: grid;
  gap: var(--space-4);
grid-template-columns: minmax(0, 1fr) minmax(var(--pane-min), 280px);
}
.configurator-form {
  min-width: 0;
}
.configurator--with-chat {
  grid-template-columns: minmax(0, 320px) minmax(0, 1fr) minmax(var(--pane-min), 280px);
}
.calc-chat {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-flat);
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
position: sticky;
  top: var(--space-1);
  height: calc(100vh - 80px);
  height: calc(100dvh - 80px);
}
.calc-chat-toggle,
.calc-chat-bar {
  display: none;
}
.calc-chat-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}
.configurator-fields .panel--bare .form-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, max(224px, calc((100% - var(--space-5)) / 2))), 1fr));
}
.configurator-fields .panel--bare .form-grid :is(select, input) {
  max-width: none;
}
@media (max-width: 700px) {
  .configurator-fields .panel--bare .form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
.configurator-fields .panel--bare .form-grid > :nth-child(-n + 2) {
    grid-column: 1 / -1;
  }
}
@media (max-width: 1199px) {
  .configurator--with-chat {
    grid-template-columns: minmax(0, 1fr) minmax(var(--pane-min), 280px);
  }
.calc-chat {
    grid-column: 1 / -1;
    height: auto;
    position: static;
  }
.calc-chat-bar {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-size: var(--text-sm);
    font-weight: var(--weight-semibold);
    gap: var(--space-2);
    justify-content: space-between;
min-height: 44px;
    padding: var(--space-1) var(--space-4);
  }
.calc-chat-bar-title {
    align-items: center;
    display: flex;
    gap: var(--space-2);
  }
.calc-chat-caret {
    transition: transform var(--transition-fast);
  }
.calc-chat-body {
    display: none;
  }
.calc-chat-toggle:checked ~ .calc-chat-body {
    display: flex;
flex: 0 0 auto;
height: min(60vh, 420px);
  }
.calc-chat-toggle:checked ~ .calc-chat-bar .calc-chat-caret {
    transform: rotate(180deg);
  }
.calc-chat-toggle {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
  }
.calc-chat-toggle:focus-visible ~ .calc-chat-bar {
    outline: 2px solid var(--color-focus);
    outline-offset: -2px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .calc-chat-caret {
    transition: none;
  }
}
.configurator-fields {
  display: grid;
  gap: var(--space-2);
grid-template-columns: minmax(0, 1fr);
}
.configurator-fields > .panel > .panel-head,
.configurator-fields > .panel > summary.panel-head {
  min-height: max(38px, var(--tap-min));
  padding: var(--space-1) var(--space-4);
}
.configurator-fields > .panel--bare {
  background: transparent;
  border: 0;
  border-radius: 0;
}
.configurator-fields > .panel--bare > .panel-head {
  border-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}
.configurator-fields > .panel--bare > .panel-body {
  padding: 0 0 var(--space-2);
}
.configurator-fields > .panel--bare .panel-title {
  font-size: var(--text-lg);
  font-weight: var(--weight-bold);
  letter-spacing: -0.01em;
}
.configurator-fields > .panel--bare select {
  font-size: var(--text-md);
}
.configurator-fields > .panel--bare select:not(.chip-select) {
  min-height: 44px;
}
.configurator-fields .supplier-chip,
.configurator-fields .model-chip {
  align-items: center;
  flex-direction: row;
flex: 0 1 auto;
  gap: var(--space-2);
  min-width: 0;
}
.configurator-fields .chip-select {
  border-radius: var(--radius-control);
padding-block: var(--space-05);
}
.configurator-fields .supplier-chip > .chip-select,
.configurator-fields .model-chip > .chip-select {
  flex: 0 1 auto;
  min-width: 0;
}
.configurator-fields .model-chip > .chip-select {
  field-sizing: content;
max-width: 100%;
}
@media (max-width: 480px) {
  .configurator-fields .panel-head:has(> .panel-head-actions > .model-chip) {
    flex-wrap: wrap;
  }
.configurator-fields .panel-head > .panel-head-actions:has(> .model-chip),
  .configurator-fields .panel-head > .panel-head-actions > .model-chip {
    flex-basis: 100%;
  }
}
.configurator-fields .supplier-chip > .field-caption,
.configurator-fields .model-chip > .field-caption {
  white-space: nowrap;
}
@media (max-width: 480px) {
  .configurator-fields > .panel--bare > .panel-head {
    flex-wrap: wrap;
  }
.configurator-fields > .panel--bare > .panel-head > .panel-head-actions {
    display: contents;
  }
}
.configurator-fields .model-drop-note {
  align-items: center;
  color: var(--color-warning-text);
  display: flex;
  font-size: var(--text-xs);
  gap: var(--space-1);
  margin: 0 0 var(--space-2);
}
.configurator-fields > .panel:not(.panel--bare):not(.panel--quiet) .panel-title {
  font-size: var(--text-base);
}
.configurator-fields > .panel--quiet .panel-title {
  color: var(--color-muted);
  font-weight: var(--weight-medium);
}
.configurator-fields .panel-body {
  padding: var(--space-2) var(--space-4);
}
.configurator-form > .configurator-fields > .panel:first-child {
  margin-top: 0;
}
.configurator-fields label {
  display: flex;
  flex-direction: column;
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  color: var(--label-color);
  gap: var(--space-1);
  min-width: 0;
}
.configurator-fields select:not(.chip-select),
.configurator-fields input:not([type="checkbox"]):not([type="radio"]) {
  color: var(--color-text);
  min-height: var(--control-h-lg);
  width: 100%;
}
@media (max-width: 480px) {
  .configurator-fields select:not(.chip-select),
  .configurator-fields input:not([type="checkbox"]) {
    font-size: var(--text-sm);
    padding-left: 8px;
    padding-right: 24px;
  }
.configurator-fields .panel-body {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
}
.panel--collapsible > summary {
  cursor: pointer;
  flex-wrap: nowrap;
  list-style: none;
  user-select: none;
}
.panel--collapsible > summary > .panel-title {
  min-width: 0;
}
.panel--collapsible > summary::-webkit-details-marker {
  display: none;
}
.panel--collapsible:not([open]) > summary {
  border-bottom-color: transparent;
}
.panel--collapsible > summary:hover {
  background: var(--state-hover);
}
.panel-caret {
  color: var(--color-faint);
  margin-left: auto;
  transition: transform var(--transition-fast);
}
.panel--collapsible[open] > summary .panel-caret {
  transform: rotate(180deg);
}
.panel-note {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.house-dyn-list {
  display: grid;
  gap: var(--space-2);
}
.house-dyn-row {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
}
.house-dyn-row + .house-dyn-row {
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-2);
}
.house-dyn-row select {
  font-size: var(--text-sm);
  min-width: 0;
  width: 100%;
}
.house-dyn-row-bottom {
  align-items: center;
  display: flex;
  gap: var(--space-2);
}
.house-dyn-qty-label {
  color: var(--color-muted);
  font-size: var(--text-xs);
  margin-right: auto;
}
.house-dyn-row input[type="number"] {
  flex: 0 0 68px;
  text-align: center;
  width: 68px;
}
.stepper {
  align-items: stretch;
  display: flex;
  flex: 0 0 auto;
}
.stepper input[type="number"],
.configurator-fields .stepper input[type="number"] {
  border-radius: 0;
  flex: 0 0 40px;
  height: auto;
  min-height: max(var(--control-h-md), var(--tap-min));
margin: 0 -1px;
  text-align: center;
  width: 40px;
  -moz-appearance: textfield;
}
.stepper input[type="number"]::-webkit-outer-spin-button,
.stepper input[type="number"]::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}
.stepper > .ui-btn { border-radius: 0; }
.stepper > .ui-btn:first-child { border-radius: var(--radius-control) 0 0 var(--radius-control); }
.stepper > .ui-btn:last-child { border-radius: 0 var(--radius-control) var(--radius-control) 0; }
.house-dyn-base {
  align-items: center;
  color: var(--color-text);
  display: flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  margin: 0 0 var(--space-2);
}
.house-dyn-base[hidden] { display: none; }
.house-dyn-base--counted {
  border-bottom: 1px solid var(--color-border);
flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: var(--space-2);
}
.house-dyn-base-included {
  white-space: nowrap;
}
.house-dyn-base-note {
  color: var(--color-muted);
  flex: 1 0 100%;
  font-size: var(--text-xs);
  line-height: 1.4;
  margin-top: var(--space-1);
}
.house-dyn-base-note.is-empty {
  display: none;
}
.house-dyn-base-price {
  color: var(--color-text);
  font-family: var(--font-mono);
}
.house-dyn-meters {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: var(--space-1);
}
.house-dyn-meters input[type="number"] {
  flex: 0 0 56px;
  min-height: max(32px, var(--tap-min));
  text-align: center;
  width: 56px;
}
.house-dyn-unit {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.house-dyn-base-name {
  align-items: center;
  display: flex;
  gap: var(--space-1);
  min-width: 0;
}
.house-dyn-base.is-duplicated .house-dyn-base-name {
  color: var(--color-warning-text);
}
.house-dyn-row-note {
  color: var(--color-muted);
  font-size: var(--text-xs);
  line-height: 1.4;
  margin: var(--space-1) 0 0;
}
.house-dyn-remove {
  background: transparent;
  border: none;
  box-shadow: none;
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  height: var(--control-h);
  padding: 0 var(--space-2);
}
.house-dyn-remove:hover {
  background: transparent;
  color: var(--color-danger-text);
}
.house-dyn-add {
  align-items: center;
  align-self: start;
  justify-self: start;
  background: transparent;
  border: none;
  box-shadow: none;
  color: var(--color-primary);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  gap: var(--space-1);
  padding: var(--space-1) 0;
  width: auto;
}
.house-dyn-add:hover {
  background: transparent;
  color: var(--color-primary-hover);
  text-decoration: underline;
}
.opt-field {
  align-content: start;
  border: 0;
  display: grid;
  gap: var(--space-2);
  margin: 0;
  max-width: var(--field-max);
  min-width: 0;
  padding: 0;
}
.optgrp-body > .opt-field {
  max-width: none;
}
.opt-field > .field-caption {
  padding: 0;
}
.opt-list {
  align-content: start;
  display: grid;
  gap: var(--space-05);
}
.configurator-fields .opt {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--radius-control);
  color: var(--color-text);
  cursor: pointer;
  display: flex;
  flex-direction: row;
  font-size: var(--text-base);
  font-weight: var(--weight-normal);
  gap: var(--space-2);
  line-height: var(--leading-normal);
  min-height: var(--control-h);
  padding: var(--space-1) var(--space-2);
}
.configurator-fields .opt:hover {
  background: var(--state-hover);
}
.configurator-fields .opt:has(:checked) {
  background: var(--color-primary-soft);
  border-color: color-mix(in srgb, var(--color-primary) 30%, transparent);
  font-weight: var(--weight-medium);
}
.configurator-fields .opt:has(:disabled) {
  cursor: default;
  opacity: var(--opacity-disabled);
}
.opt input {
  flex-shrink: 0;
  height: 15px;
  margin: 0;
  width: 15px;
}
.opt-name {
  min-width: 0;
}
.opt-body {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
}
.opt-rate {
  color: var(--color-muted);
  font-size: var(--text-2xs);
  line-height: var(--leading-tight);
}
.opt-price--included {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-normal);
}
.opt-price {
  color: var(--color-text);
  flex-shrink: 0;
  margin-left: auto;
  padding-left: var(--space-3);
  white-space: nowrap;
}
.opt-checks-grid {
  display: grid;
  gap: var(--space-05) var(--space-3);
  grid-template-columns: repeat(auto-fit, minmax(min(236px, 100%), 1fr));
}
.opt-checks-grid .opt-name {
  white-space: nowrap;
}
.opt-checks-set,
.opt-check-block {
  display: contents;
}
.opt-checks-grid .opt:has(.opt-price--included) {
  order: 1;
}
.opt-checks-grid [data-dependent-fields] {
  border-top: 1px solid var(--color-border);
  grid-column: 1 / -1;
  order: 2;
  padding-top: var(--space-2);
}
.opt-checks-grid [data-dependent-fields]::before {
  align-self: end;
  color: var(--color-muted);
  content: attr(data-title);
  flex: 0 0 8.5rem;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  line-height: var(--control-h-lg);
}
@media (max-width: 480px) {
  .opt-checks-grid [data-dependent-fields]::before {
    flex-basis: 100%;
    line-height: var(--leading-normal);
  }
}
.optgrp-list {
  display: grid;
  gap: 0 var(--space-5);
  grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr));
}
.optgrp-set {
  display: contents;
}
.optgrp {
  border-bottom: 1px solid var(--color-border);
  min-width: 0;
  position: relative;
}
.optgrp-toggle {
  position: absolute;
  height: 1px;
  width: 1px;
  clip-path: inset(50%);
  overflow: hidden;
}
.configurator-fields .optgrp-row {
  align-items: baseline;
  border-radius: var(--radius-input);
  cursor: pointer;
  display: flex;
  flex-direction: row;
  gap: var(--space-2);
  min-height: var(--control-h);
  padding: var(--space-1) var(--space-2);
}
.configurator-fields .optgrp-row:hover {
  background: var(--state-hover);
}
.optgrp-toggle:focus-visible ~ .optgrp-row {
  box-shadow: var(--focus-ring);
}
.optgrp-title {
  color: var(--color-text);
  flex: 0 0 auto;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
}
.optgrp-value {
  color: var(--color-muted);
  font-size: var(--text-sm);
  margin-left: auto;
  min-width: 0;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#optgrp-insulation ~ .optgrp-row .optgrp-value {
  line-height: 1.25;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}
.optgrp--changed .optgrp-value {
  color: var(--color-text);
  font-weight: var(--weight-medium);
}
.optgrp-value--filled {
  display: none;
  margin-left: 0;
}
.optgrp:has(.house-dyn-row) .optgrp-value:not(.optgrp-value--filled) {
  display: none;
}
.optgrp:has(.house-dyn-row) .optgrp-value--filled {
  color: var(--color-text);
  display: block;
  font-weight: var(--weight-medium);
  margin-left: auto;
}
.optgrp-caret {
  color: var(--color-faint);
  flex: 0 0 auto;
  position: relative;
  top: 3px;
  transition: transform var(--transition-fast);
}
.optgrp-toggle:checked ~ .optgrp-row .optgrp-caret {
  transform: rotate(180deg);
}
.optgrp-body {
  background: var(--color-surface);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  display: none;
  left: var(--pop-left, 0);
  max-height: var(--pop-max-h, 60vh);
  max-width: min(440px, calc(100vw - 2 * var(--space-2)));
  min-width: var(--pop-width, var(--field-min));
  overflow-y: auto;
  padding: var(--space-2);
  position: fixed;
  top: var(--pop-top, 0);
  width: max-content;
  z-index: var(--z-dropdown);
}
.optgrp-toggle:checked ~ .optgrp-body {
  display: block;
}
.optgrp-body .opt-list {
  grid-template-columns: minmax(0, 1fr);
}
.optgrp--changed > .optgrp-row {
  background: var(--color-primary-soft);
}
.optgrp--changed .optgrp-title::before {
  background: var(--color-primary);
  border-radius: var(--radius-full);
  content: "";
  display: inline-block;
  height: 6px;
  margin-right: var(--space-1);
  vertical-align: middle;
  width: 6px;
}
.configurator-fields .optgrp-row--static,
.configurator-fields .optgrp-row--static:hover {
  background: transparent;
  cursor: default;
}
.quote-head-line {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-3);
}
.quote-head-line h1 {
  margin: 0;
}
.quote-head-line .back-link,
.quote-head-line .deal-subtitle {
  margin: 0;
}
[data-dependent-fields].is-disabled {
  display: none;
}
.house-quote-dependent-grid {
  align-items: end;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-4);
}
.house-quote-dependent-grid > * {
  flex: 1 1 200px;
  min-width: 0;
}
.house-quote-dependent-grid > .field-hint {
  flex-basis: 100%;
  margin-top: 0;
}
.house-quote-dependent-grid > .opt-row {
  display: contents;
}
.opt-row > * {
  flex: 1 1 140px;
  max-width: 240px;
  min-width: 0;
}
.opt-row > .ui-segmented {
  align-items: stretch;
  box-sizing: border-box;
  display: flex;
  flex: 0 0 auto;
  max-width: none;
  min-height: var(--control-h-lg);
}
.opt-row > .ui-segmented > .ui-segmented-item {
  flex: 1 1 0;
  font-size: inherit;
  min-width: max-content;
  white-space: nowrap;
}
.configurator-rail {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-height: calc(100vh - var(--space-8));
  min-width: 0;
  position: sticky;
  top: var(--space-4);
}
.qsum-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-flat);
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: var(--space-4);
}
.qsum-head {
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.qsum-object {
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
}
.qsum-dims {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.qsum-dims-breakdown {
  display: flex;
  flex-direction: column;
  gap: 1px;
  margin: 0;
}
.qsum-dims-row {
  color: var(--color-muted);
  display: flex;
  font-size: var(--text-xs);
  gap: var(--space-2);
  justify-content: space-between;
}
.qsum-dims-row dt {
  white-space: nowrap;
}
.qsum-dims-row dd {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
  margin: 0;
  text-align: right;
  white-space: nowrap;
}
.qsum-dims-row--warm dd {
  font-weight: var(--weight-medium);
}
.qsum-meta {
  align-items: center;
  color: var(--color-faint);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-2xs);
  gap: var(--space-1);
  margin-top: 2px;
}
.qsum-package {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 0 5px;
  white-space: nowrap;
}
.qsum-total {
  align-items: baseline;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: space-between;
  padding: var(--space-3) 0;
}
.qsum-total-label {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.qsum-total-price {
  color: var(--color-text);
  font-size: var(--text-2xl);
  font-weight: var(--weight-bold);
  letter-spacing: -0.02em;
}
.qsum-lines {
  display: block;
  margin: 0;
  min-height: 0;
  overflow-y: auto;
}
@media (min-width: 981px) {
  .configurator-rail .qsum-lines {
    flex: 0 1 auto;
    height: 16rem;
  }
}
.qsum-head,
.qsum-total {
  flex: 0 0 auto;
}
.qsum-line {
  align-items: baseline;
  display: flex;
  gap: var(--space-3);
  justify-content: space-between;
  padding: var(--space-2) 0;
}
.qsum-line + .qsum-line {
  border-top: 1px solid var(--color-border);
}
.qsum-line dt {
  color: var(--color-muted);
  font-size: var(--text-xs);
  min-width: 0;
}
.qsum-line dd {
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  margin: 0;
  text-align: right;
  white-space: nowrap;
}
.qsum-line--in-base {
  padding-left: var(--space-3);
}
.qsum-line + .qsum-line.qsum-line--in-base {
  border-top: 0;
  padding-top: var(--space-1);
}
.qsum-warnings {
  color: var(--color-warning-text);
  display: grid;
  gap: var(--space-1);
  padding-top: var(--space-3);
}
.qsum-warnings p {
  align-items: center;
  display: flex;
  font-size: var(--text-xs);
  gap: var(--space-1);
  margin: 0;
}
.qsum-note {
  color: var(--color-muted);
  font-size: var(--text-xs);
  margin: var(--space-3) 0 0;
}
.quote-delivery-approval {
  color: var(--color-warning-text);
  font-size: var(--text-xs);
  margin: var(--space-2) 0 0;
}
.qsum-actions {
  display: flex;
  flex: 0 0 auto;
  gap: var(--space-3);
}
.qsum-actions .ui-btn {
  flex: 1;
  justify-content: center;
}
.qsum-bar-total {
  display: none;
}
.qsum-expand-toggle {
  display: none;
}
.delivery-row {
  align-items: center;
  display: grid;
  gap: var(--space-1) var(--space-3);
grid-template-columns: auto minmax(0, 1fr) auto;
}
.configurator-fields .delivery-row-label,
.delivery-row-label {
  align-items: center;
  color: var(--color-text);
  display: inline-flex;
flex-direction: row;
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  gap: var(--space-1);
  white-space: nowrap;
}
.delivery-panel .panel-body,
.panel--openings .panel-body {
  padding: var(--space-2) var(--space-3);
}
.delivery-address-wrap {
  min-width: 0;
  position: relative;
}
.delivery-address-wrap input {
  width: 100%;
}
.delivery-sheet-open {
  background: none;
  border: 0;
  color: var(--color-primary);
  cursor: pointer;
  display: none;
  font-size: var(--text-xs);
  padding: 0;
  white-space: nowrap;
}
.delivery-row-meta {
  color: var(--color-muted);
  font-size: var(--text-2xs);
  grid-column: 1 / -1;
  margin: 0;
  min-height: 1em;
}
.delivery-row-meta:empty {
  display: none;
}
.delivery-suggestions {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  box-shadow: var(--elevation-overlay);
  display: grid;
  left: 0;
  max-height: 280px;
  overflow-y: auto;
  position: absolute;
  right: 0;
  top: calc(100% + 2px);
  z-index: var(--z-dropdown);
}
.delivery-suggestions[hidden] {
  display: none;
}
.delivery-suggestion {
  background: none;
  border: 0;
  border-radius: 0;
color: var(--color-text);
  cursor: pointer;
  font-size: var(--text-xs);
  font-weight: var(--weight-normal);
  justify-content: flex-start;
  min-height: 0;
  padding: var(--space-2);
  text-align: left;
}
.delivery-suggestion:hover,
.delivery-suggestion:focus-visible {
  background: var(--color-surface-sunken);
color: var(--color-text);
}
.configurator-side {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  min-width: 0;
  position: sticky;
  top: var(--space-4);
}
.configurator-map-slot {
  min-width: 0;
}
.delivery-map {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  cursor: pointer;
  display: block;
  height: 176px;
  overflow: hidden;
  width: 100%;
}
.delivery-map-caption {
  align-items: center;
  color: var(--color-muted);
  display: flex;
  font-size: var(--text-xs);
  gap: var(--space-1);
  margin: 0 0 var(--space-1);
}
.delivery-map-note {
  font-size: var(--text-2xs);
  margin: 0;
}
.delivery-sheet {
  inset: 0;
  position: fixed;
  z-index: var(--z-modal);
}
.delivery-sheet[hidden] {
  display: none;
}
.delivery-sheet-backdrop {
  background: color-mix(in srgb, var(--color-text) 45%, transparent);
  inset: 0;
  position: absolute;
}
.delivery-sheet-body {
  background: var(--color-surface);
  border-radius: var(--radius-panel);
  bottom: auto;
  box-shadow: var(--elevation-overlay);
  display: grid;
  gap: var(--space-3);
  left: 50%;
  max-height: 90vh;
  max-width: 480px;
  overflow-y: auto;
  padding: var(--space-4);
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(92vw, 480px);
}
.delivery-sheet-head {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.delivery-sheet-close {
  background: none;
  border: 0;
  cursor: pointer;
  font-size: var(--text-md);
  padding: var(--space-1);
}
@media (hover: none) {
  .delivery-sheet-close {
    margin: calc(var(--space-1) * -1);
    min-height: 44px;
    min-width: 44px;
  }
}
.delivery-sheet-address {
  color: var(--color-muted);
  font-size: var(--text-xs);
  margin: 0;
}
.delivery-sheet-map {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  height: 45vh;
  overflow: hidden;
}
.delivery-sheet-routes {
  display: grid;
  gap: var(--space-1);
  margin: 0;
}
.delivery-sheet-routes > div {
  display: flex;
  font-size: var(--text-xs);
  gap: var(--space-2);
  justify-content: space-between;
}
.delivery-sheet-routes dt {
  color: var(--color-muted);
}
.delivery-sheet-routes dd {
  margin: 0;
}
.delivery-sheet-field {
  display: grid;
  gap: 2px;
}
.qsum-line-origin {
  color: var(--color-faint);
  display: block;
  font-size: var(--text-2xs);
}
.qsum-line-origin > span {
  white-space: nowrap;
}
.qsum-notes {
  color: var(--color-muted);
  display: grid;
  gap: var(--space-1);
  padding-top: var(--space-3);
}
.qsum-notes p {
  align-items: flex-start;
  display: flex;
  font-size: var(--text-2xs);
  gap: var(--space-1);
  margin: 0;
}
.qsum-block-reason {
  font-size: var(--text-xs);
  margin: var(--space-2) 0 0;
  text-align: center;
}
.qsum-block-reason:empty {
  display: none;
}
@media (max-width: 980px) {
.configurator-side {
    display: contents;
  }
.configurator-map-slot {
    display: none;
  }
.delivery-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }
.delivery-sheet-open {
    display: inline;
    min-width: var(--tap-min);
    grid-column: 2;
    grid-row: 1;
  }
.delivery-address-wrap {
    grid-column: 1 / -1;
  }
.configurator {
grid-template-columns: minmax(0, 1fr);
padding-bottom: calc(76px + var(--nav-bar-space));
  }
.qsum-expand-toggle {
    clip-path: inset(50%);
    display: block;
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
  }
.configurator-rail {
    background: var(--color-surface);
    border-top: 1px solid var(--color-border);
    bottom: var(--nav-bar-space);
    box-shadow: var(--elevation-overlay);
    gap: 0;
    left: 0;
    max-height: none;
    position: fixed;
    right: 0;
    top: auto;
    z-index: var(--z-sticky);
  }
.qsum-card {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    display: none;
    max-height: 55vh;
    padding-bottom: var(--space-2);
  }
.qsum-expand-toggle:checked ~ .configurator-rail .qsum-card {
    display: flex;
  }
.qsum-actions {
    align-items: center;
    justify-content: space-between;
    padding: var(--space-2) var(--space-4);
  }
.qsum-actions .ui-btn {
    flex: none;
  }
.qsum-bar-total {
    cursor: pointer;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    line-height: var(--leading-tight);
    min-height: var(--tap-min);
    min-width: 0;
  }
.qsum-expand-toggle:focus-visible ~ .configurator-rail .qsum-bar-total {
    box-shadow: var(--focus-ring);
  }
.qsum-bar-label,
  .quote-bar-label {
    color: var(--color-muted);
    font-size: var(--text-2xs);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
.qsum-bar-sum {
    align-items: center;
    display: flex;
    gap: var(--space-1);
    white-space: nowrap;
  }
.qsum-bar-total .mono,
  .quote-bar-total strong {
    font-size: var(--text-lg);
    font-weight: var(--weight-bold);
  }
.qsum-bar-caret {
    color: var(--color-muted);
    transition: transform var(--transition-fast);
  }
.qsum-expand-toggle:checked ~ .configurator-rail .qsum-bar-caret {
    transform: rotate(180deg);
  }
}
@media (max-width: 480px) {
  .qsum-actions .qsum-reset-label {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
.qsum-actions #qsum-reset {
    min-width: var(--tap-min);
    padding-inline: var(--space-2);
  }
}
.color-dialog {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  max-width: 560px;
  padding: var(--space-5) var(--space-6);
  width: 90%;
}
.color-dialog::backdrop {
  background: color-mix(in srgb, var(--color-text) 45%, transparent);
}
.color-dialog-head {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: var(--space-4);
}
.color-dialog-title {
  font-size: var(--text-md);
  font-weight: var(--weight-medium);
}
.color-dialog-close {
  background: none;
  border: none;
  color: var(--color-muted);
  cursor: pointer;
  font-size: var(--text-lg);
  line-height: 1;
  padding: var(--space-05) var(--space-2);
}
@media (hover: none) {
  .color-dialog-close {
    margin: calc(var(--space-2) * -1);
    min-height: 44px;
    min-width: 44px;
  }
}
.color-dialog-hint {
  color: var(--color-muted);
  font-size: var(--text-sm);
  margin: 0 0 var(--space-4);
}
.color-dialog-grid {
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.color-dialog-grid[hidden],
.color-dialog-sides[hidden] { display: none; }
@media (max-width: 560px) {
  .color-dialog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.color-dialog-sides {
  border: 0;
  margin: var(--space-4) 0 0;
  padding: 0;
}
.color-dialog-sides legend {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
  margin-bottom: var(--space-2);
  width: 100%;
}
.color-dialog-chips {
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.color-dialog-chips .chip-check {
  align-items: flex-start;
  border-color: var(--color-border-strong);
  border-radius: var(--radius-input);
  flex-direction: column;
  gap: var(--space-1);
  line-height: 1.2;
  padding: var(--space-2) var(--space-6) var(--space-2) var(--space-3);
  text-align: left;
}
.color-dialog-chips .chip-check:active { transform: scale(.97); }
.color-dialog-chips .chip-check .mono { color: var(--color-muted); font-size: var(--text-xs); font-weight: var(--weight-normal); }
.color-dialog-chips .chip-check .icon { color: var(--color-primary); display: none; position: absolute; right: var(--space-2); top: var(--space-2); }
.color-dialog-chips .chip-check:has(input:checked) { box-shadow: inset 0 0 0 1px var(--color-primary); }
.color-dialog-chips .chip-check:has(input:checked:focus-visible) { box-shadow: inset 0 0 0 1px var(--color-primary), var(--focus-ring); }
.color-dialog-chips .chip-check:has(input:checked) .icon { display: block; }
.color-dialog-all {
  background: none;
  border: 0;
  color: var(--color-primary);
  cursor: pointer;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  letter-spacing: 0;
  min-height: var(--tap-min);
  padding: 0;
  text-decoration: underline;
  text-transform: none;
  text-underline-offset: 3px;
}
.color-dialog-sum {
  color: var(--color-muted);
  font-size: var(--text-sm);
  margin-right: auto;
  min-width: 0;
}
.prof-color-card[aria-pressed] { user-select: none; }
@media (max-width: 560px) {
  .color-dialog-chips { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .color-dialog {
    border-radius: var(--radius-panel) var(--radius-panel) 0 0;
    margin: auto 0 0;
    max-height: 90dvh;
    max-width: none;
    overflow-y: auto;
    padding-bottom: max(var(--space-5), env(safe-area-inset-bottom));
    width: 100%;
  }
  .color-dialog-footer {
    background: var(--color-surface);
    bottom: calc(-1 * max(var(--space-5), env(safe-area-inset-bottom)));
    flex-wrap: wrap;
    padding-bottom: var(--space-3);
    position: sticky;
  }
}
.color-dialog-footer {
  border-top: 1px solid var(--color-border);
  display: flex;
  gap: var(--space-2);
  justify-content: flex-end;
  margin-top: var(--space-5);
  padding-top: var(--space-4);
}
#qsum-card.htmx-request {
  opacity: 0.6;
  transition: opacity var(--transition-fast) var(--delay-stale);
}
.prof-color-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-input);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  padding: var(--space-3);
  transition: border-color var(--transition-fast), background var(--transition-fast);
}
.prof-color-card:hover { border-color: var(--color-border-strong); }
.prof-color-card.is-selected {
  background: var(--color-primary-soft);
  border-color: var(--color-primary);
  border-width: 2px;
padding: calc(var(--space-3) - 1px);
}
.prof-color-name { overflow-wrap: anywhere; }
.prof-color-swatch-big {
  border: 1px solid color-mix(in srgb, var(--color-text) 15%, transparent);
  border-radius: var(--radius-sm);
  height: 48px;
  width: 100%;
}
.prof-color-code {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 500;
}
.prof-color-name {
  color: var(--color-text);
  font-size: var(--text-sm);
}
.color-pick {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-2);
  max-width: var(--field-max);
  min-height: var(--control-h);
  padding: var(--space-1) var(--space-2);
}
.color-pick-caption {
  color: var(--color-muted);
  font-size: var(--text-sm);
}
.color-pick-swatch {
  border: 1px solid color-mix(in srgb, var(--color-text) 15%, transparent);
  border-radius: var(--radius-sm);
  flex-shrink: 0;
  height: 18px;
  width: 18px;
}
.color-pick-name {
  min-width: 0;
}
.color-pick-name--empty {
  color: var(--color-muted);
}
.color-pick .ui-btn {
  margin-left: auto;
}
.catalog-card-title {
  font-size: var(--text-md);
  line-height: 1.3;
  margin: 0;
}
.catalog-attrs-list {
  display: grid;
  gap: var(--space-2);
  margin: var(--space-4) 0 0;
}
.catalog-attrs-list div {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 2px;
  padding-top: var(--space-2);
}
.catalog-attrs-list dd {
  color: var(--color-text);
  overflow-wrap: anywhere;
}
.catalog-detail-grid {
  align-items: start;
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 980px) {
  .app-shell {
grid-template-columns: minmax(0, 1fr);
    min-width: 0;
overflow-x: clip;
  }
.topbar {
    position: sticky;
    top: 0;
    z-index: var(--z-dropdown);
  }
.app-shell {
    --sticky-top: var(--topbar-h, 0px);
  }
html {
    scroll-padding-top: var(--topbar-h, 0px);
  }
.sidebar {
    background: var(--color-sidebar);
    border-right: 0;
    border-top: 1px solid var(--color-sidebar-border);
    bottom: 0;
    left: 0;
    min-width: 0;
padding: 0 0 env(safe-area-inset-bottom);
    position: fixed;
    right: 0;
    width: 100%;
overscroll-behavior: contain;
z-index: var(--z-sticky);
  }
.app-shell .sidebar {
    padding-inline: 0;
  }
.main-area {
    min-width: 0;
padding-bottom: var(--nav-bar-space);
  }
.brand,
  .sidebar-profile {
    display: none;
  }
.nav-list {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    min-width: 0;
  }
.nav-item {
    display: none;
  }
.nav-item--bar {
    align-items: center;
    border-radius: 0;
    display: flex;
    flex: 2 1 0;
    flex-direction: column;
    font-size: var(--text-xs);
    font-weight: var(--weight-medium);
    gap: var(--space-1);
    justify-content: flex-start;
    min-height: 56px;
    min-width: 0;
    padding: var(--space-2) 0;
    position: relative;
  }
.nav-item--bar .nav-icon {
    flex: 0 0 24px;
    height: 24px;
    width: 24px;
  }
.nav-more {
    background: none;
    border: 0;
    color: var(--color-sidebar-text);
    cursor: pointer;
    flex: 1 1 0;
    font-family: inherit;
    min-width: max(44px, var(--tap-min));
  }
.nav-item--bar .nav-label {
    font-size: var(--text-2xs);
    letter-spacing: -0.05em;
    line-height: 14px;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
.nav-item--bar::before {
    border-radius: var(--radius-lg);
    content: "";
    inset: var(--space-1) 0;
    position: absolute;
    transition: transform var(--transition-fast);
  }
.nav-item--bar > * { position: relative; }
.nav-item--bar:hover,
  .nav-item--bar.active { background: transparent; }
.nav-item--bar.active { box-shadow: none; color: var(--color-sidebar-active-text); }
  .nav-item--bar.active:not(.nav-item--box)::before {
    background: var(--color-sidebar-active);
    border-radius: var(--radius-full);
    height: 32px;
    inset: var(--space-1) 0 auto;
    margin-inline: auto;
    width: 52px;
  }
  .nav-item--bar:active::before { transform: scale(0.96); }
.nav-item--box { color: var(--color-sidebar-active-text); }
  .nav-item--box::before { background: var(--color-sidebar-active); inset: var(--space-1); }
.nav-item--box.active::after {
    border-radius: var(--radius-lg);
    box-shadow: inset 0 0 0 2px var(--color-sidebar-active-text);
    content: "";
    inset: var(--space-1);
    pointer-events: none;
    position: absolute;
  }
.nav-list .nav-item--box .icon.nav-icon {
    color: var(--color-sidebar-active-text);
    flex: 0 0 40px;
    height: 40px;
    margin: -8px;
    padding: calc((40px - var(--icon-lg)) / 2);
    width: 40px;
  }
.nav-more-open .nav-item:not(.nav-item--bar) {
    align-items: center;
    border-radius: 0;
    display: flex;
    flex: 1 1 100%;
    min-height: 48px;
    order: -1;
    padding: var(--space-2) var(--space-4);
  }
.nav-more-open .nav-item--bar {
    min-width: max(44px, var(--tap-min));
  }
.nav-more-open .nav-list {
    border-bottom: 1px solid var(--color-sidebar-border);
  }
.nav-more-actions {
    display: none;
    margin-top: 0;
  }
.nav-more-open .nav-more-actions {
    display: flex;
    flex: 1 1 100%;
    flex-direction: column;
    gap: 0;
    order: -1;
  }
.nav-more-open .nav-more-actions .topbar-actions,
  .nav-more-open .nav-more-actions .menu-drop-body {
    gap: 0;
  }
.nav-more-open .nav-more-actions .notification-menu-body {
    left: var(--space-4);
    right: var(--space-4);
    width: auto;
  }
.nav-more-actions .account-menu .ui-label {
    display: inline-flex;
  }
.nav-more-actions :is(.notification-button, .ui-label, .ui-btn, .admin-link) {
    border: 0;
    font-weight: var(--weight-medium);
    gap: var(--space-2);
    min-height: 48px;
    padding: var(--space-2) var(--space-4);
  }
.nav-more-actions .ui-label {
    background: none;
    border-radius: 0;
    color: var(--color-sidebar-text);
    font-size: inherit;
  }
.nav-more-open .sidebar {
z-index: calc(var(--z-dropdown) + 1);
  }
.nav-item--bar .nav-badge-slot {
    left: 50%;
    margin-left: 4px;
    position: absolute;
    top: 4px;
  }
.nav-list:has(.nav-item:not(.nav-item--bar) .nav-badge) .nav-more::after {
    background: var(--color-danger-solid);
    border-radius: var(--radius-full);
    content: "";
    height: var(--space-2);
    left: 50%;
    margin-left: var(--space-2);
    position: absolute;
    top: var(--space-2);
    width: var(--space-2);
  }
.nav-more-open .nav-more::after {
    display: none;
  }
.order-filters :is(input, select) {
    min-height: 44px;
  }
.catalog-detail-grid,
  .summary-panel,
  .detail-layout,
  .workspace-grid {
    grid-template-columns: 1fr;
  }
.topbar {
    align-items: center;
    column-gap: var(--space-2);
    display: grid;
    grid-template-areas: "head actions" "tabs tail";
    grid-template-columns: minmax(0, 1fr) auto;
    row-gap: var(--space-2);
  }
.topbar-head {
    grid-area: head;
  }
.topbar-actions {
    flex-wrap: nowrap;
    grid-area: actions;
  }
.topbar > .topbar-tabs {
    grid-area: tabs;
    margin-left: 0;
  }
.topbar > .topbar-tail {
    gap: var(--space-2);
    grid-area: tail;
    margin-left: 0;
  }
.topbar-actions {
    justify-self: end;
  }
.topbar .deal-result-bar .topbar-label {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
.topbar .deal-result-bar {
    gap: 0;
    margin: 0;
  }
.topbar .deal-result-bar .record-count { margin-right: var(--space-2); }
.topbar .account-menu-toggle {
    align-items: center;
    background: none;
    border: 0;
    border-radius: var(--radius-control);
color: var(--color-text);
    cursor: pointer;
    display: inline-flex;
    justify-content: center;
    min-height: max(32px, var(--tap-min));
    min-width: max(32px, var(--tap-min));
  }
.topbar .account-menu-toggle:hover {
    background: var(--state-hover);
  }
.topbar .account-menu .menu-drop-body {
    background: var(--color-surface-raised);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-panel);
    box-shadow: var(--elevation-overlay);
    display: none;
    gap: var(--space-2);
    left: auto;
    opacity: 0;
    padding: var(--space-3);
    position: absolute;
    right: 0;
    top: calc(100% + var(--space-1));
    transform: translateY(-4px) scale(0.98);
transition: opacity var(--transition-fast) ease-out,
      transform var(--transition-fast) ease-out,
      display var(--transition-fast) allow-discrete;
    width: min(220px, calc(100vw - 2 * var(--space-4)));
    z-index: var(--z-dropdown);
  }
.topbar .account-menu.is-open .menu-drop-body {
    display: grid;
    opacity: 1;
    transform: none;
  }
@starting-style {
    .topbar .account-menu.is-open .menu-drop-body {
      opacity: 0;
      transform: translateY(-4px) scale(0.98);
    }
  }
.topbar .account-menu .logout-form,
  .topbar .account-menu .admin-link {
    width: 100%;
  }
.topbar .account-menu .logout-form .ui-btn {
    width: 100%;
  }
.topbar .notification-button .notification-label {
    display: none;
  }
.topbar .notification-button {
    justify-content: center;
    min-width: max(32px, var(--tap-min));
  }
}
@media (max-width: 900px) {
  .quote-hero,
  .quote-offer-header {
    grid-template-columns: 1fr;
  }
.quote-totals-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
  }
.quote-price-breakdown {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
.quote-hero {
    align-items: stretch;
  }
.quote-hero-total {
    text-align: left;
    width: 100%;
  }
.quote-hero-side {
    justify-items: stretch;
    min-width: 0;
  }
.quote-options-list li {
    align-items: flex-start;
    grid-template-columns: 1fr;
  }
.quote-options-list strong {
    justify-self: start;
  }
}
@media (max-width: 820px) {
  .quote-delivery-layout {
    grid-template-areas:
      "address"
      "map"
      "route"
      "comment";
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
input:where(:not(.configurator-fields *)),
  select:where(:not(.configurator-fields *)),
  textarea:where(:not(.configurator-fields *)) {
    font-size: var(--text-md);
  }
.sidebar,
  .topbar,
  .content {
    padding-left: var(--space-4);
    padding-right: var(--space-4);
  }
.topbar h1,
  .summary-main h2 {
    font-size: var(--text-xl);
  }
.row-action {
    min-height: max(42px, var(--tap-min));
  }
.page-actions {
    align-items: stretch;
    flex-direction: column;
  }
.quote-delivery-map {
    height: 260px;
  }
.quote-delivery-metrics {
    display: grid;
    grid-template-columns: 1fr;
  }
.quote-delivery-distance-field {
    width: 100%;
  }
.quote-delivery-editor-actions {
    align-items: stretch;
    flex-direction: column;
  }
.quote-delivery-editor-actions .ui-btn {
    margin-left: 0;
    order: 1;
    width: 100%;
  }
.table-panel {
    display: none;
  }
.mobile-lead-list {
    display: grid;
    gap: var(--space-3);
  }
.muted,
  dt {
    font-size: var(--text-sm);
  }
.summary-grid {
    grid-template-columns: 1fr;
  }
.workspace-grid {
    display: grid;
  }
.workspace-column {
    display: contents;
  }
.tasks-panel {
    order: 1;
  }
}
@media (max-width: 560px) {
  .quote-totals-strip,
  .quote-price-breakdown {
    grid-template-columns: 1fr;
  }
}
.kanban-column.is-filtered-out {
  opacity: 0.45;
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  .kanban-column.is-filtered-out {
    opacity: 1;
  }
}
.content:has(> #kanban-result) {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
#kanban-result {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}
.kanban-board {
  display: flex;
  flex: 1;
  gap: var(--space-4);
  min-height: 0;
  overflow-x: auto;
  overflow-y: visible;
align-items: stretch;
  padding-bottom: var(--space-4);
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
.kanban-column {
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  display: flex;
  flex-direction: column;
  flex: 1 0 280px;
min-width: 0;
  padding: var(--space-3);
  transition: background-color var(--duration-card) ease-out, box-shadow var(--duration-card) ease-out;
}
.kanban-column.is-drop-target {
  background: var(--color-primary-soft);
  box-shadow: inset 0 0 0 2px var(--color-primary);
}
.kanban-column-head {
  background: var(--stage-fill, transparent);
  border-radius: var(--radius-control);
  color: var(--stage-ink);
  margin-bottom: var(--space-3);
  padding: var(--space-2) var(--space-3);
}
.kanban-column-head .kanban-column-title,
.kanban-column-head .kanban-column-sum { color: var(--stage-ink); }
.kanban-column-head .kanban-column-count {
  background: color-mix(in srgb, var(--color-surface) 65%, transparent);
  color: var(--stage-ink);
}
.kanban-column-title {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: var(--weight-bold);
  justify-content: space-between;
  margin: 0;
  color: var(--color-text);
}
.kanban-column-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.kanban-column-count {
  background: var(--color-surface-sunken);
  border-radius: var(--radius-full);
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  line-height: 1;
  padding: 4px 8px;
}
.kanban-column-sum {
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-normal);
margin: 0 0 0 auto;
  white-space: nowrap;
}
.kanban-cards {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 72px;
}
@media (prefers-reduced-motion: reduce) {
  .kanban-column {
    transition: none;
  }
}
.deal-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
line-height: var(--leading-tight);
  margin-bottom: var(--space-2);
  padding: var(--space-2) var(--space-3);
position: relative;
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.kanban-column--intake .deal-card {
  background: color-mix(in srgb, var(--stage-fill, var(--color-surface)) 30%, var(--color-surface));
}
.deal-card:hover {
  border-color: var(--color-border-strong);
  box-shadow: var(--shadow-md);
}
.deal-card-top {
  align-items: baseline;
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
  margin-bottom: var(--space-05);
}
.deal-card-top .deal-card-title { flex: 1 1 auto; }
.deal-card-actions {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  gap: var(--space-2);
  margin-left: auto;
pointer-events: none;
  position: relative;
  z-index: 1;
}
.deal-card-when {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  margin: 0;
  white-space: nowrap;
}
.deal-card-title {
  color: var(--color-text);
  display: block;
  font-weight: var(--weight-semibold);
min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.deal-card-title:hover {
  color: var(--color-primary);
  text-decoration: none;
}
.deal-card-title::after {
  border-radius: inherit;
  content: "";
  inset: 0;
  position: absolute;
}
.deal-card-subtitle {
  color: var(--color-muted);
  flex: 1 1 auto;
  font-size: var(--text-xs);
  margin: 0;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.deal-card-line {
  align-items: baseline;
  display: flex;
  gap: var(--space-2);
  margin-bottom: var(--space-05);
}
.deal-card-foot {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  min-height: 18px;
}
.deal-source {
  align-items: center;
  color: var(--color-muted);
  display: inline-flex;
  font-size: var(--text-xs);
  gap: var(--space-1);
  max-width: 100%;
  min-width: 0;
}
.deal-source-mark { flex-shrink: 0; }
.deal-source-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.field-value .deal-source {
  color: inherit;
  font-size: inherit;
}
.deal-card-source { flex: 0 1 auto; min-width: 0; }
.task-dot {
  background: var(--color-warning-dot);
  border-radius: var(--radius-full);
  display: inline-block;
  flex-shrink: 0;
  height: 5px;
  width: 5px;
}
.task-dot--overdue { background: var(--color-danger-solid); }
@media (hover: hover) {
  .deal-card .task-dot { pointer-events: auto; }
}
.kanban-cards:has(.deal-card) .ui-blank {
  display: none;
}
.deal-card {
  cursor: pointer;
  touch-action: manipulation;
}
.deal-card-chosen,
.deal-card-chosen .deal-card-title::after {
  cursor: grabbing;
}
.deal-card-ghost {
  border-style: dashed;
  opacity: 0.45;
}
.deal-card.htmx-request {
  opacity: 0.55;
  pointer-events: none;
}
.deal-card-amount {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  margin: 0 0 0 auto;
  white-space: nowrap;
}
.kanban-more {
  background: none;
  border: none;
  color: var(--color-primary);
  cursor: pointer;
  display: block;
  font-size: var(--text-xs);
  padding: var(--space-2);
  text-align: center;
  width: 100%;
}
.kanban-more:hover {
  background: var(--state-hover);
  border-color: transparent;
  color: var(--color-primary);
  text-decoration: underline;
}
.kanban-toast {
  background: var(--color-danger-solid);
  bottom: var(--space-4);
  color: var(--color-on-primary);
  left: 50%;
  margin: 0;
  max-width: min(90vw, 420px);
  padding: var(--space-2) var(--space-4);
  position: fixed;
  transform: translateX(-50%);
}
@media (max-width: 640px) {
  .kanban-board {
    cursor: auto;
    scroll-snap-type: x mandatory;
  }
.kanban-column {
    flex: 0 0 90%;
    scroll-snap-align: center;
  }
}
.order-price {
  font-size: var(--text-lg);
  font-weight: 700;
  color: var(--color-text);
}
.topbar-head {
  min-width: 0;
}
.back-link {
  align-items: center;
  color: var(--color-muted);
  display: inline-flex;
  font-size: var(--text-xs);
  gap: var(--space-1);
  margin-bottom: var(--space-1);
}
@media (hover: none) {
  .back-link {
    margin-left: calc(var(--space-2) * -1);
    min-height: 44px;
    padding: 0 var(--space-2);
  }
}
.back-link:hover {
  color: var(--link-on-page);
}
.deal-title {
  font-size: var(--text-xl);
  font-weight: var(--weight-bold);
  line-height: var(--leading-tight);
  margin: 0;
}
h1.deal-title.hx-value {
  border: 1px solid transparent;
  border-radius: var(--radius-input);
  cursor: text;
  display: block;
  margin-left: -6px;
  padding: 0 6px;
}
h1.deal-title.hx-value:hover {
  background: var(--state-hover);
  border-color: var(--color-border);
}
.deal-subtitle {
  color: var(--color-muted);
  font-size: var(--text-sm);
  margin: var(--space-1) 0 0;
}
.stage-rail {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  display: flex;
  max-width: 100%;
  overflow-x: auto;
  padding: 3px;
  position: relative;
  scrollbar-width: thin;
}
.has-more-end {
  mask-image: linear-gradient(to left, transparent 0, #000 32px);
}
.has-more-start {
  mask-image: linear-gradient(to right, transparent 0, #000 32px);
}
.has-more-start.has-more-end {
  mask-image: linear-gradient(to right, transparent 0, #000 32px, #000 calc(100% - 32px), transparent 100%);
}
:is(.has-more-start, .has-more-end):has(details[open]) {
  mask-image: none;
}
.stage-rail-step {
  align-items: center;
  background: var(--stage-fill, transparent);
  border: 0;
  border-radius: var(--radius-pill);
  color: var(--stage-ink);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  gap: var(--space-2);
  min-height: max(30px, var(--tap-min));
  padding: 0 var(--space-3);
  transition: background var(--transition-fast), color var(--transition-fast);
  white-space: nowrap;
}
.stage-rail-step .stage-dot { display: none; }
.stage-rail-step:hover {
  background: var(--stage-fill, var(--state-hover));
  border: 0;
  box-shadow: inset 0 0 0 2px var(--stage-color, transparent);
  color: var(--stage-ink);
}
.stage-rail-step.is-current {
  box-shadow: inset 0 0 0 2px var(--stage-color, var(--color-primary));
  cursor: default;
  font-weight: var(--weight-semibold);
}
.deal-col {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  min-height: 0;
  min-width: 0;
}
.deal-col--feed {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-flat);
  gap: 0;
  overflow: hidden;
}
.page-stack,
.quote-work-main,
.manual-order-form {
  display: grid;
  gap: var(--space-3);
grid-template-columns: minmax(0, 1fr);
}
.page-stack > * {
  margin-block: 0;
}
.panel {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-flat);
}
.panel-head {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
  min-height: max(32px, var(--tap-min));
  padding: var(--space-1) var(--space-4);
}
.panel-title {
  align-items: center;
  color: var(--color-text);
  display: flex;
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  gap: var(--space-2);
  letter-spacing: var(--label-tracking);
  margin: 0;
  text-transform: var(--label-transform);
}
.panel-title .icon {
  color: var(--color-faint);
}
.panel-head-actions {
  display: flex;
  gap: var(--space-2);
}
.panel-body {
  padding: var(--space-3);
}
.panel-head--feed {
  background: var(--color-surface);
  flex: 0 0 auto;
flex-wrap: wrap;
}
.section-title {
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  margin: 0 0 var(--space-2);
}
.field + .field {
  border-top: 1px solid var(--color-border);
  margin-top: var(--space-2);
  padding-top: var(--space-2);
}
.field-label {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  letter-spacing: var(--label-tracking);
  margin-bottom: 1px;
  text-transform: var(--label-transform);
}
.field--iconic {
  align-items: start;
  column-gap: var(--space-1);
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
}
.field-label--icon {
  color: var(--label-color);
  display: flex;
  margin-bottom: 0;
  padding-top: 3px;
}
.field-value {
  align-items: center;
  color: var(--color-text);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-base);
  gap: var(--space-2);
  min-height: 24px;
}
.field--person .field-value {
  display: block;
}
.field--person .field-avatar {
  float: left;
  margin-right: var(--space-2);
}
.field-value--mono,
.mono {
  font-family: var(--font-mono);
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
}
.field-inline-form {
  display: flex;
  gap: var(--space-2);
  margin: 0;
  width: 100%;
}
.field-inline-form select {
  flex: 1 1 auto;
  min-width: 0;
}
.disclosure {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
}
.disclosure-summary {
  align-items: center;
  color: var(--color-text);
  cursor: pointer;
  display: flex;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  gap: var(--space-2);
  list-style: none;
  min-height: max(32px, var(--tap-min));
  padding: 0 var(--space-4);
}
.disclosure-summary::-webkit-details-marker {
  display: none;
}
.disclosure-summary .icon {
  color: var(--color-faint);
  transition: transform var(--transition-fast);
}
.disclosure[open] > .disclosure-summary .icon {
  transform: rotate(90deg);
}
.disclosure--inline {
  background: transparent;
  border: 0;
  border-top: 1px solid var(--color-border);
  border-radius: 0;
  margin-top: var(--space-3);
}
.disclosure--inline .disclosure-summary {
  padding: 0;
}
.panel .activity-list {
  gap: 0;
  margin: 0;
}
.panel .activity-list li {
  border: 0;
  border-radius: 0;
  padding: var(--space-2) 0;
}
.panel .activity-list li + li {
  border-top: 1px solid var(--color-border);
}
@media (max-width: 1200px) {
  .deal-col--feed {
    min-height: 460px;
  }
}
@media (max-width: 768px) {
  .deal-col--feed {
    min-height: 420px;
    order: -1;
  }
}
.qe-value {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  min-height: 24px;
}
.hx-label {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
  letter-spacing: var(--label-tracking);
  text-transform: var(--label-transform);
  margin-bottom: 2px;
}
.hx-value { cursor: pointer; padding: 3px 6px; border-radius: var(--radius-sm); border: 1px solid transparent; transition: border-color var(--transition-fast), background var(--transition-fast); min-height: max(28px, var(--tap-min)); display: flex; align-items: center; font-size: var(--text-sm); }
.hx-value[hidden] { display: none; }
.hx-value:hover { border-color: var(--color-border); background: var(--color-neutral-bg); }
.hx-input { width: 100%; padding: 4px 8px; border: 1px solid var(--color-primary); border-radius: var(--radius-sm); font-size: var(--text-sm); font-family: inherit; box-shadow: var(--focus-ring); background: var(--color-surface); }
.hx-input:focus { outline: none; }
.tl-feed {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  position: relative;
}
.tl-jump {
  align-items: center;
  background: var(--color-surface);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-pill);
  bottom: var(--space-3);
  box-shadow: var(--elevation-overlay);
  color: var(--color-text);
  cursor: pointer;
  display: flex;
  height: 32px;
  justify-content: center;
left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 32px;
}
.tl-jump[hidden] { display: none; }
.tl-jump:hover { background: var(--color-surface-sunken); color: var(--color-text); }
.tl-jump:focus-visible { box-shadow: var(--focus-ring); outline: none; }
.tl-unread-sep {
  align-items: center;
  color: var(--color-primary);
  display: flex;
  font-size: var(--text-2xs);
  font-weight: var(--weight-semibold);
  gap: var(--space-2);
  margin: var(--space-2) 0;
}
.tl-unread-sep::before,
.tl-unread-sep::after {
  background: color-mix(in srgb, var(--color-primary) 35%, transparent);
  content: "";
  flex: 1;
  height: 1px;
}
.tl-day-sep {
  color: var(--color-faint);
  font-size: var(--text-xs);
  margin: 0;
  text-align: center;
}
.tl-load-earlier {
  height: 1px;
  position: relative;
}
.tl-load-earlier.htmx-request::after {
  color: var(--color-faint);
  content: "Загружаю ранние сообщения…";
  font-size: var(--text-xs);
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  top: var(--space-1);
}
.chat-failed:empty { display: none; }
.tl-compose-area > #compose-attach-error:empty { display: none; }
.chat-fail { margin-bottom: var(--space-2); }
.chat-fail-text {
  font-size: var(--text-sm);
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
}
.timeline-area {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
padding: 0 var(--space-4) var(--space-4);
  display: flex;
  flex-direction: column;
gap: var(--space-2);
}
.timeline-area--chat > :first-child { margin-block-start: auto; }
.timeline-area--chat {
background: var(--color-surface-sunken);
}
.timeline-area > * {
  margin-inline: auto;
  max-width: var(--feed-max);
  width: 100%;
}
.tl-message { display: flex; }
.tl-message-inner {
  display: flex;
  align-items: flex-end;
  gap: var(--space-2);
max-width: min(85%, 920px);
}
.tl-message--in .tl-message-inner { margin-right: auto; }
.tl-message--out .tl-message-inner { margin-left: auto; }
.tl-bubble {
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-control);
  max-width: 100%;
}
.tl-message--in .tl-bubble {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
}
.tl-message--out .tl-bubble {
  background: var(--color-primary-soft);
  border: 1px solid color-mix(in srgb, var(--color-primary) 18%, var(--color-surface));
  color: var(--color-text);
}
.tl-convo-foot {
  border-top: 1px dashed var(--color-border);
  display: flex;
flex-wrap: wrap;
  gap: var(--space-4);
  justify-content: flex-end;
  margin-top: var(--space-1);
  padding-top: var(--space-1);
}
.tl-convo-foot :is(.ui-btn, button.ui-btn) {
  font-size: var(--text-sm);
  margin-block: calc((max(28px, var(--tap-min)) - 28px) / -2);
  min-height: max(28px, var(--tap-min));
  padding: 0 var(--space-2);
}
.tl-convo-foot--standalone { margin-top: var(--space-3); }
.tl-message--in .tl-bubble--system,
.tl-message--out .tl-bubble--system {
  background: var(--color-surface-sunken);
  border: 1px dashed var(--color-border);
  color: var(--color-text);
}
.tl-system-text {
  display: flex;
  align-items: flex-start;
  gap: var(--space-1);
}
.tl-system-text .icon { flex-shrink: 0; margin-top: 2px; color: var(--color-muted); }
.tl-delivery {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: var(--space-1);
  margin: var(--space-1) 0 0;
  font-size: var(--text-xs);
}
.tl-delivery .icon { flex-shrink: 0; margin-top: 2px; }
.tl-reactions { margin-right: auto; letter-spacing: 2px; }
.tl-message--out .tl-bubble--failed {
  background: var(--color-danger-bg);
  border: 1px solid var(--color-danger-border);
  color: var(--color-danger-text);
}
.tl-bubble--failed .tl-delivery { font-weight: 500; }
.tl-fail-mark {
  align-self: center;
  color: var(--color-danger-text);
  flex-shrink: 0;
}
.tl-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-2);
  margin-bottom: var(--space-1);
  font-size: var(--text-xs);
}
.tl-message--out .tl-meta { justify-content: flex-end; }
.tl-author {
  font-weight: 600;
  min-width: 0;
  opacity: 0.7;
  overflow-wrap: anywhere;
}
.ch-mark.tl-channel { height: 14px; width: 14px; }
.tl-time { color: inherit; opacity: 0.6; white-space: nowrap; }
.tl-text { font-size: var(--text-sm); line-height: 1.45; word-break: break-word; }
.tl-text a { text-decoration: underline; overflow-wrap: anywhere; }
.tl-quote {
  display: flex;
  flex-direction: column;
  margin: 0 0 var(--space-1);
  padding: 0 0 0 var(--space-2);
  border-left: 2px solid color-mix(in srgb, currentColor 35%, transparent);
  font-size: var(--text-xs);
  line-height: 1.4;
  color: var(--color-muted);
  overflow-wrap: anywhere;
}
.tl-quote-author { font-weight: 600; }
.tl-quote-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
.tl-avatar { align-self: flex-end; }
.tl-comment {
  background: color-mix(in srgb, var(--color-neutral-bg) 60%, var(--color-surface));
  border: 1px solid var(--color-neutral-border);
  border-radius: var(--radius-control);
  padding: var(--space-1) var(--space-3);
}
.tl-comment .tl-meta { flex-wrap: nowrap; }
.tl-comment .tl-author {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tl-comment .tl-label { flex: none; }
.tl-comment .tl-mentions {
  color: var(--color-neutral-text);
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 640px) {
  .tl-comment .tl-comment-icon { display: none; }
}
.tl-comment-icon { color: var(--color-neutral-text); }
.tl-comment .tl-label {
  background: none;
  color: var(--color-neutral-text);
  opacity: 1;
  padding: 0;
}
.tl-comment-inner {
  display: flex;
  gap: var(--space-2);
  align-items: flex-start;
}
.tl-comment-icon { font-size: var(--text-base); margin-top: 2px; flex-shrink: 0; }
.tl-comment-body { flex: 1; min-width: 0; }
.tl-note-text { white-space: pre-wrap; }
.tl-note-text.hx-value {
  display: block;
  margin-inline: calc(-1 * var(--space-2));
  min-height: 0;
  padding-block: var(--space-05);
}
.tl-note-pin {
  align-items: center;
  background: none;
  border: 0;
  border-radius: var(--radius-sm);
  color: var(--color-neutral-text);
  cursor: pointer;
  display: inline-flex;
  flex: none;
  height: 22px;
  justify-content: center;
  margin-left: auto;
  min-height: 0;
  min-width: 0;
  opacity: 0;
  padding: 0;
  position: relative;
  transition: opacity var(--transition-fast), background var(--transition-fast);
  width: 22px;
}
.tl-note-pin::after {
  content: "";
  inset: calc((22px - max(22px, var(--tap-min))) / 2);
  position: absolute;
}
.tl-comment--pinned .tl-note-pin { background: var(--color-neutral-bg); }
.tl-note-pin:focus-visible { box-shadow: var(--focus-ring); outline: none; }
.tl-comment:hover .tl-note-pin,
.tl-comment:focus-within .tl-note-pin,
.tl-comment--pinned .tl-note-pin { opacity: 1; }
.tl-note-pin:hover { background: var(--color-neutral-bg); color: var(--color-neutral-text); }
@media (hover: none) {
  .tl-note-pin { opacity: 1; }
}
.tl-pinned {
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: var(--space-1);
  max-height: 30vh;
  overflow-y: auto;
  padding: var(--space-2) var(--space-4);
}
.tl-pinned[hidden] { display: none; }
.tl-pinned > * {
  margin-inline: auto;
  max-width: var(--feed-max);
  width: 100%;
}
.tl-comment--pinned { box-shadow: inset 3px 0 0 var(--color-neutral-text); }
.tl-label {
  opacity: 0.7;
  background: var(--color-neutral-bg);
  border-radius: var(--radius-input);
  color: var(--color-neutral-text);
  font-size: var(--text-2xs);
  font-weight: var(--weight-semibold);
  padding: var(--chip-inset-y) var(--chip-inset-x);
}
.tl-event {
  align-items: center;
  align-self: center;
  background: var(--color-surface-sunken);
  border-radius: var(--radius-pill);
  color: var(--color-muted);
  display: flex;
  font-size: var(--text-xs);
  gap: var(--space-2);
  margin: var(--space-1) auto;
  max-width: 100%;
  padding: var(--space-05) var(--space-3);
  width: fit-content;
}
.tl-event-icon {
color: var(--color-muted);
  display: inline-flex;
  flex-shrink: 0;
}
.tl-event-label {
  color: var(--color-text-secondary, var(--color-muted));
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tl-event--task {
  align-items: flex-start;
  border-radius: var(--radius-control);
  line-height: var(--leading-tight);
}
.tl-event--task .tl-event-icon { margin-top: 1px; }
.tl-event--task .tl-event-label { color: var(--color-text); font-size: var(--text-sm); }
.tl-event--task.is-done .tl-event-label {
  color: var(--color-muted);
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}
.tl-event > .tl-time { flex: none; }
.tl-event--task > span:not(.tl-event-icon) { min-width: 0; }
.tl-event--task .tl-event-label { overflow: visible; text-overflow: clip; white-space: normal; }
.tl-event-actor { flex: none; font-weight: 500; white-space: nowrap; }
.tl-event-group-summary {
  cursor: pointer;
  list-style: none;
}
.tl-event-group-summary:hover { box-shadow: inset 0 0 0 1px var(--color-border); }
.tl-event-group-summary:focus-visible { box-shadow: var(--focus-ring); outline: none; }
.tl-event-group-summary::-webkit-details-marker {
  display: none;
}
.tl-event-group-caret {
  color: var(--color-faint);
  flex-shrink: 0;
  transition: transform var(--transition-fast);
}
.tl-event-group[open] .tl-event-group-caret {
  transform: rotate(90deg);
}
.tl-event-group-body {
  display: grid;
}
.tl-event-group:not([open]) > .tl-event-group-body {
  display: none;
}
.tl-photo {
  display: block;
  border-radius: var(--radius-sm);
}
.tl-photo img {
  aspect-ratio: 4 / 3;
  display: block;
  height: auto;
  object-fit: cover;
  width: min(320px, 100%);
  border: 1px solid color-mix(in srgb, currentColor 15%, transparent);
  border-radius: var(--radius-sm);
}
.tl-photo:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.tl-gallery { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-3) 0; }
.tl-gallery-title {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  margin: 0 0 var(--space-1);
  text-transform: capitalize;
}
.tl-gallery-grid {
  display: grid;
  gap: 2px;
  grid-template-columns: repeat(auto-fill, minmax(88px, 1fr));
}
.tl-gallery-tile { aspect-ratio: 1; display: block; overflow: hidden; }
.tl-gallery-tile img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.tl-gallery-tile:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.tl-gallery-files { display: flex; flex-direction: column; gap: var(--space-1); }
.tl-voice {
  align-items: center;
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  box-sizing: border-box;
  color: var(--color-text);
  display: flex;
  gap: var(--space-2);
  margin: var(--space-1) 0;
max-width: 100%;
  min-width: 0;
  padding: var(--space-1) var(--space-3) var(--space-1) var(--space-1);
  width: 300px;
}
.tl-voice--call {
  align-self: center;
  margin: 0 auto var(--space-2);
}
.tl-voice .tl-audio { display: none; }
.tl-voice-play {
  border-radius: var(--radius-full);
  flex: none;
  height: max(32px, var(--tap-min));
  min-height: max(32px, var(--tap-min));
  padding: 0;
  position: relative;
  transition: background var(--transition-fast), transform 100ms ease-out;
  width: max(32px, var(--tap-min));
}
.tl-voice-play:active { transform: scale(0.94); }
.tl-voice-glyph { pointer-events: none; }
.tl-voice-glyph--play { margin-left: 1px; }
.tl-voice-glyph--pause { display: none; }
.tl-voice--playing .tl-voice-glyph--play { display: none; }
.tl-voice--playing .tl-voice-glyph--pause { display: block; }
.tl-voice-track {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
}
.tl-voice-seek {
  -webkit-appearance: none;
  appearance: none;
  background: none;
border: 0;
  box-shadow: none;
  cursor: pointer;
  display: block;
  height: 16px;
  margin: 0;
  min-height: max(16px, var(--tap-min));
  padding: 0;
touch-action: none;
  width: 100%;
}
.tl-voice-seek::-webkit-slider-runnable-track {
  background:
    linear-gradient(to right,
      var(--color-primary) 0 calc(var(--voice-pos, 0) * 100%),
      var(--color-faint) calc(var(--voice-pos, 0) * 100%) 100%);
  border-radius: var(--radius-full);
  height: 4px;
}
.tl-voice-seek::-moz-range-track {
  background:
    linear-gradient(to right,
      var(--color-primary) 0 calc(var(--voice-pos, 0) * 100%),
      var(--color-faint) calc(var(--voice-pos, 0) * 100%) 100%);
  border-radius: var(--radius-full);
  height: 4px;
}
.tl-voice-seek::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  background: var(--color-primary);
  border: 0;
  border-radius: var(--radius-full);
  height: 12px;
  margin-top: -4px;   
  width: 12px;
}
.tl-voice-seek::-moz-range-thumb {
  background: var(--color-primary);
  border: 0;
  border-radius: var(--radius-full);
  height: 12px;
  width: 12px;
}
.tl-voice-seek:focus:not(:focus-visible) { box-shadow: none; }
.tl-voice-seek:focus-visible { outline: none; }
.tl-voice-seek:focus-visible::-webkit-slider-thumb {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-focus) 35%, transparent);
}
.tl-voice-seek:focus-visible::-moz-range-thumb {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-focus) 35%, transparent);
}
.tl-voice-time {
  color: var(--color-muted);
  flex: none;
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  min-width: 4ch;
  text-align: right;
  white-space: nowrap;
}
.tl-voice-rate {
  background: none;
  border: 0;
  border-radius: var(--radius-sm);
  color: var(--color-primary);
  flex: none;
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  line-height: 1;
  min-height: max(24px, var(--tap-min));
  min-width: max(30px, var(--tap-min));
  padding: 0 var(--space-1);
  position: relative;
}
.tl-voice:not(.tl-voice--started) .tl-voice-rate { visibility: hidden; }
.tl-voice-rate:hover {
  background: var(--color-primary-soft);
  border-color: transparent;
  color: var(--color-primary-hover);
}
.tl-voice-rate:active {
  background: var(--color-primary-soft);
  color: var(--color-primary-active);
}
@media (prefers-reduced-motion: reduce) {
  .tl-voice-play { transition: none; }
  .tl-voice-play:active { transform: none; }
}
.tl-doc {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  max-width: 100%;
  padding: 6px 10px;
  border: 1px solid color-mix(in srgb, currentColor 25%, transparent);
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, currentColor 8%, transparent);
  color: inherit;
  font-size: var(--text-sm);
  text-decoration: none;
}
.tl-doc:hover { background: color-mix(in srgb, currentColor 14%, transparent); }
.tl-doc-name {
  overflow-wrap: anywhere;
  font-weight: 600;
}
.tl-doc-size {
  font-size: var(--text-xs);
  opacity: 0.7;
  white-space: nowrap;
}
.tl-media-missing {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-1) var(--space-2);
  font-size: var(--text-sm);
  opacity: 0.85;
}
.tl-media-missing a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.tl-file {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
  gap: var(--space-3);
  max-width: 85%;
  padding: var(--space-2) var(--space-3);
  border: 1px dashed var(--color-border-strong);
  border-radius: var(--radius-md);
  background: var(--color-surface-sunken);
}
.tl-file-state { color: var(--color-warning-text); }
.tl-file { position: relative; }
.tl-file:not(:has(.tl-file-send, .tl-file-nosend)) .tl-file-actions {
  margin: 0;
  position: absolute;
  right: var(--space-1);
  top: var(--space-1);
}
.tl-file:not(:has(.tl-file-send, .tl-file-nosend)) .file-name { padding-right: var(--space-7); }
@media (max-width: 640px) {
  .tl-file { max-width: 100%; }
}
.tl-file-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
}
.tl-file-send[hidden],
.tl-file-nosend[hidden] { display: none; }
.tl-file-send {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  min-height: max(28px, var(--tap-min));
  padding: 4px 10px;
  border: 1px solid color-mix(in srgb, var(--color-primary) 35%, transparent);
  border-radius: var(--radius-sm);
  background: var(--color-primary-soft);
  color: var(--color-primary);
  font-size: var(--text-xs);
  font-weight: 600;
  cursor: pointer;
}
.tl-file-send:hover,
.tl-file-send:focus-visible {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-on-primary);
}
.tl-file-send:disabled {
  opacity: 0.5;
  cursor: default;
}
.tl-file-nosend {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.tl-compose-area {
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3) var(--space-3);
}
.tl-composer {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  padding: var(--space-1) var(--space-2) var(--space-2);
position: relative;
  transition:
    background var(--transition),
    border-color var(--transition-fast);
}
.tl-take {
  padding: var(--panel-inset-y) var(--space-1);
}
.tl-take .ui-btn { width: 100%; }
.tl-composer:focus-within {
  border-color: var(--color-primary);
  box-shadow: var(--focus-ring);
}
.tl-composer:has(#compose-note.active) {
  background: color-mix(in srgb, var(--color-neutral-bg) 60%, var(--color-surface));
  border-color: var(--color-neutral-border);
}
.tl-composer:has(#compose-note.active):focus-within {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-neutral-text) 22%, transparent);
}
.tl-compose-tabs {
  align-items: center;
  display: flex;
  gap: var(--space-05);
  margin-bottom: var(--space-1);
}
.tl-compose-tab,
button.tl-compose-tab {
  background: transparent;
  border-color: transparent;
  color: var(--color-muted);
  font-weight: var(--weight-medium);
  gap: var(--space-1);
  min-height: max(28px, var(--tap-min));
  padding: 0 var(--space-2);
}
.tl-compose-tab:hover,
button.tl-compose-tab:hover {
  background: var(--state-hover);
  border-color: transparent;
  color: var(--color-text);
}
.tl-compose-tab.active,
.tl-compose-tab.active:hover {
  background: var(--state-active);
  color: var(--color-text);
  font-weight: var(--weight-semibold);
}
.tl-compose-panel { display: none; }
.tl-compose-panel.active { display: block; }
.inbox-form,
.tl-note-form,
.tl-composer .task-form {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-2);
  margin: 0;
}
.inbox-input {
  background: transparent;
  border: 0;
  flex: 1 1 100%;
  font-family: inherit;
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  min-height: max(44px, var(--tap-min));
  padding: var(--space-1);
  resize: vertical;
}
textarea {
  scrollbar-color: var(--color-border-strong) transparent;
  scrollbar-width: thin;
}
.inbox-input:focus {
  box-shadow: none;
  outline: none;
}
.tl-compose-files {
  flex: 1 1 100%;
  margin: var(--space-1) 0 0;
  min-width: 0;
}
.tl-compose-track {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
}
.tl-compose-files[hidden] { display: none; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-files {
  grid-area: files;
  margin: 0 0 var(--space-1);
}
.tl-compose-file {
  align-items: center;
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  display: grid;
  gap: var(--space-2);
  grid-template-columns: 44px minmax(0, 1fr) auto;
  max-width: min(100%, 200px);
  padding: var(--space-1);
}
.tl-compose-file .file-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tl-compose-file.is-refused {
  border-color: var(--color-danger-text);
  max-width: min(100%, 280px);
}
.tl-compose-file-why {
  color: var(--color-danger-text);
  display: block;
  font-size: var(--text-xs);
  margin-top: 2px;
}
.tl-composer.is-dropping {
  border-color: var(--color-primary);
  border-style: dashed;
  box-shadow: var(--focus-ring);
}
:is(.inbox-pane, .deal-feed).is-dropping { position: relative; }
:is(.inbox-pane, .deal-feed, .calc-chat).is-dropping::after {
  align-items: center;
  background: var(--color-primary-soft);
  border: 2px dashed var(--color-primary);
  border-radius: var(--radius-md);
  color: var(--color-primary-active);
  content: "Перетащите файлы сюда";
  display: flex;
  font-size: var(--text-md);
  font-weight: 600;
  inset: var(--space-2);
  justify-content: center;
  opacity: 0.94;
  pointer-events: none;
  position: absolute;
  z-index: var(--z-dropdown);
}
.tl-compose-files.is-idle .tl-compose-track { opacity: 0.55; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer:has([data-compose-closed].active) .tl-compose-files { display: none; }
.tl-compose-files-hint { margin: var(--space-1) 0 0; }
.tl-compose-files-hint.is-warning { color: var(--color-warning-text); }
@media (max-width: 720px) {
  .inbox-input { font-size: var(--text-md); }
.tl-compose-track {
    flex-wrap: nowrap;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
.tl-compose-file {
    flex: none;
    max-width: min(100%, 220px);
    scroll-snap-align: start;
  }
.tl-compose-file.is-refused { max-width: min(100%, 280px); }
}
.inbox-send,
button.inbox-send {
  flex-shrink: 0;
  margin-left: auto;
  min-height: max(28px, var(--tap-min));
  padding: 0 var(--space-3);
  white-space: nowrap;
}
.tl-composer .task-form label {
  align-items: baseline;
  color: var(--color-muted);
  display: inline-flex;
  font-size: var(--text-sm);
  gap: var(--space-1);
  margin: 0;
  white-space: nowrap;
}
.tl-composer .task-form select {
  appearance: none;
  background: transparent;
  border: 0;
  border-bottom: 1px dashed var(--color-border-strong);
  border-radius: 0;
  color: var(--color-text);
  cursor: pointer;
  font: inherit;
  display: inline-block;
  font-weight: var(--weight-semibold);
  height: auto;
  min-height: 0;
  padding: 0 var(--space-05);
  width: auto;
}
.tl-composer .task-form select:focus-visible {
  border-bottom-color: var(--color-primary);
  outline: none;
}
.tl-composer .task-form input[type="text"] {
  background: transparent;
  border: 0;
  flex: 1 1 200px;
  font: inherit;
  min-height: max(28px, var(--tap-min));
  padding: 0 var(--space-1);
  width: auto;
}
.tl-composer .task-form input[type="text"]:focus {
  border: 0;
  box-shadow: none;
  outline: none;
}
.tl-composer .task-form .form-inline-errors:empty { display: none; }
.tl-composer .task-form .form-inline-errors { flex-basis: 100%; }
.task-line { display: contents; }
.ui-btn.task-nudge {
  background: var(--color-info-bg);
  border-color: var(--color-info-border);
  color: var(--color-info-text);
  font-weight: var(--weight-semibold);
  justify-content: flex-start;
  margin-bottom: var(--space-2);
align-self: flex-start;
  max-width: 100%;
}
.ui-btn.task-nudge:hover { background: var(--color-primary-soft); border-color: var(--color-info-text); }
.ui-btn.task-nudge .icon { color: inherit; }
.tl-compose-area:has(#compose-task.active) .task-nudge {
  pointer-events: none;
  visibility: hidden;
}
.compose-pinned-task { display: contents; }
.pinned-task-stack {
  --pinned-stack-max: 40dvh;
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  max-height: var(--pinned-stack-max);
  overflow-y: auto;
}
.pinned-task-stack > .inbox-pinned-task { flex-shrink: 0; }
.pinned-task-stack > .inbox-pinned-task:not(.is-open) > .inbox-pinned-task-open--lead { min-width: 13.5rem; }
.pinned-task-stack .inbox-pinned-task-typemenu { min-width: 4.5rem; }
@media (min-width: 481px) {
  .pinned-task-stack > .inbox-pinned-task:not(.is-open) > .inbox-pinned-task-open--lead { min-width: 18rem; }
}
@media (max-width: 480px) {
.pinned-task-stack > .inbox-pinned-task:not(.is-open) > .inbox-pinned-task-open--lead { flex: 1 1 0; min-width: 0; }
.inbox-pinned-task .task-overdue-word { display: none; }
.pinned-task-stack > .inbox-pinned-task:not(.is-open) > span.inbox-pinned-task-open--rest { flex-grow: 0; }
}
.task-due-pick { display: inline-flex; position: relative; }
.task-due-input {
  bottom: 0;
  height: 1px;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  width: 1px;
}
.task-type { align-items: center; display: inline-flex; gap: var(--space-1); }
.task-type .icon { color: var(--color-muted); flex: 0 0 auto; }
.inbox-send-icon { display: none; }
.tl-compose-stack { display: contents; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack {
  --compose-field-h: 48px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack:has(#compose-task) { --compose-field-h: 60px; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack { --compose-field-rest: max(var(--control-h-sm), var(--tap-min)); }
@media (hover: none), (max-width: 480px) {
  :is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack,
  :is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack:has(#compose-task) { --compose-field-h: 70px; }
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack > .compose-pinned-task > * {
  grid-column: 1;
  grid-row: 1;
  margin-bottom: var(--space-2);
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack > .compose-pinned-task > .task-nudge { justify-self: start; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer {
  --compose-row-h: auto;
  align-items: center;
  column-gap: var(--space-2);
  display: grid;
  grid-column: 1;
  grid-row: 2;
  grid-template-areas: "take take take" "tabs tabs assist" "files files files" "field field field" "attach chan send" "note note note";
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-rows: auto auto auto var(--compose-row-h) minmax(var(--tap-min), auto) auto;
  padding: var(--space-1) var(--space-2);
  row-gap: 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer:has(#compose-task.active) {
  --compose-row-h: var(--compose-field-h);
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack { --compose-max-h: max(96px, 50dvh); }
@media (hover: none), (max-width: 480px) {
  :is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-stack { --compose-max-h: clamp(96px, 30dvh, 200px); }
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer:has(.tl-take):not(:has(.tl-compose-panel)) {
  grid-template-areas: "take";
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-take { grid-area: take; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-panel.active,
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-panel.active > form { display: contents; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-tabs {
  flex-wrap: nowrap;
  grid-area: tabs;
  margin: 0 0 var(--space-1);
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-tab-text {
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-compose-tab,
:is(.inbox-pane, .deal-feed, .calc-chat) button.tl-compose-tab {
  justify-content: center;
  min-width: max(28px, var(--tap-min));
  padding: 0 var(--space-1);
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .tl-assistant-group {
  grid-area: assist;
  justify-self: end;
  margin: 0 0 var(--space-1);
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .tl-assistant {
  margin: 0;
min-height: max(28px, var(--tap-min));
  min-width: 0;
  padding-inline: var(--space-2);
  white-space: nowrap;
}
.tl-assistant-group {
  display: inline-flex;
  gap: var(--space-1);
  max-width: 100%;
  min-width: 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .inbox-input {
  align-self: stretch;
  field-sizing: content;
  grid-area: field;
  height: auto;
  max-height: var(--compose-max-h);
  min-height: var(--compose-field-rest);
  overflow-y: auto;
padding-block: max(var(--space-1), calc((var(--compose-field-rest) - 1lh) / 2));
  padding-inline-end: var(--space-1);
  resize: none;
}
@supports not (field-sizing: content) {
  :is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .inbox-input { height: var(--grow-h, var(--compose-field-rest)); }
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-attach { position: static; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-attach-btn {
  grid-area: attach;
  justify-self: start;
  margin: 0;
  position: static;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-channels {
  grid-area: chan;
  justify-self: stretch;
  margin: 0;
  min-width: 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-channels .menu-drop {
  flex: 1 1 auto;
  min-width: 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-channels-legend {
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .inbox-send {
  grid-area: send;
  justify-self: end;
  margin: 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer :is(.tl-channel-blocked, .form-inline-errors, .tl-assistant-status) {
  grid-area: note;
  margin: var(--space-1) 0 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer [data-compose-count] {
  align-self: center;
  grid-area: assist;
  justify-self: end;
  margin: 0 0 var(--space-1);
  max-width: 100%;
  text-align: right;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer:has([data-compose-closed].active) {
  grid-template-areas: "take take take" "tabs tabs tabs" "field field field";
  grid-template-rows: auto auto auto;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer [data-compose-closed] > .tl-channel-blocked {
  align-self: start;
  grid-area: field;
  margin: 0;
  padding: 0 var(--space-1) var(--space-1);
}
@media (max-width: 349px) {
  :is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer { column-gap: var(--space-1); }
  :is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .tl-assistant { padding-inline: var(--space-1); }
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line {
  align-content: center;
  align-self: stretch;
  display: grid;
  gap: var(--space-05) 0;
  grid-area: field;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  min-height: var(--control-h-sm);
  min-width: 0;
  padding-inline: var(--space-1) 0;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks :is(label, .task-due-pick, .task-type) { flex: 0 0 auto; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks .task-pick-who {
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks label { align-items: center; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-pick-who > .task-word:last-child { margin-inline-start: calc(-1 * var(--space-1)); }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks select {
  field-sizing: content;
  min-height: var(--control-h-sm);
  min-width: 0;
  padding-inline: 0;
  text-overflow: ellipsis;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks .task-pick-who select { max-width: 100%; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-due-pick .ui-btn {
  min-height: var(--control-h-sm);
  min-width: var(--control-h-sm);
  position: relative;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-due-pick .ui-btn::after {
  content: "";
  inset: calc(-1 * var(--space-2)) calc(-1 * var(--space-1));
  position: absolute;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line > input[type="text"] {
  min-height: max(var(--control-h-sm), min(var(--tap-min), 40px));
  padding-inline: var(--space-1);
}
.calc-chat .task-line .task-word {
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.calc-chat .tl-composer .task-line-picks .task-type { margin-inline-start: auto; }
.calc-chat .tl-composer .task-line .task-type .icon { display: none; }
@media (max-width: 720px) {
  .tl-composer .task-form :is(label, select, input[type="text"]) { font-size: var(--text-md); }
}
@media (max-width: 480px) {
  :is(.inbox-pane, .deal-feed, .calc-chat) .task-line .task-word {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks .task-type {
    margin-inline-start: auto;
  }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line-picks select { font-weight: var(--weight-normal); }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-composer .task-line .task-type .icon { display: none; }
:is(.inbox-pane, .deal-feed, .calc-chat) #compose-chat .inbox-send-icon { display: inline-flex; }
:is(.inbox-pane, .deal-feed, .calc-chat) #compose-chat .inbox-send-text {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
:is(.inbox-pane, .deal-feed, .calc-chat) #compose-chat .inbox-send {
    justify-content: center;
    min-width: max(var(--control-h), var(--tap-min));
    padding: 0;
  }
}
.inbox-pinned-task {
  align-items: center;
  background: var(--color-surface-sunken);
  border-radius: var(--radius-control);
  display: flex;
  flex-wrap: nowrap;
  font-size: var(--text-sm);
  gap: var(--space-1) var(--space-2);
  min-height: max(32px, var(--tap-min));
padding: 0 var(--space-1) 0 var(--space-2);
}
.inbox-pinned-task.is-overdue {
  box-shadow: inset 0 0 0 1px var(--color-danger-border);
}
.inbox-pinned-task.is-overdue > .inbox-pinned-task-open:hover .inbox-pinned-task-title {
  text-decoration: none;
}
.inbox-pinned-task-icon {
  color: var(--color-muted);
  display: inline-flex;
  flex: 0 0 auto;
}
.inbox-pinned-task-when {
  align-items: center;
  color: var(--color-muted);
  display: inline-flex;
  flex: 0 0 auto;
  font-variant-numeric: tabular-nums;
  gap: var(--space-1);
  white-space: nowrap;
}
.inbox-pinned-task.is-today .inbox-pinned-task-icon,
.inbox-pinned-task.is-today .inbox-pinned-task-when {
  color: var(--color-warning-text);
  font-weight: var(--weight-semibold);
}
.inbox-pinned-task .task-overdue { color: var(--color-danger-text); font-weight: var(--weight-semibold); }
.inbox-pinned-task-type {
  color: var(--color-muted);
  flex: 0 0 auto;
}
.inbox-pinned-task-for {
  color: var(--color-muted);
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.inbox-pinned-task > .inbox-pinned-task-open {
  color: inherit;
  flex: 1 1 auto;
  flex-wrap: nowrap;
  font-size: inherit;
  font-weight: inherit;
  gap: var(--space-1) var(--space-2);
  justify-content: flex-start;
  min-height: max(24px, var(--tap-min));
  min-width: 0;
  overflow: hidden;
  padding: var(--space-1) 0;
  text-align: left;
}
.inbox-pinned-task > .inbox-pinned-task-open--lead { flex: 0 1 auto; }
.inbox-pinned-task > .inbox-pinned-task-open--rest { flex: 1 1 0; min-width: 0; }
span.inbox-pinned-task-open--rest { align-self: stretch; cursor: pointer; }
.inbox-pinned-task-typeform { display: contents; }
.inbox-pinned-task-typemenu { flex: 0 0 auto; min-width: 0; }
.inbox-pinned-task-typemenu > summary { color: var(--color-muted); gap: var(--space-1); padding: 0 var(--space-1); }
.inbox-pinned-task-typemenu > summary:hover { color: var(--color-text); }
.inbox-pinned-task-assigneeform { align-items: center; color: var(--color-muted); display: inline-flex; flex: 0 1 auto; min-width: 0; }
.inbox-pinned-task-assigneemenu { flex: 0 1 auto; min-width: 0; }
.inbox-pinned-task-assigneemenu > summary { color: var(--color-muted); gap: var(--space-1); padding: 0 var(--space-1); }
.inbox-pinned-task-assigneemenu > summary:hover { color: var(--color-text); }
.inbox-pinned-task-type { padding: 0 var(--space-1); }
@media (max-width: 480px) {
.inbox-pinned-task-to,
  .inbox-pinned-task-assigneeform,
  .inbox-pinned-task-for:not(:has(.inbox-pinned-task-from)) { display: none; }
}
.inbox-pinned-task > .inbox-pinned-task-open:hover .inbox-pinned-task-title {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.inbox-pinned-task-title {
  color: var(--color-text);
  flex: 1 1 auto;
  font-weight: var(--weight-semibold);
  min-width: 0;
  overflow: hidden;
  overflow-wrap: break-word;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.inbox-pinned-task-done,
button.inbox-pinned-task-done {
  flex: 0 0 auto;
  margin-left: auto;
  background: var(--color-surface);
  border-color: var(--color-border);
  color: var(--color-text);
  font-weight: var(--weight-medium);
  gap: var(--space-1);
  min-height: max(24px, var(--tap-min));
  padding: 0 var(--space-2);
}
.inbox-pinned-task-done:hover,
button.inbox-pinned-task-done:hover {
  background: var(--color-neutral-bg);
  border-color: var(--color-border-strong);
  color: var(--color-text);
}
.inbox-pinned-task.is-open { flex-wrap: wrap; padding-bottom: var(--space-2); }
.inbox-pinned-task.is-open > .inbox-pinned-task-done { display: none; }
.inbox-pinned-task.is-open > .inbox-pinned-task-open--rest {
  flex-basis: 0;
  flex-wrap: wrap;
  overflow: visible;
}
.inbox-pinned-task.is-open > .inbox-pinned-task-open--lead { overflow: visible; }
.inbox-pinned-task.is-open > button.inbox-pinned-task-open--rest { min-width: min(14ch, 100%); }
.inbox-pinned-task.is-open > .inbox-pinned-task-open .inbox-pinned-task-title {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}
.inbox-pinned-task-body {
  display: flex;
  flex: 1 1 100%;
  flex-direction: column;
  gap: var(--space-2);
  min-width: 0;
  padding-right: var(--space-1);
}
.inbox-pinned-task-body[hidden] { display: none; }
.inbox-pinned-task-more {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-3);
  justify-content: space-between;
}
.inbox-pinned-task-move {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
  margin: 0;
}
.inbox-pinned-task-label { color: var(--color-muted); margin-right: var(--space-1); }
.inbox-pinned-task-cancel { flex: 0 0 auto; margin: 0 0 0 auto; }
.inbox-pinned-task:not(.is-open) > .inbox-pinned-task-cancel { display: none; }
.inbox-pinned-task-cancel .ui-btn { color: var(--color-muted); }
.inbox-pinned-task-cancel .ui-btn:hover { color: var(--color-text); }
.inbox-pinned-task-body .form-inline-errors:empty { display: none; }
@media (max-width: 480px) {
  .inbox-pinned-task-label {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
}
.compose-pinned-task > [data-compose-open] {
  align-self: flex-start;
  font-weight: var(--weight-normal);
  margin-bottom: 0;
  min-height: max(32px, var(--tap-min));
  padding: 0 var(--space-2);
}
@media (max-width: 560px) {
  .inbox-send,
  button.inbox-send {
    min-height: 44px;
  }
}
.tl-attach {
  position: absolute;
  right: var(--space-1);
  top: var(--space-1);
}
.tl-attach-btn,
button.tl-attach-btn {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  border-radius: var(--radius-control);
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  height: max(28px, var(--tap-min));
  justify-content: center;
  min-height: 0;
  padding: 0;
  width: max(28px, var(--tap-min));
}
.tl-attach-btn:hover,
button.tl-attach-btn:hover { background: var(--state-hover); color: var(--color-text); }
.ui-btn.tl-attach-btn[aria-expanded="true"] {
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.tl-attach-menu {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  bottom: calc(100% + var(--space-1));
  box-shadow: var(--elevation-overlay);
  padding: var(--space-3);
  position: absolute;
  right: 0;
  width: min(340px, calc(100vw - 2 * var(--space-4)));
  z-index: var(--z-dropdown);
}
.ui-menu-body.tl-mention-list {
  bottom: calc(100% + var(--space-1));
  list-style: none;
  margin: 0;
  max-height: min(40dvh, 320px);
  top: auto;
  width: min(320px, calc(100vw - 2 * var(--space-4)));
}
.ui-menu-body.tl-mention-list[hidden] { display: none; }
.tl-mention-list .ui-menu-item[aria-selected="true"] { background: var(--state-hover); }
.tl-mention-list .ui-menu-item span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tl-mention-hint {
  align-items: center;
  color: var(--color-text);
  font-weight: var(--weight-semibold);
  display: flex;
  flex-basis: 100%;
  gap: var(--space-1);
}
.tl-mention-hint[hidden] { display: none; }
.tl-channels {
  align-items: center;
  border: 0;
  display: flex;
  flex: 0 1 auto;
  gap: var(--space-1);
  margin: 0;
  min-width: 0;
  padding: 0;
}
.tl-channels-legend {
  color: var(--color-muted);
  float: left;
  font-size: var(--text-xs);
  margin-right: var(--space-1);
  padding: 0;
  white-space: nowrap;
}
.tl-channels-current {
  align-items: center;
  border-radius: var(--radius-sm);
  color: var(--color-text);
  display: inline-flex;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  gap: var(--space-1);
  max-width: 100%;
  min-height: max(28px, var(--tap-min));
  min-width: 0;
  padding: 0 var(--space-1);
}
.tl-channels-current [data-channel-current] {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tl-channels-current .ch-mark,
.tl-channels-current .icon {
  flex-shrink: 0;
}
.tl-channels-current .conv-ad { flex-shrink: 8; }
.tl-channels-current [data-channel-current]:has(+ .conv-ad:not([hidden])) { flex-shrink: 0; }
.calc-chat .tl-channels-current .conv-ad,
.calc-chat .tl-channels-current .ch-mark { display: none; }
.calc-chat .tl-channels-current [data-channel-current]:has(+ .conv-ad:not([hidden])) { flex-shrink: 1; }
.calc-chat .tl-composer { column-gap: var(--space-1); }
.calc-chat .tl-composer .inbox-send { padding-inline: var(--space-2); }
.calc-chat .tl-composer .tl-assistant {
  font-size: var(--text-sm);
  max-width: 100%;
  min-width: 0;
  padding-inline: var(--space-2);
}
.tl-channels-current:hover { background: var(--state-hover); }
.tl-channels-current:focus-visible { box-shadow: var(--focus-ring); outline: none; }
.tl-channels .menu-drop-body {
  bottom: calc(100% + var(--space-1));
  gap: var(--space-05);
  left: 0;
  min-width: 200px;
  padding: var(--space-1);
  right: auto;
  top: auto;
  z-index: var(--z-dropdown);
}
.tl-channels .tl-channel {
  align-items: center;
  border-radius: var(--radius-sm);
  color: var(--color-text);
  cursor: pointer;
  display: flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  min-height: max(32px, var(--tap-min));
  padding: 0 var(--space-2);
}
.tl-channels .tl-channel input {
  height: 0;
  opacity: 0;
  position: absolute;
  width: 0;
}
.tl-channels .tl-channel:hover { background: var(--state-hover); }
.tl-channels .tl-channel:has(input:checked) {
  background: var(--color-primary-soft);
  font-weight: var(--weight-semibold);
}
.tl-channels .tl-channel:has(input:focus-visible) { box-shadow: var(--focus-ring); }
.tl-channels .tl-channel--blocked { color: var(--color-muted); }
.tl-channels .tl-channel--blocked .ch-mark { opacity: var(--opacity-disabled); }
.tl-channels .tl-channel-why {
  color: var(--color-warning-text);
  font-size: var(--text-2xs);
  margin-left: auto;
  text-decoration: none;
  white-space: nowrap;
}
.order-debt-go:hover {
  text-decoration: underline;
}
.conv-no {
  color: var(--color-muted);
  font-size: var(--text-2xs);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.conv-ident {
  align-items: baseline;
  display: inline-flex;
  gap: var(--space-2);
  justify-content: flex-end;
  min-width: 0;
}
.conv-ad {
  color: var(--color-muted);
  font-size: var(--text-2xs);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.conv-ad[hidden] { display: none; }
.tl-channels-current .conv-no { display: none; }
.tl-channel-blocked {
  color: var(--color-warning-text);
  flex-basis: 100%;
  font-size: var(--text-xs);
  margin: 0;
}
.form-grid {
  display: grid;
  gap: var(--space-4) var(--space-5);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.form-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.form-grid > * {
  min-width: 0;
}
.form-grid input:not([type="checkbox"]):not([type="radio"]),
.form-grid select,
.form-grid textarea {
  max-width: var(--field-max);
}
@media (max-width: 1020px) {
  .form-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .form-grid,
  .form-grid--3 {
    grid-template-columns: 1fr;
  }
}
.split {
  align-items: start;
  display: grid;
  gap: var(--space-4);
}
.split > * {
  min-width: 0;
}
.split--2 {
  grid-template-columns: minmax(var(--pane-min), 1fr) minmax(0, 2.2fr);
}
@media (max-width: 980px) {
  .split--2 {
    grid-template-columns: 1fr;
  }
}
.scroll-x {
  min-width: 0;
  overflow-x: auto;
}
.stage-tone--s1 { --stage-color: var(--stage-1); }
.stage-tone--s2 { --stage-color: var(--stage-2); }
.stage-tone--s3 { --stage-color: var(--stage-3); }
.stage-tone--s4 { --stage-color: var(--stage-4); }
.stage-tone--s5 { --stage-color: var(--stage-5); }
.stage-tone--s6 { --stage-color: var(--stage-6); }
.stage-tone--s1 { --stage-fill: color-mix(in srgb, var(--stage-1) 28%, #fff); }
.stage-tone--s2 { --stage-fill: color-mix(in srgb, var(--stage-2) 28%, #fff); }
.stage-tone--s3 { --stage-fill: color-mix(in srgb, var(--stage-3) 28%, #fff); }
.stage-tone--s4 { --stage-fill: color-mix(in srgb, var(--stage-4) 28%, #fff); }
.stage-tone--s5 { --stage-fill: color-mix(in srgb, var(--stage-5) 28%, #fff); }
.stage-tone--s6 { --stage-fill: color-mix(in srgb, var(--stage-6) 28%, #fff); }
.stage-tone--first { --stage-fill: var(--stage-fill-first); }
.stage-tone--catalog { --stage-fill: var(--stage-fill-catalog); }
.stage-tone--calc { --stage-fill: var(--stage-fill-calc); }
.stage-tone--warm { --stage-fill: var(--stage-fill-warm); }
.stage-tone--order { --stage-fill: var(--stage-fill-order); }
.stage-tone--silent { --stage-fill: var(--stage-fill-silent); }
.stage-tone--won { --stage-fill: var(--stage-fill-won); }
.stage-tone--lost { --stage-fill: var(--stage-fill-lost); }
.stage-tone--first, .stage-tone--catalog, .stage-tone--calc,
.stage-tone--warm, .stage-tone--order, .stage-tone--silent, .stage-tone--won,
.stage-tone--lost {
  --stage-color: color-mix(in srgb, var(--stage-fill) 45%, var(--color-text));
}
.stage-dot {
  background: var(--stage-fill, var(--stage-color, var(--color-neutral-border)));
  border-radius: var(--radius-full);
  box-shadow: inset 0 0 0 1px var(--stage-color, transparent);
  display: inline-block;
  flex: none;
  height: 8px;
  width: 8px;
}
.auto-grid {
  align-items: start;
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(auto-fit, minmax(min(var(--auto-grid-min, 300px), 100%), 1fr));
}
.order-form .info-panel {
  align-content: start;
  display: grid;
  gap: var(--space-3);
}
.order-form .info-panel h2 {
  font-size: var(--text-md);
  margin: 0;
}
.order-form .order-rail {
  align-self: start;
}
.order-form .order-total {
  background: var(--window-head-bg);
  border-block: 1px solid var(--color-border-window);
  color: var(--color-text);
  font-size: var(--text-lg);
  font-weight: 700;
  margin: 0 calc(-1 * var(--space-4));
  padding: var(--space-2) var(--space-4);
}
.order-building-sum {
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  margin-left: auto;
  white-space: nowrap;
}
.order-buildings {
  display: grid;
  gap: var(--space-1);
  list-style: none;
  margin: 0 0 var(--space-3);
  padding: 0;
}
.order-buildings li {
  display: flex;
  gap: var(--space-3);
}
.order-building-name {
  font-weight: var(--weight-medium);
  min-width: 0;
  overflow-wrap: anywhere;
}
.ch-mark {
  flex: 0 0 auto;
  height: 16px;
  object-fit: contain;
  vertical-align: -0.2em;
  width: 16px;
}
.ch-tag {
  align-items: center;
  display: inline-flex;
  gap: var(--space-1);
  min-width: 0;
}
.ch-tag-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ch-name { white-space: nowrap; }
.chat-head-channel {
  flex: none;
  height: 16px;
  width: 16px;
}
.panel-head-lastin {
  color: var(--color-muted);
  font-size: var(--text-2xs);
  margin: 0;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.panel-head-lastin:empty {
  display: none;
}
.panel-head-moved {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  color: var(--color-muted);
display: block;
  font-size: var(--text-2xs);
  margin: 0;
min-width: 0;
  overflow: hidden;
  padding: var(--chip-inset-y) var(--chip-inset-x);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.iq-face {
  align-self: center;
  display: inline-flex;
  flex-shrink: 0;
  position: relative;
}
.iq-face .iq-channel {
  border: 2px solid var(--color-surface);
  border-radius: var(--radius-full);
  bottom: -4px;
  height: 14px;
  position: absolute;
  right: -3px;
  width: 14px;
}
.iq-face .ch-name {
  align-self: center;
  font-size: var(--text-2xs);
  margin-left: var(--space-1);
  position: static;
}
.phone-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.phone-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-2);
}
.phone-number { font-variant-numeric: tabular-nums; }
.phone-row .hx-value { font-size: inherit; }
.phone-label {
  align-items: center;
  background: var(--color-neutral-bg);
  border-radius: var(--radius-input);
  color: var(--color-neutral-text);
  display: inline-flex;
  font-family: var(--font-base);
  font-size: var(--text-2xs);
  gap: var(--space-1);
  padding: var(--chip-inset-y) var(--chip-inset-x);
}
.phone-row .hx-value { margin-left: -7px; }
.order-form .phone-channels {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-4);
  margin-top: var(--space-1);
}
.order-form .phone-channels .phone-channels-label {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 400;
  width: 100%;
}
.order-form .phone-channels label {
  align-items: center;
  display: flex;
  flex-direction: row;
  font-size: var(--text-sm);
  font-weight: 500;
  gap: var(--space-1);
  margin: 0;
}
.order-form .phone-channels input[type="checkbox"] {
  accent-color: var(--color-primary);
  flex-shrink: 0;
  height: 14px;
  margin: 0;
  min-height: 0;
  padding: 0;
  width: 14px;
}
.order-form .phone-extra { margin-top: var(--space-2); }
.order-form .phone-extra summary {
  color: var(--color-muted);
  cursor: pointer;
  font-size: var(--text-xs);
  font-weight: 650;
}
.order-form .field-hint {
  color: var(--color-muted);
  display: block;
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
.order-form .plan-upload-stub {
  align-items: center;
  border: 1px dashed var(--color-muted);
  border-radius: var(--radius-control);
  color: var(--color-muted);
  cursor: default;
  display: flex;
  font-size: var(--text-sm);
  justify-content: center;
  min-height: 56px;
  opacity: 0.7;
  padding: var(--space-4);
  text-align: center;
  user-select: none;
}
.digest-zone {
  margin-bottom: var(--space-6);
}
.digest-zone-title {
  font-size: var(--text-lg);
  font-weight: 700;
  margin: 0 0 var(--space-3);
}
.digest-group-title {
  color: var(--color-muted);
  font-size: var(--text-sm);
  font-weight: 650;
  margin: var(--space-4) 0 var(--space-2);
}
.digest-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
  padding: var(--space-4);
}
.digest-card-head {
  align-items: flex-start;
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
}
.digest-card-title {
  flex: 1 1 auto;
  font-size: var(--text-md);
  font-weight: 700;
  min-width: 0;
}
.digest-card-head .status-badge {
  flex: 0 0 auto;
}
.digest-card-body {
  color: var(--color-muted);
  display: flex;
  flex-direction: column;
  font-size: var(--text-sm);
  gap: var(--space-1);
}
.digest-card-contact {
  color: var(--color-text);
  font-weight: 600;
}
.digest-card-address {
  color: var(--color-muted);
}
.digest-card-foot {
  align-items: center;
  display: flex;
  gap: var(--space-3);
  justify-content: space-between;
  margin-top: var(--space-1);
}
.digest-card-total {
  color: var(--color-text);
  font-size: var(--text-md);
  font-weight: 700;
  white-space: nowrap;
}
.digest-card-body a {
  margin-left: var(--space-2);
}
.digest-card.is-hero {
  border: 2px solid var(--color-danger-text);
}
.digest-card.is-hero .digest-card-title {
  font-size: var(--text-lg);
}
.digest-card.is-new {
  border-left: 4px solid var(--color-warning-text);
}
.digest-card .row-action {
  min-height: 44px;
  padding: 9px var(--space-4);
}
.digest-money-tiles {
  display: grid;
  gap: var(--space-3);
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}
.digest-money-tile {
  background: var(--color-neutral-bg);
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
}
#copy-order {
  margin-top: var(--space-3);
  min-height: 44px;
  width: 100%;
}
.priority-panel form button:not(.ui-btn) {
  min-height: 44px;
}
.overview-toolbar {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}
.overview-search {
  display: flex;
  gap: var(--space-2);
}
.overview-search input[type="search"] {
  flex: 1;
}
.overview-search .ui-filterbar-search,
.order-filters .ui-filterbar-search {
  flex: 1 1 260px;
  max-width: none;
}
.overview-segment {
  display: flex;
  gap: 4px;
  background: var(--color-neutral-bg);
  border-radius: var(--radius-md);
  padding: 3px;
}
.overview-segment a {
  flex: 1;
  text-align: center;
  padding: 8px 12px;
  border-radius: var(--radius-sm);
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-muted);
  text-decoration: none;
}
.overview-segment a.active {
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: var(--shadow-sm);
}
.overview-month-head {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
}
.overview-month-head .digest-zone-title {
  margin: 0;
}
.digest-card-money {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}
.digest-card-commission {
  color: var(--color-muted);
  font-size: var(--text-sm);
  font-weight: 700;
  text-align: right;
}
.orders-overview .overview-toolbar {
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
}
.orders-overview .overview-search {
  flex: 1 1 320px;
}
.orders-overview .overview-segment.ui-segmented {
  background: var(--color-neutral-bg);
  border-radius: var(--radius-md);
  box-shadow: none;
  flex: 0 1 auto;
  padding: 0;
}
.orders-overview .digest-group-title {
  margin: var(--space-3) 0 var(--space-1);
}
.orders-overview .digest-card {
  column-gap: var(--space-4);
  display: grid;
  gap: var(--space-1) var(--space-4);
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: var(--space-2);
  padding: var(--space-2) var(--panel-inset);
}
.orders-overview .digest-card-head,
.orders-overview .digest-card-body {
  grid-column: 1;
}
.orders-overview .digest-card-title {
  font-size: var(--text-base);
}
.orders-overview .digest-card-body {
  flex-flow: row wrap;
  column-gap: var(--space-3);
}
.orders-overview .digest-card-foot {
  flex-direction: row-reverse;
  grid-column: 2;
  grid-row: 1 / span 2;
  margin-top: 0;
}
.orders-overview .digest-card-total {
  font-size: var(--text-base);
}
.orders-overview .digest-card .row-action {
  min-height: max(var(--control-h-md), var(--tap-min));
  padding-block: 0;
}
@media (max-width: 720px) {
  .orders-overview .digest-card {
    grid-template-columns: minmax(0, 1fr);
  }
.orders-overview .digest-card-foot {
    flex-direction: row;
    grid-column: 1;
    grid-row: auto;
  }
}
.file-thumb {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-neutral-bg);
}
.file-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.file-kind {
  color: var(--color-neutral-text);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.02em;
}
.file-body {
  min-width: 0;
}
.file-name {
  display: block;
  overflow-wrap: anywhere;
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: 600;
}
.file-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-1) var(--space-2);
  margin-top: 2px;
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}
.file-meta > span {
  white-space: nowrap;
}
.tl-file-more { flex: none; margin-left: auto; }
.file-error {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  margin: 0;
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-sm);
  background: var(--color-danger-bg);
  color: var(--color-danger-text);
  font-size: var(--text-sm);
}
.file-error-close {
  flex: none;
  display: inline-flex;
  padding: 2px;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.file-upload-form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2) var(--space-3);
}
.file-pick-group {
  display: flex;
  flex: none;
}
.file-pick-group .file-pick:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.file-pick-group .file-pick:last-child {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.file-pick-group .file-pick:hover,
.file-pick-group .file-pick:focus-within {
  z-index: 1;
}
.file-pick {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: max(36px, var(--tap-min));
  padding: 6px 12px;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
}
.file-pick:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.file-pick:focus-within {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.file-pick input[type="file"] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.file-hint,
.file-progress {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.error-body {
  display: grid;
  justify-items: center;
  align-content: start;
  min-height: 100dvh;
  margin: 0;
  background: var(--color-page);
  font-family: var(--font-base);
  color: var(--color-text);
}
.error-page {
  box-sizing: border-box;
  width: min(100%, 26rem);
  padding: clamp(var(--space-6), 12dvh, 7rem) var(--space-6) var(--space-6);
}
.error-brand {
  align-items: center;
  color: var(--color-text);
  display: inline-flex;
  font-size: var(--text-md);
  font-weight: var(--weight-semibold);
  gap: var(--space-2);
  margin-bottom: var(--space-6);
  text-decoration: none;
}
.error-brand-mark {
  flex: none;
  height: var(--space-7);
  width: var(--space-7);
}
.error-form {
  display: grid;
  gap: var(--space-4);
  margin-top: var(--space-5);
}
.error-form .form-error {
  margin: var(--space-4) 0 0;
}
.error-form .ui-btn {
  justify-content: center;
  width: 100%;
}
.error-code {
  margin: 0;
  font-family: var(--font-mono);
  font-size: clamp(3.5rem, 12vw, 5.5rem);
  font-weight: var(--weight-medium);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--color-faint);
}
.error-name {
  margin: var(--space-3) 0 0;
  font-size: var(--text-xl);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-tight);
}
.error-hint {
  margin: var(--space-2) 0 0;
  color: var(--color-muted);
  font-size: var(--text-md);
  line-height: var(--leading-normal);
}
.error-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-5);
}
.history-table {
  min-width: 640px;
}
.history-when {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.history-change + .history-change {
  margin-top: var(--space-1);
}
.mobile-lead-card .history-when,
.mobile-lead-header .status-badge {
  justify-self: start;
}
.leads-table .cell-lead {
  width: 34%;
}
.leads-table .cell-task {
  color: var(--color-muted);
}
.leads-table .cell-when {
  white-space: nowrap;
}
.leads-table .cell-when .muted {
  white-space: nowrap;
}
.orders-table {
  font-size: var(--text-sm);
  table-layout: fixed;
}
.orders-table :is(th, td) {
  padding-inline: var(--space-3);
}
.orders-table th {
  height: 26px;
  overflow: hidden;
  padding-block: 2px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orders-table td {
  height: var(--table-row-height-2);
  overflow: hidden;
  padding-block: var(--space-1);
  vertical-align: middle;
}
.orders-table .cell-main,
.orders-table .muted {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orders-table .cell-main {
  color: var(--color-text);
  line-height: var(--leading-tight);
}
.orders-table .cell-client .cell-main,
.orders-table .cell-what .cell-main,
.orders-table .cell-when .cell-main {
  font-weight: var(--weight-semibold);
}
.orders-table .muted {
  margin-top: 1px;
}
.orders-table .cell-sum,
.orders-table .cell-fee,
.orders-table .cell-salary {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.orders-table .cell-sum .muted,
.orders-table .cell-fee .muted {
  font-family: var(--font-base);
}
.orders-table .cell-sum {
  position: relative;
}
.orders-table .cell-fee .cell-main {
  color: var(--color-success-text);
}
.orders-table .col-private {
  color: var(--color-faint);
  margin-left: var(--space-1);
  vertical-align: -2px;
}
.orders-table .cell-client .muted em {
  color: var(--color-faint);
  font-style: normal;
}
.orders-table .cell-no {
  font-family: var(--font-mono);
}
.orders-table .cell-no .lead-title {
  color: var(--color-muted);
  font-weight: var(--weight-normal);
}
.orders-table .cell-no .lead-title:hover {
  color: var(--color-primary-hover);
}
.orders-table tbody tr {
  position: relative;
}
.orders-table .cell-no .lead-title::after {
  content: "";
  inset: 0;
  position: absolute;
}
.orders-table .cell-phone {
  position: relative;
}
.orders-table .cell-do .row-do,
.orders-table .cell-no .lead-title ~ a {
  position: relative;
}
.row-action-form {
  display: contents;
}
.orders-table .cell-do .row-do {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
  justify-content: flex-end;
}
.orders-table .cell-do {
  padding-block: var(--space-1);
}
.orders-table tbody tr.is-late {
  box-shadow: inset 3px 0 0 var(--color-danger-solid);
}
.late-word {
  color: var(--color-danger-text);
  display: block;
  font-size: var(--text-2xs);
  font-weight: var(--weight-semibold);
}
.orders-table tr.order-week {
  height: 28px;
}
.orders-table tr.order-week td {
  background: var(--color-surface-sunken);
  border-top: 1px solid var(--color-border);
  color: var(--color-muted);
  font-size: var(--text-2xs);
  font-weight: var(--weight-semibold);
  height: 28px;
  letter-spacing: 0.04em;
  padding: 0 var(--space-3);
  text-transform: uppercase;
}
.orders-table tr.order-month td {
  height: auto;
  letter-spacing: normal;
  line-height: 1.5;
  padding: var(--space-1) var(--space-3);
  text-transform: none;
}
.order-month-name {
  letter-spacing: 0.04em;
  margin-right: var(--space-3);
  text-transform: uppercase;
}
.order-month-sum {
  color: var(--color-text);
  font-weight: var(--weight-normal);
}
.order-month-sum b,
.mobile-month-sum {
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
}
.mobile-month-sum {
  color: var(--color-muted);
  font-size: var(--text-xs);
  margin: 0 0 var(--space-2);
}
.orders-table--dense td {
  height: var(--table-row-height-2);
  padding: var(--space-1) var(--space-3);
  vertical-align: middle;
}
.orders-table--dense .cell-main,
.orders-table--dense .muted {
  display: block;
  line-height: 1.25;
}
.orders-table--dense .muted {
  font-size: var(--text-2xs);
}
.order-found {
  align-items: baseline;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-sm);
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
}
.order-found-count {
  font-weight: var(--weight-semibold);
}
.order-found-reset {
  color: var(--color-primary);
  margin-left: auto;
  text-decoration: none;
  white-space: nowrap;
}
.order-found-reset:hover {
  text-decoration: underline;
}
.order-found-reset:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.order-panel {
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
  border-top: 0;
  overflow: hidden;
}
#orders-result.htmx-swapping .order-panel {
  opacity: 0.55;
  transition: opacity 120ms ease-out;
}
@media (prefers-reduced-motion: reduce) {
#orders-result.htmx-swapping .order-panel {
    transition: none;
  }
}
.orders-page {
  text-wrap: pretty;
}
.order-toolbar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.order-toolbar .order-filters {
  background: none;
  border: 0;
  flex: 1 1 320px;
  padding: 0;
}
.order-toolbar .order-filters-search {
  min-height: var(--control-h);
}
.orders-debt-slot {
  display: contents;
}
.orders-page .order-debt-line {
  background: var(--color-surface);
  column-gap: var(--space-5);
  padding: var(--panel-inset-y) var(--panel-inset);
  row-gap: var(--space-1);
}
.order-debt-label {
  color: var(--color-muted);
}
.order-debt-item {
  border-radius: var(--radius-sm);
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
}
.order-debt-count {
  color: var(--color-primary);
}
.order-debt-item:hover .order-debt-count {
  text-decoration: underline;
}
:is(.order-debt-item, .order-debt-go):focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.order-debt-item b {
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
}
.orders-page :is(#orders-result > .ui-tabs, .order-found) {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel) var(--radius-panel) 0 0;
}
.orders-page #orders-result > .ui-tabs {
  padding-inline: var(--space-1);
}
.orders-page .order-found {
  padding-inline: var(--panel-inset);
}
.orders-page .orders-table--dense .muted {
  font-size: var(--text-xs);
}
@media (max-width: 720px) {
.order-toolbar,
  .order-toolbar .order-filters {
    flex-wrap: nowrap;
  }
.order-toolbar .order-filters {
    min-width: 0;
  }
.order-toolbar > .order-add {
    min-width: max(var(--control-h), var(--tap-min));
    padding: 0;
  }
.order-add-text {
    display: none;
  }
.orders-page .order-debt-line {
    column-gap: var(--space-3);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    padding-block: 0;
    row-gap: 0;
  }
.orders-page .order-debt-label {
    grid-column: 1;
    grid-row: 1;
  }
.orders-page .order-debt-go {
    grid-column: 2;
    grid-row: 1;
    margin-left: 0;
  }
.orders-page .order-debt-item {
    grid-column: 1 / -1;
  }
}
.order-marks .mark-list {
  display: grid;
  gap: var(--space-1);
  list-style: none;
  margin: 0;
  padding: 0;
}
.order-marks .mark {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  column-gap: var(--space-3);
  display: grid;
  grid-template-columns: minmax(180px, auto) 1fr auto;
  margin: 0 calc(var(--space-3) * -1);
  padding: var(--space-2) var(--space-3);
}
.order-marks .mark:last-child {
  border-bottom: 0;
}
.order-marks .mark.is-done {
  background: var(--color-success-bg);
  border-radius: var(--radius-sm);
}
.order-marks .mark.is-prominent {
  background: var(--color-warning-bg);
  border-radius: var(--radius-sm);
}
.order-marks .mark-face {
  align-items: center;
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  gap: var(--space-2);
}
.order-marks .mark-face.is-disabled {
  cursor: default;
}
.order-marks .mark-checkbox {
  cursor: pointer;
  height: 18px;
  width: 18px;
}
.order-marks .mark-checkbox:disabled {
  cursor: not-allowed;
}
.order-marks .mark.is-done .mark-face {
  color: var(--color-success-text);
  font-weight: var(--weight-semibold);
}
.order-marks .mark-when {
  color: var(--color-muted);
  font-size: var(--text-xs);
}
.order-marks .mark-list {
  gap: 2px;
}
.order-marks .mark {
  padding-block: var(--space-1);
}
@media (max-width: 480px) {
  .order-marks .mark {
    column-gap: var(--space-2);
    grid-template-columns: minmax(0, 1fr) auto;
    row-gap: 0;
  }
.order-marks .mark-when {
    max-width: 9rem;
    text-align: right;
  }
.order-marks .mark > .form-actions {
    grid-column: 1 / -1;
  }
}
.orders-table .col-no {
  width: 56px;
}
.orders-table .col-client {
  width: 168px;
}
.orders-table .col-when {
width: 104px;
}
.orders-table .col-do {
  width: 212px;
}
.orders-table--overdue .col-do {
  width: 288px;
}
.orders-table .col-state {
  width: 160px;
}
.orders-table .cell-state .order-state {
  color: var(--color-muted);
  font-size: var(--text-sm);
}
.orders-table tr.row-cancelled .cell-state .order-state {
  font-weight: var(--weight-medium);
}
.orders-table .col-sum {
  width: 108px;
}
.orders-table th.col-sum {
  text-align: right;
}
.orders-table .col-sum .col-sort {
  flex-direction: row-reverse;
}
.orders-table .col-fee,
.orders-table .col-salary {
  text-align: right;
  width: 104px;
}
.orders-table .col-owner {
  width: 96px;
}
@media (min-width: 1700px) {
  .orders-table .col-client {
    width: 15%;
  }
.orders-table .col-when,
  .orders-table .col-sum {
    width: 9%;
  }
.orders-table .col-fee,
  .orders-table .col-salary {
    width: 8.5%;
  }
.orders-table .col-owner {
    width: 8%;
  }
.orders-table .col-state {
    width: 12%;
  }
}
.orders-table .cell-owner {
  color: var(--color-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 1439px) {
  .orders-table .col-fee,
  .orders-table .cell-fee,
  .orders-table .col-salary,
  .orders-table .cell-salary {
    border: 0;
    padding-inline: 0;
    visibility: hidden;
    width: 0;
  }
}
.confirm-badge {
  max-width: 100%;
  position: relative;
}
.confirm-badge > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.orders-table--today-confirm .col-when {
  width: 200px;
}
.order-debt-line {
  align-items: center;
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  color: inherit;
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-sm);
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  text-decoration: none;
}
.order-debt-go {
  align-items: center;
  color: var(--color-primary);
  display: flex;
  gap: var(--space-1);
  margin-left: auto;
  white-space: nowrap;
}
.order-filters {
  align-items: center;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  padding: var(--space-2);
}
.order-filters :is(input, select) {
  min-height: max(var(--control-h-md), var(--tap-min));
  padding-block: var(--space-1);
}
.order-filters-search {
  flex: 1 1 260px;
  min-width: 0;
}
@media (max-width: 980px) {
  [role="tablist"] {
    border-bottom: 0;
    flex-wrap: wrap;
    overflow-x: visible;
  }
}
.deal-filters {
  margin-bottom: var(--space-2);
}
.deal-filters .deal-bar { margin-bottom: 0; }
.deal-bar .ui-menu-body { max-height: 60vh; overflow-y: auto; }
.deal-bar .ui-menu-item .stage-dot { flex: 0 0 auto; }
.deal-bar .filter-dates { padding: var(--space-1) var(--space-2); }
.deal-filters :is(input, select, .chip-button, .chip-select) {
  min-height: max(var(--control-h-md), var(--tap-min));
  padding-block: var(--space-1);
}
.deal-filters .chip-check {
  min-height: max(28px, var(--tap-min));
  padding-block: 2px;
}
.chip-check {
  align-items: center;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  line-height: 1;
  min-height: max(32px, var(--tap-min));
  padding: var(--space-2) var(--space-3);
  position: relative;
  transition: background var(--transition-fast), border-color var(--transition-fast);
  user-select: none;
}
.chip-check input {
  height: 100%;
  left: 0;
  margin: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.chip-check:hover {
  background: var(--state-hover);
}
.chip-check:has(input:checked) {
  background: var(--color-primary-soft);
  border-color: var(--color-primary);
  font-weight: var(--weight-medium);
}
.chip-check:has(input:focus-visible) {
  box-shadow: var(--focus-ring);
  outline: none;
}
.chip-check-hint {
  color: var(--color-muted);
  font-size: var(--text-2xs);
}
.chip-select {
  border-radius: var(--radius-pill);
  flex: none;
  font-size: var(--text-sm);
  min-height: max(32px, var(--tap-min));
  padding: var(--space-1) 28px var(--space-1) var(--space-3);
  width: auto;
}
.filter-pop {
  position: relative;
}
.filter-pop-body {
  background: var(--color-surface-raised);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  display: block;
  left: 0;
  max-height: min(60vh, 460px);
  max-width: min(420px, calc(100vw - 2 * var(--space-4)));
  opacity: 1;
  overflow-y: auto;
  padding: var(--space-3);
  position: absolute;
  top: calc(100% + var(--space-1));
  transform: none;
transition: opacity var(--transition-fast) ease-out,
    transform var(--transition-fast) ease-out,
    display var(--transition-fast) allow-discrete;
  width: max-content;
  z-index: var(--z-dropdown);
}
.filter-pop:not([open]) > .filter-pop-body {
  display: none;
  opacity: 0;
  transform: translateY(-4px) scale(0.98);
}
@starting-style {
  .filter-pop[open] > .filter-pop-body {
    opacity: 0;
    transform: translateY(-4px) scale(0.98);
  }
}
.check-row {
  align-items: center;
  border-radius: var(--radius-control);
  cursor: pointer;
  display: flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  min-height: max(28px, var(--tap-min));
  padding: var(--space-1) var(--space-2);
}
.check-row:hover {
  background: var(--state-hover);
}
.check-row input {
  flex: none;
  margin: 0;
}
.filter-dates {
  display: grid;
  gap: var(--space-2);
}
.filter-dates label {
  display: grid;
  gap: var(--space-1);
}
.filter-dates span {
  color: var(--label-color);
  font-size: var(--label-size);
}
.deal-result-bar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-bottom: var(--space-1);
  min-height: 28px;
}
.deal-result-bar .record-count {
  background: none;
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: var(--weight-normal);
  padding: 0;
}
.menu-drop {
  position: relative;
}
.menu-drop > summary {
  cursor: pointer;
  list-style: none;
}
.menu-drop > summary::-webkit-details-marker {
  display: none;
}
.menu-drop-body {
  background: var(--color-surface-raised);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  display: grid;
  gap: var(--space-2);
  min-width: 240px;
  opacity: 1;
  padding: var(--space-3);
  position: absolute;
  right: 0;
  top: calc(100% + var(--space-1));
  transform: none;
transition: opacity var(--transition-fast) ease-out,
    transform var(--transition-fast) ease-out,
    display var(--transition-fast) allow-discrete;
  z-index: var(--z-dropdown);
}
.menu-drop:not([open]) > .menu-drop-body {
  display: none;
  opacity: 0;
  transform: translateY(-4px) scale(0.98);
}
@starting-style {
  .menu-drop[open] > .menu-drop-body {
    opacity: 0;
    transform: translateY(-4px) scale(0.98);
  }
}
.menu-drop-title {
  color: var(--color-muted);
  font-size: var(--text-xs);
  margin: 0;
}
.menu-drop-body--sections {
  min-width: 280px;
}
.menu-drop-body--sections > * + * {
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-3);
}
.menu-drop-body--sections > form {
  display: grid;
  gap: var(--space-2);
}
.notification-button,
.notification-menu-head {
  align-items: center;
  display: flex;
  gap: var(--space-2);
}
.notification-button {
  background: transparent;
  border: 0;
  color: var(--color-text);
  min-height: max(40px, var(--tap-min));
}
.sidebar-account #notification-poll:empty {
  display: block;
  min-height: max(40px, var(--tap-min));
}
.notification-menu-body { max-height: min(420px, 70vh); min-width: min(360px, calc(100vw - 2 * var(--space-4))); }
.notification-menu-body:has(.notification-list) { grid-template-rows: auto auto minmax(0, 1fr) auto; max-height: min(420px, 70vh); }
.notification-settings { align-items: center; border-bottom: 1px solid var(--color-border); display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-4); padding-bottom: var(--space-2); }
.notification-switch { align-items: center; color: var(--color-muted); display: flex; gap: var(--space-1); min-height: max(32px, var(--tap-min)); }
.notification-switch input:disabled + span { opacity: 0.5; }
.notification-push-status { color: var(--color-muted); flex-basis: 100%; font-size: var(--text-xs); margin: 0; }
.notification-push-status[data-push-state="denied"],
.notification-push-status[data-push-state="failed"],
.notification-push-status[data-push-state="unsupported"],
.notification-push-status[data-push-state="insecure"] { color: var(--color-danger-text); }
.notification-menu-head { justify-content: space-between; }
.notification-list { align-content: start; display: grid; gap: var(--space-1); list-style: none; margin: 0; min-height: 0; overflow-y: auto; padding: 0; }
.notification-item { align-items: start; border-top: 1px solid var(--color-border); display: flex; gap: var(--space-2); padding: var(--space-2); }
.notification-item:first-child,
.notification-divider + .notification-item { border-top: 0; }
.notification-item--new { background: var(--color-surface); }
.notification-item:has(.notification-item-link:hover),
.notification-item:has(.notification-item-link:focus-visible) {
  background: var(--state-hover);
}
.notification-item-icon { color: var(--color-muted); display: inline-flex; margin-top: 2px; }
.notification-item > form { flex: 1; min-width: 0; }
.notification-item-link {
  align-items: start;
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: flex;
  font: inherit;
  gap: var(--space-2);
justify-content: flex-start;
  min-height: var(--tap-min);
  padding: 0;
  text-align: left;
  width: 100%;
}
.notification-item-link:hover,
.notification-item-link:focus-visible { background: none; color: inherit; }
.notification-item-body { display: grid; flex: 1; gap: 2px; min-width: 0; }
.notification-item-head { align-items: baseline; display: flex; gap: var(--space-2); justify-content: space-between; }
.notification-item-kind { color: var(--color-text); font-weight: var(--weight-semibold); }
.notification-item--new .notification-item-kind { color: var(--color-primary); }
.notification-item--read .notification-item-kind { color: var(--color-muted); font-weight: var(--weight-medium); }
.notification-item-time { color: var(--color-muted); flex-shrink: 0; font-size: var(--text-xs); white-space: nowrap; }
.notification-item-who { align-items: center; color: var(--color-text); display: flex; font-size: var(--text-sm); gap: var(--space-1); min-width: 0; }
.notification-item-who-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.notification-item-excerpt { color: var(--color-muted); font-size: var(--text-sm); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.notification-divider {
  border-top: 1px solid var(--color-border);
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
  list-style: none;
  margin-top: var(--space-1);
  padding: var(--space-2) var(--space-2) var(--space-1);
}
.field-block {
  display: grid;
  gap: var(--space-1);
}
.per-page {
  align-items: center;
  display: flex;
  gap: var(--space-1);
}
.per-page-option {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  color: var(--color-muted);
  font-size: var(--text-xs);
  padding: var(--space-1) var(--space-2);
  text-decoration: none;
}
.per-page-option.is-current {
  background: var(--color-primary-soft);
  border-color: var(--color-primary);
  color: var(--color-primary);
  font-weight: var(--weight-medium);
}
.bulk-bar {
  --bulk-bar-h: calc(var(--control-h-sm) + 2 * var(--space-1));
  --bulk-bar-lift: var(--space-2);
  align-items: center;
  background: var(--color-primary-soft);
  border-bottom: 1px solid var(--color-primary);
  display: flex;
  gap: var(--space-1);
  height: var(--bulk-bar-h);
  margin-bottom: calc(var(--bulk-bar-lift) - var(--bulk-bar-h));
  margin-top: calc(-1 * var(--bulk-bar-lift));
  padding-inline: var(--space-2);
  position: sticky;
  top: var(--topbar-h, 0px);
  z-index: var(--z-sticky);
}
.bulk-bar[hidden] {
  display: none;
}
.bulk-bar .bulk-count,
.tasks-bulk .bulk-count {
  margin-left: auto;
  padding-inline: var(--space-2);
}
html:has(.bulk-bar:not([hidden])) {
  scroll-padding-top: calc(var(--topbar-h, 0px) + var(--control-h-sm) + 2 * var(--space-1));
}
.bulk-dialog-fields {
  display: grid;
  gap: var(--space-4);
}
.bulk-dialog-fields select,
.bulk-dialog-fields textarea,
.bulk-dialog-fields input {
  width: 100%;
}
.bulk-dialog .ui-dialog-footer {
  align-items: center;
  justify-content: flex-start;
}
.bulk-dialog-reach {
  color: var(--color-muted);
  font-size: var(--text-sm);
  margin-left: auto;
}
.ui-btn.bulk-select-toggle { display: none; margin-left: auto; }
.bulk-count {
  align-self: center;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font-size: var(--text-sm);
}
.bulk-field {
  display: grid;
  gap: var(--space-1);
}
.cell-pick {
  width: 36px;
}
.cell-pick input {
  cursor: pointer;
  height: 16px;
  margin: 0;
  width: 16px;
}
.deals-table {
  font-size: var(--text-sm);
  table-layout: fixed;
}
.deals-table th {
  height: 26px;
  overflow: hidden;
  padding-block: 2px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.deals-table td {
  height: var(--table-row-height);
  overflow: hidden;
  padding-block: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.deals-table .cell-lead .lead-title,
.deals-table .cell-lead .muted {
  display: inline;
}
.deals-table .cell-lead .muted::before {
  content: " · ";
}
.deals-table .cell-pick {
  text-overflow: clip;
  width: 36px;
}
.deals-table .col-title {
  width: auto;
}
.deals-table .col-task {
  width: 18%;
}
.deals-table .col-stage {
  width: 212px;
}
@media (max-width: 1100px) {
  .deals-table .col-stage {
    width: 160px;
  }
}
.deals-table .col-responsible {
  width: 180px;
}
.deals-table .col-source,
.deals-table .col-city {
  width: 120px;
}
.deals-table .col-reason {
  width: 156px;
}
.deals-table .col-amount,
.deals-table .col-budget {
  text-align: right;
  width: 120px;
}
.deals-table .col-waiting {
  width: 142px;
}
.deals-table .col-phone {
  width: 140px;
}
.deals-table .col-updated,
.deals-table .col-created {
  width: 142px;
}
.clients-table tbody tr {
  position: relative;
}
.clients-table .cell-lead .lead-title::after {
  content: "";
  inset: 0;
  position: absolute;
}
.clients-table .cell-phone,
.clients-table .clients-tel,
.clients-table .clients-deals {
  position: relative;
}
.clients-table .col-channels {
  width: 112px;
}
.clients-table .cell-channels {
  overflow: visible;
}
.clients-table .cell-channels .ch-mark {
  margin-right: var(--space-1);
  vertical-align: middle;
}
.clients-table .col-phone {
  width: 200px;
}
.clients-table .clients-tel {
  color: inherit;
}
.clients-more {
  color: var(--color-muted);
  white-space: nowrap;
}
.clients-table .clients-tel:hover {
  color: var(--color-primary-hover);
}
.clients-table .col-deals {
  text-align: right;
  width: 84px;
}
.clients-table .col-touch {
  width: 142px;
}
.clients-table .col-stage,
.clients-table .cell-stage {
  padding-left: var(--space-4);
}
.col-sort {
  align-items: center;
  color: inherit;
  display: inline-flex;
  gap: var(--space-1);
  text-decoration: none;
}
.col-sort-caret {
  color: var(--color-faint);
  opacity: 0;
}
.col-sort:hover .col-sort-caret,
[aria-sort="ascending"] .col-sort-caret,
[aria-sort="descending"] .col-sort-caret {
  opacity: 1;
}
[aria-sort="ascending"] .col-sort-caret {
  transform: rotate(180deg);
}
[aria-sort="ascending"] .col-sort,
[aria-sort="descending"] .col-sort {
  color: var(--color-primary);
}
.stage-cell {
  align-items: center;
  background: var(--stage-fill, transparent);
  border-radius: var(--radius-pill);
  color: var(--stage-ink);
  display: inline-flex;
  gap: var(--space-2);
  padding: var(--chip-inset-y) var(--chip-inset-x);
  white-space: nowrap;
}
.stage-cell .stage-dot { display: none; }
.cell-amount {
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
}
.row-archived {
  opacity: var(--opacity-disabled);
}
.lead-title--archived {
  color: var(--color-muted);
  cursor: default;
}
.pager {
  align-items: center;
  display: flex;
  gap: var(--space-3);
  justify-content: center;
  padding: var(--space-4) 0;
}
.pager-status {
  color: var(--color-muted);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
}
.ui-pager {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-5);
  justify-content: center;
}
.ui-pager .pager { padding-block: var(--space-2); }
.ui-pager-label {
  color: var(--color-muted);
  font-size: var(--text-sm);
}
.ui-pager .per-page-option {
  align-items: center;
  display: inline-flex;
  min-height: 2rem;
  min-width: 2rem;
  justify-content: center;
}
.staff-table td { height: var(--table-row-height-2); padding-block: var(--space-1); }
.staff-table .cell-actions {
  text-align: right;
  white-space: nowrap;
  width: 1%;
}
.staff-table .cell-actions-row,
.staff-card .cell-actions-row {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  justify-content: flex-end;
}
.staff-card .cell-actions-row {
  flex-wrap: wrap;
  min-width: 0;
}
.staff-cards {
  display: none;
}
.staff-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  display: grid;
  gap: var(--space-1);
  grid-template-columns: minmax(0, 1fr);
  padding: var(--space-2) var(--space-3);
}
.staff-card-head {
  align-items: center;
  display: flex;
  gap: var(--space-3);
  justify-content: space-between;
}
.staff-card-roles {
  font-size: var(--text-sm);
  margin: 0;
}
.staff-card-roles .muted {
  display: inline;
}
.staff-card-foot {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  justify-content: space-between;
}
.staff-card-counts {
  align-items: center;
  color: var(--color-muted);
  display: inline-flex;
  gap: var(--space-3);
}
.staff-card-counts > span {
  align-items: center;
  display: inline-flex;
  gap: var(--space-1);
}
.hint-note {
  align-items: start;
  color: var(--color-muted);
  display: flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  line-height: var(--leading-normal);
  margin: var(--space-3) 0 0;
}
.hint-note .icon {
  flex: none;
  margin-top: 2px;
}
.stack-form {
  display: grid;
  gap: var(--space-3);
}
.visually-hidden {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.nav-badge-slot {
  display: inline-flex;
  margin-left: auto;
}
.nav-badge {
  background: var(--color-danger-solid);
  border-radius: var(--radius-pill);
  color: var(--color-on-primary);
  font-family: var(--font-mono);
  font-size: var(--text-2xs);
  font-weight: var(--weight-semibold);
  line-height: 1;
  padding: 3px 6px;
  position: relative;
}
.inbox-bar { margin-bottom: var(--space-2); }
.inbox-bar .ui-filterbar-main { flex-wrap: wrap; }
.inbox-bar .ui-filterbar-search {
  flex-basis: 100%;
  max-width: none;
}
.inbox-bar .ui-filterbar-controls {
  flex: 1 1 100%;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.inbox-bar .inbox-filters {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}
.inbox-bar .inbox-filters .ui-segmented-item {
  flex: 1 0 auto;
  padding-inline: var(--space-1);
  white-space: nowrap;
}
body[data-guest] .sidebar,
body[data-guest] .topbar-actions { display: none; }
body[data-guest] .app-shell { grid-template-columns: minmax(0, 1fr); }
body[data-guest] .main-area { padding-bottom: 0; }
@media (min-width: 981px) {
  body:has(.inbox-workspace) .topbar { display: none; }
}
@media (max-width: 980px) {
  body:has(.inbox-workspace.is-open) .topbar { display: none; }
}
body:has(.inbox-workspace) .app-shell { height: 100dvh; }
body:has(.inbox-workspace) .main-area { min-height: 0; }
.content:has(> .inbox-workspace) { height: 100%; min-height: 0; }
.content:has(> .inbox-workspace) {
  padding: 0;
}
.inbox-workspace {
  display: grid;
position: relative;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  grid-template-areas: "messages messages" "queue pane";
grid-template-columns: minmax(320px, 26%) minmax(0, 1fr);
grid-template-rows: auto minmax(0, 1fr);
  row-gap: var(--space-3);
  column-gap: 0;
  height: 100%;
  min-height: 480px;
}
.inbox-workspace:not(:has(.inbox-messages-slot .messages)) { row-gap: 0; }
.inbox-card-slot {
  bottom: 0;
  grid-area: queue;
  left: 0;
  overflow: hidden;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 5;
}
.inbox-card {
  background: var(--color-surface);
  border-right: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  inset: 0;
  min-height: 0;
  pointer-events: auto;
  position: absolute;
  transform: translateX(-100%);
  transition: transform var(--duration-card) var(--ease-card-in), visibility var(--duration-card);
  visibility: hidden;
}
.inbox-card[data-open] {
  transform: none;
  transition: transform var(--duration-panel) var(--ease-card-in), visibility var(--duration-panel);
  visibility: visible;
}
.inbox-card-head {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex: 0 0 auto;
  gap: var(--space-2);
  padding: var(--space-3);
}
.inbox-card-close {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  color: var(--color-muted);
  display: flex;
  flex: 0 0 auto;
  height: 26px;
  justify-content: center;
  min-height: 0;
  width: 26px;
}
.inbox-card-close:hover { background: var(--color-surface-sunken); color: var(--color-text); }
.inbox-card-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding-bottom: var(--space-3);
  scrollbar-color: var(--color-border) transparent;
  scrollbar-width: thin;
}
.inbox-card-pills {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  min-height: 24px;
}
.chat-head-card-toggle {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  color: var(--color-neutral-text);
  display: inline-flex;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  gap: var(--space-2);
  height: var(--control-h);
  padding: 0 var(--space-3);
}
.chat-head-card-toggle:hover { background: var(--color-surface-sunken); }
.chat-head-card-toggle.is-open { background: var(--color-primary-soft); border-color: var(--color-primary); color: var(--color-primary); }
.inbox-messages-slot { grid-area: messages; }
.inbox-queue {
  border-right: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  grid-area: queue;
  min-height: 0;
  overflow-y: auto;
  padding: var(--space-3) var(--space-3) var(--space-4);
  scrollbar-color: var(--color-border) transparent;
  scrollbar-width: thin;
}
.inbox-queue .inbox-bar {
  background: var(--color-surface);
  padding-block: var(--space-1) var(--space-2);
  position: sticky;
  top: calc(var(--space-3) * -1);
  z-index: var(--z-above);
}
.inbox-pane {
  display: flex;
  flex-direction: column;
  grid-area: pane;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}
.inbox-pane-blank {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: var(--space-2);
  justify-content: center;
  padding: var(--space-6);
}
.inbox-pane-blank p { margin: 0; max-width: 52ch; }
.inbox-pane-blank .muted { color: var(--color-muted); font-size: var(--text-sm); }
.chat-head--inbox,
.inbox-pane .tl-compose-area {
  padding-inline: max(var(--space-4), (100% - var(--feed-max)) / 2);
}
.chat-head { gap: var(--space-3); }
.chat-head--inbox {
  align-items: center;
  background: var(--color-sidebar);
  border-bottom-color: var(--color-sidebar-border);
  color: var(--color-sidebar-text);
  column-gap: var(--space-4);
  flex-wrap: wrap;
  row-gap: var(--space-1);
}
.chat-head-left,
.chat-head-right {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  min-width: 0;
}
.chat-head-left { flex: 1 1 22rem; }
.chat-head--inbox .chat-head-who { flex-basis: 8rem; }
.chat-head-right { flex: 0 0 auto; margin-left: auto; }
.chat-head--inbox .panel-title,
.chat-head--inbox a.panel-title { color: var(--color-sidebar-active-text); }
.chat-head--inbox a.panel-title:hover { text-decoration: underline; }
.chat-head--inbox .panel-head-moved {
  border-color: var(--color-sidebar-border);
  color: var(--color-sidebar-text);
}
.chat-head--inbox .chat-head-card-toggle {
  border-color: var(--color-sidebar-border);
  color: var(--color-sidebar-text);
  flex: 0 0 auto;
}
.chat-head--inbox .chat-head-card-toggle:hover {
  background: var(--color-sidebar-hover);
  color: var(--color-sidebar-active-text);
}
.chat-head--inbox .chat-head-card-toggle.is-open {
  background: var(--color-sidebar-active);
  border-color: var(--color-sidebar-active);
  color: var(--color-sidebar-active-text);
}
.chat-head-who {
  display: flex;
  flex: 1 1 12rem;
  flex-direction: column;
  min-width: 0;
}
.chat-head-avatar {
  align-self: flex-start;
  flex: 0 0 auto;
  margin-top: 1px;
}
.chat-head-name {
  align-items: center;
  column-gap: var(--space-2);
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
}
.chat-head-call {
  align-items: center;
  border-radius: var(--radius-control);
  color: var(--color-muted);
  display: inline-flex;
  flex: 0 0 auto;
  padding: 2px;
}
.chat-head-call:hover { background: var(--state-hover); color: var(--color-primary); }
#inbox-body:has(#deal-panel[data-open]) .chat-head-call { display: none; }
.chat-head--inbox .chat-head-call { color: var(--color-sidebar-muted); }
.chat-head--inbox .chat-head-call:hover {
  background: var(--color-sidebar-hover);
  color: var(--color-sidebar-active-text);
}
.chat-head-who .muted {
  color: var(--color-muted);
  font-size: var(--text-xs);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chat-head.chat-head--inbox { flex-wrap: nowrap; }
.chat-head--inbox .chat-head-left {
  flex: 1 1 auto;
  flex-wrap: nowrap;
}
.chat-head--inbox .chat-head-who { flex: 1 1 auto; }
.chat-head--inbox .chat-head-avatar {
  align-self: center;
  margin-top: 0;
}
.chat-head--inbox .chat-head-name { flex-wrap: nowrap; }
.chat-head--inbox .chat-head-name .panel-title {
display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .chat-head.chat-head--inbox {
    column-gap: var(--space-2);
    padding-inline: var(--space-2);
  }
.chat-head--inbox .chat-head-left { gap: var(--space-2); }
.chat-head--inbox .chat-head-call {
    justify-content: center;
    margin-block: calc((max(24px, var(--tap-min)) - var(--icon-sm) - 4px) / -2);
    min-height: max(24px, var(--tap-min));
    min-width: max(24px, var(--tap-min));
  }
}
.chat-head-stage { flex: 0 0 auto; }
.chat-head-stage-summary {
  align-items: flex-start;
  border: 1px solid var(--color-sidebar-border);
  border-radius: var(--radius-control);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 3px;
  list-style: none;
  min-height: var(--control-h);
  padding: var(--space-1) var(--space-3);
}
.chat-head-stage-summary::-webkit-details-marker { display: none; }
.chat-head-stage-summary:hover { background: var(--color-sidebar-hover); }
.chat-head-stage-summary:focus-visible {
  outline: 2px solid var(--color-sidebar-active-text);
  outline-offset: 1px;
}
.chat-head-stage-summary--static { cursor: default; }
.chat-head-stage-line {
  align-items: center;
  display: flex;
  gap: var(--space-2);
}
.chat-head-stage-name {
  color: var(--color-sidebar-active-text);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  max-width: 22ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chat-head-stage-line[class*="stage-tone--"] {
  background: var(--stage-fill);
  border-radius: var(--radius-control);
  padding: var(--space-1) var(--space-2);
}
.chat-head-stage-line[class*="stage-tone--"] .stage-dot { display: none; }
.chat-head-stage-line[class*="stage-tone--"] .chat-head-stage-name,
.chat-head-stage-line[class*="stage-tone--"] .chat-head-stage-age,
.chat-head-stage-line[class*="stage-tone--"] .chat-head-stage-caret,
.chat-head-stage-line[class*="stage-tone--"] .deal-lost-reason {
  color: var(--stage-ink);
}
.chat-head-stage-age {
  color: var(--color-sidebar-muted);
  font-size: var(--text-2xs);
  white-space: nowrap;
}
.chat-head-stage-age::before { content: "("; }
.chat-head-stage-age::after { content: ")"; }
.chat-head-stage-caret {
  color: var(--color-sidebar-muted);
  transition: transform var(--duration-card) var(--ease-card-in);
}
.chat-head-stage[open] .chat-head-stage-caret { transform: rotate(180deg); }
.chat-head-funnel {
  display: flex;
  gap: 2px;
}
.chat-head-funnel-seg {
  background: var(--color-sidebar-border);
  block-size: 3px;
  border-radius: 2px;
  inline-size: 18px;
}
.chat-head-funnel-seg.is-done {
  background: var(--stage-fill, var(--color-sidebar-muted));
  opacity: 0.55;
}
.chat-head-funnel-seg.is-current {
  background: var(--stage-fill, var(--color-sidebar-active));
  inline-size: 28px;
}
.chat-head-stage-menu {
  color: var(--color-text);
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 240px;
  padding: var(--space-2);
}
.chat-head-stage-item {
  align-items: center;
  background: var(--stage-fill, none);
  border: 0;
  border-radius: var(--radius-control);
  color: var(--stage-ink);
  cursor: pointer;
  display: flex;
  font-family: inherit;
  font-size: var(--text-sm);
  gap: var(--space-2);
  justify-content: flex-start;
  min-height: var(--control-h);
  padding: 0 var(--space-2);
  text-align: left;
  width: 100%;
}
.chat-head-stage-item + .chat-head-stage-item { margin-top: 2px; }
.chat-head-stage-item .stage-dot { display: none; }
.chat-head-stage-item:hover {
  background: var(--stage-fill, var(--color-surface-sunken));
  box-shadow: inset 0 0 0 2px var(--stage-color, transparent);
  color: var(--stage-ink);
}
.chat-head-stage-item:active {
  background: var(--stage-fill, var(--color-neutral-bg));
  box-shadow: inset 0 0 0 2px var(--stage-color, transparent);
  color: var(--stage-ink);
}
.chat-head-stage-item.is-current {
  box-shadow: inset 0 0 0 2px var(--stage-color, var(--color-primary));
  cursor: default;
  font-weight: var(--weight-semibold);
}
.inbox-queue .inbox-list { margin-inline: calc(var(--space-3) * -1); }
.inbox-list .ui-row-title {
  font-size: var(--text-base);
  font-weight: var(--weight-medium);
  line-height: var(--leading-tight);
}
.inbox-list .ui-row-sub { font-size: var(--text-sm); }
.inbox-list .ui-row.is-current {
  background: transparent;
  outline: 1px solid color-mix(in srgb, var(--color-primary) 55%, transparent);
  outline-offset: -1px;
}
.inbox-list .ui-row.iq-row--waiting {
  background: color-mix(in srgb, var(--color-info-text) 8%, var(--color-surface));
}
.iq-row--waiting .ui-row-title { font-weight: var(--weight-semibold); }
.iq-row--waiting .ui-row-title::before {
  background: var(--color-info-solid);
  border-radius: var(--radius-full);
  content: "";
  display: inline-block;
  height: 6px;
  margin-right: var(--space-1);
  vertical-align: middle;
  width: 6px;
}
@media (hover: hover) {
  .inbox-list .ui-row.iq-row--waiting:hover {
    background: color-mix(in srgb, var(--color-info-text) 12%, var(--color-surface));
  }
}
.inbox-list .ui-row-link:hover { text-decoration: none; }
.inbox-list .ui-row {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  user-select: none;
}
.inbox-list .ui-row:active,
.inbox-list .ui-row.iq-row--waiting:active {
  background: color-mix(in srgb, var(--color-info-text) 14%, var(--color-surface));
}
.iq-waiting { font-variant-numeric: tabular-nums; }
.iq-pin { color: var(--color-muted); vertical-align: -0.125em; }
.iq-author {
  color: var(--color-text);
  font-weight: var(--weight-medium);
}
.iq-draft { color: var(--color-warning-text); font-weight: var(--weight-medium); }
.iq-draft--failed { color: var(--color-danger-text); }
.iq-preview { align-items: center; display: flex; gap: var(--space-2); }
.iq-line {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.iq-line a {
  color: inherit;
  display: inline;
  min-height: 0;
  padding: 0;
  pointer-events: none;
  text-decoration: none;
}
.iq-moved {
  align-items: center;
  color: var(--color-muted);
  display: inline-flex;
  flex: 0 1 auto;
  font-size: var(--text-2xs);
  gap: var(--space-05);
  max-width: 55%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.inbox-more {
  height: 3rem;
  list-style: none;
  position: relative;
}
.inbox-more.htmx-request::after {
  color: var(--color-faint);
  content: "Загружаю беседы…";
  font-size: var(--text-xs);
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  top: var(--space-2);
}
.tl-controls {
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: space-between;
  margin: 0 calc(var(--space-4) * -1);
max-width: none;
  padding: var(--space-2) var(--space-4);
  position: sticky;
top: 0;
  width: auto;
  z-index: 1;
}
.tl-scope,
.tl-filter {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-05);
}
.tl-scope-btn,
.tl-filter-btn {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--radius-pill);
  color: var(--color-muted);
  display: inline-flex;
  font-size: var(--text-2xs);
  gap: var(--space-1);
  line-height: 1;
  padding: 5px var(--space-2);
  text-decoration: none;
  transition: background var(--transition-fast), color var(--transition-fast);
}
@media (hover: none) {
  .tl-filter-btn { min-height: 44px; padding: 5px var(--space-3); }
  .stage-rail-step { min-height: 44px; }
.inbox-card-close { height: var(--control-h); width: var(--control-h); }
}
.tl-scope-btn:hover,
.tl-filter-btn:hover {
  background: var(--state-hover);
  color: var(--color-text);
  text-decoration: none;
}
.tl-scope-btn.is-current,
.tl-filter-btn.is-current {
  background: var(--color-surface-sunken);
  border-color: var(--color-border);
  color: var(--color-text);
  font-weight: var(--weight-semibold);
}
.tl-filter-count {
  color: var(--color-faint);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}
.tl-filter-btn.is-current .tl-filter-count { color: var(--color-muted); }
.tl-deal-mark {
  align-items: center;
  color: var(--color-faint);
  display: flex;
  font-size: var(--text-2xs);
  gap: var(--space-2);
  letter-spacing: 0.04em;
  margin: var(--space-2) 0 0;
  text-transform: uppercase;
}
.tl-deal-mark .ch-tag { flex: none; }
.tl-deal-mark .tl-deal-join {
  letter-spacing: 0;
  text-transform: none;
}
.tl-deal-mark::after {
  background: var(--color-border);
  content: "";
  flex: 1;
  height: 1px;
}
@media (max-width: 1023px) {
  .inbox-workspace {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto;
grid-template-areas: none;
    height: auto;
    min-height: 0;
  }
.inbox-workspace .inbox-queue,
  .inbox-workspace .inbox-pane,
  .inbox-workspace .inbox-card-slot {
    grid-area: auto;
  }
.inbox-workspace .inbox-queue {
border-right: 0;
    max-height: none;
    overflow-y: visible;
  }
.inbox-queue .inbox-bar {
    padding-block: 0;
    position: static;
  }
.inbox-workspace.is-open { grid-template-columns: minmax(0, 1fr); }
  .inbox-workspace.is-open .inbox-queue { display: none; }
  .inbox-workspace:not(.is-open) .inbox-pane { display: none; }
.inbox-card { border-right: 0; }
.inbox-workspace.is-open {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
  }
.inbox-workspace.is-open .inbox-pane {
    flex: 1;
    height: auto;
    min-height: 0;
  }
}
@media (max-width: 1200px) {
  .deals-table .col-created,
  .deals-table .col-source {
    display: none;
  }
}
@media (max-width: 1100px) {
  .orders-table .col-owner,
  .orders-table .cell-owner {
    border: 0;
    padding-inline: 0;
    visibility: hidden;
    width: 0;
  }
}
@media (max-width: 768px) {
.clients-table-wrap {
    display: none;
  }
.clients-mobile {
    display: grid;
    gap: var(--space-2);
    grid-template-columns: minmax(0, 1fr);
    padding: var(--panel-inset);
  }
.clients-item {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-panel);
    display: grid;
    gap: var(--space-1);
    min-width: 0;
    padding: var(--space-3);
    position: relative;
  }
.clients-item .lead-title {
    display: block;
    min-height: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
.clients-item .lead-title::after {
    content: "";
    inset: 0;
    position: absolute;
  }
}
@media (max-width: 720px) {
.clients-bar .ui-filterbar-main {
    flex-wrap: wrap;
  }
.clients-bar .ui-filterbar-search {
    flex-basis: 100%;
  }
.clients-bar .ui-filterbar-controls {
    flex: 1 1 100%;
  }
}
@media (max-width: 768px) {
.table-scroll--deals {
    display: none;
  }
.bulk-bar,
  .tasks-bulk {
    background: var(--color-primary-soft);
    border: 1px solid var(--color-primary);
    border-radius: var(--radius-panel);
    bottom: calc(var(--nav-bar-space) + var(--space-2));
    box-shadow: var(--elevation-overlay);
    flex-wrap: wrap;
    height: auto;
    left: var(--space-2);
    margin-bottom: 0;
    margin-top: 0;
    padding: var(--space-1) var(--space-2);
    position: fixed;
    right: var(--space-2);
    top: auto;
  }
.bulk-bar,
  .tasks-bulk {
    flex-wrap: nowrap;
    z-index: var(--z-sticky);
  }
.bulk-bar .ui-btn,
  .tasks-bulk .ui-btn {
    justify-content: center;
    min-height: var(--tap-min);
    min-width: var(--tap-min);
  }
html:has(.bulk-bar:not([hidden])),
  html:has(.tasks-bulk:not([hidden])) {
    scroll-padding-top: var(--topbar-h, 0px);
    scroll-padding-bottom: calc(var(--nav-bar-space) + var(--tap-min) + var(--space-4));
  }
.deal-result-bar .ui-btn.bulk-select-toggle { display: inline-flex; }
.mobile-lead-card .cell-pick { display: none; }
.is-selecting .mobile-lead-card { padding-right: calc(var(--space-3) + max(36px, var(--tap-min))); position: relative; }
.is-selecting .mobile-lead-card .cell-pick {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    position: absolute;
    right: 0;
    top: 0;
    width: max(36px, var(--tap-min));
  }
.is-selecting .mobile-lead-card .cell-pick input { height: 20px; width: 20px; }
.chat-head { flex-wrap: wrap; }
.tl-convo-foot { display: none; }
.chat-head-right {
    flex: 1 1 100%;
    margin-left: 0;
    min-width: 0;
  }
.chat-head-card-toggle-text { display: none; }
.chat-head--inbox .chat-head-card-toggle {
    border-color: transparent;
    justify-content: center;
    min-width: max(32px, var(--tap-min));
    padding: 0;
  }
.chat-head .panel-head-lastin {
    flex: 1 1 8rem;
    text-align: left;
  }
.mobile-lead-card {
    display: grid;
    gap: var(--space-2);
    padding: var(--space-3);
  }
.mobile-lead-header {
    display: grid;
    gap: var(--space-1);
  }
.mobile-lead-meta {
    display: grid;
    gap: var(--space-1);
    margin: 0;
  }
.mobile-lead-meta div {
    align-items: baseline;
    display: grid;
    gap: var(--space-2);
    grid-template-columns: 9rem minmax(0, 1fr);
  }
.mobile-lead-meta dd {
    margin: 0;
    min-width: 0;
  }
.deal-bulk-form .mobile-lead-list {
    display: grid;
    gap: var(--space-3);
    grid-template-columns: minmax(0, 1fr);
  }
.mobile-lead-card--deal {
    gap: var(--space-1);
    min-width: 0;
    position: relative;
  }
.mobile-lead-card--deal .lead-title {
    display: block;
    min-height: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
.mobile-lead-card--deal .lead-title::after {
    content: "";
    inset: 0;
    position: absolute;
  }
.mobile-deal-row {
    align-items: center;
    column-gap: var(--space-2);
    display: flex;
    font-size: var(--text-sm);
    min-width: 0;
  }
.mobile-deal-cut {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
.mobile-deal-row > .stage-cell {
    flex: 0 1 auto;
    min-width: 0;
    white-space: nowrap;
  }
.mobile-deal-when,
  .mobile-deal-budget {
    flex: 0 0 auto;
    white-space: nowrap;
  }
#orders-result .table-scroll {
    display: none;
  }
#orders-result .mobile-lead-list {
    display: grid;
    gap: var(--space-3);
    padding: var(--panel-inset);
  }
#orders-result .mobile-week-label {
    margin: 0;
  }
#orders-result .mobile-lead-list {
    gap: var(--space-2);
    grid-template-columns: minmax(0, 1fr);
  }
#orders-result .mobile-lead-card {
    gap: var(--space-1);
    grid-template-columns: minmax(0, 1fr);
    padding: var(--space-2) var(--space-3);
  }
#orders-result .mobile-lead-header {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-1) var(--space-2);
  }
#orders-result .mobile-lead-header > div {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--space-2);
    min-width: 0;
  }
#orders-result .mobile-lead-meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    font-size: var(--text-sm);
    gap: 2px var(--space-3);
  }
#orders-result .mobile-lead-meta div {
    align-items: baseline;
    display: flex;
    gap: var(--space-1);
    max-width: 100%;
    min-width: 0;
  }
#orders-result .mobile-lead-meta dt {
    color: var(--color-muted);
    font-size: inherit;
    font-weight: var(--weight-normal);
    white-space: nowrap;
  }
#orders-result .mobile-lead-meta .is-wide {
    flex-basis: 100%;
  }
#orders-result .mobile-lead-meta .is-wide dd {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
#orders-result .mobile-lead-actions {
    margin-top: var(--space-1);
  }
#orders-result .mobile-lead-card {
    position: relative;
  }
#orders-result .mobile-lead-card .lead-title {
    display: inline;
    min-height: 0;
  }
#orders-result .mobile-lead-card .lead-title::after {
    content: "";
    inset: 0;
    position: absolute;
  }
#orders-result .mobile-lead-card :is(.mobile-lead-meta a, .mobile-lead-actions, .ui-label) {
    position: relative;
  }
.deal-filters {
    position: relative;
  }
.deal-filters .filter-pop {
    position: static;
  }
.deal-filters .filter-pop-body {
    left: 0;
    max-width: none;
    right: 0;
    width: auto;
  }
.menu-drop-body {
    left: 0;
    right: auto;
    width: min(280px, calc(100vw - var(--space-6)));
  }
.deal-result-bar {
    position: relative;
  }
.deal-result-bar > .menu-drop {
    position: static;
  }
.deal-result-bar .menu-drop-body {
    left: 0;
    max-width: none;
    right: 0;
    width: auto;
  }
.topbar-actions {
    position: relative;
  }
.topbar-actions .menu-drop,
  .topbar-actions .account-menu {
    position: static;
  }
.topbar-actions .menu-drop-body {
    left: auto;
    min-width: 0;
    right: 0;
    width: min(280px, calc(100vw - 2 * var(--space-4)));
  }
.panel-head,
  .order-text-card-head {
    flex-wrap: wrap;
  }
.table-scroll--staff {
    display: none;
  }
.staff-cards {
    display: grid;
    gap: var(--space-3);
    grid-template-columns: minmax(0, 1fr);
  }
.cell-actions-row {
    justify-content: flex-start;
  }
}
.payment-list {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0;
}
.payment-row {
  border-top: 1px solid var(--color-border);
  padding: var(--space-3) 0;
}
.payment-row:first-child {
  border-top: 0;
}
.payment-row__head {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: space-between;
}
.payment-row__sum {
  font-size: var(--text-md);
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}
.payment-row--refund .payment-row__sum {
  color: var(--color-danger-text);
}
.payment-row__kind {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: 500;
}
.payment-row__meta {
  color: var(--color-muted);
  font-size: var(--text-sm);
  margin-top: var(--space-05);
}
.payment-row__comment {
  margin: var(--space-1) 0 0;
  overflow-wrap: anywhere;
}
.payment-row__delete {
  align-items: center;
  background: none;
  border: 0;
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--text-sm);
  gap: var(--space-1);
  margin-top: var(--space-2);
  min-height: max(32px, var(--tap-min));
  padding: 0;
}
.payment-row__delete:hover,
.payment-row__delete:focus-visible {
  color: var(--color-danger-text);
}
.payment-form {
  border-top: 1px solid var(--color-border);
  margin-top: var(--space-4);
  padding-top: var(--space-4);
}
.task-type {
  color: var(--color-muted);
  display: inline-flex;
  justify-content: center;
}
.deal-bar { margin-bottom: var(--space-2); }
.deal-bar .ui-filterbar-search { max-width: none; }
.deal-bar .ui-filterbar-controls { flex: 0 0 auto; }
@media (min-width: 721px) {
  .deal-bar .ui-filterbar-main { flex-wrap: nowrap; }
.deal-bar .ui-filterbar-controls { min-width: 0; }
.deal-bar .ui-filterbar-controls > .ui-menu { flex: 0 1 auto; min-width: 0; }
.deal-bar .ui-menu > summary { max-width: 100%; min-width: 0; }
.deal-bar .ui-menu > summary .ui-btn-label {
    min-width: 3ch;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
@media (max-width: 720px) {
.deal-bar .ui-filterbar-main { flex-wrap: wrap; }
.deal-bar .ui-filterbar-search { flex-basis: 100%; max-width: none; }
.deal-bar .ui-filterbar-controls { flex: 1 1 0; min-width: 0; }
.deal-bar .ui-filterbar-reset { flex: none; }
.deal-bar .ui-filterbar-controls > .ui-menu,
  .deal-bar .ui-filterbar-controls > .ui-filterbar-end {
    flex: 1 1 calc(50% - var(--space-1)); 
    min-width: 0;
  }
.deal-bar .ui-filterbar-controls > .ui-menu > summary,
  .deal-bar .ui-filterbar-controls > .ui-filterbar-end {
    justify-content: center;
    min-height: max(var(--control-h-md), var(--tap-min));
    width: 100%;
  }
.deal-bar .ui-filterbar-controls:has(> .chip-select) > * { flex: 0 0 auto; width: auto; }
.deal-bar .ui-filterbar-search input { height: max(var(--control-h-md), var(--tap-min)); }
}
.deals-sort { display: none; }
@media (max-width: 720px) {
  .deals-sort {
    display: flex;
    justify-content: flex-end;
    margin-bottom: var(--space-1);
  }
}
.ui-btn-label) {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
:focus-visible) {
  background: color-mix(in srgb, var(--color-text) 10%, transparent);
  color: var(--color-text);
}
@media (max-width: 720px) {
  .inbox-pinned-task:not(.is-open) { flex-wrap: wrap; }
.inbox-pinned-task:not(.is-open) > button.inbox-pinned-task-open--rest {
    flex: 1 0 100%;
    order: 5;
  }
.inbox-pinned-task:not(.is-open) > .inbox-pinned-task-done {
    margin-left: auto;
    order: 4;
  }
.inbox-pinned-task:not(.is-open) {
    padding-block: var(--space-1);
    row-gap: 0;
  }
.inbox-pinned-task:not(.is-open) > .inbox-pinned-task-done {
    min-height: var(--control-h-md);
    position: relative;
  }
.inbox-pinned-task:not(.is-open) > .inbox-pinned-task-done::after {
    content: "";
    inset: calc((var(--control-h-md) - var(--tap-min)) / 2) calc(var(--space-1) * -1);
    position: absolute;
  }
.inbox-pinned-task:not(.is-open) > .inbox-pinned-task-open--lead {
    min-height: var(--control-h-md);
    padding-block: 0;
  }
.inbox-pinned-task:not(.is-open) .inbox-pinned-task-typemenu > summary {
    min-height: var(--control-h-md);
  }
.inbox-pinned-task:not(.is-open) > button.inbox-pinned-task-open--rest {
    min-height: 0;
    padding-block: 0 var(--space-1);
  }
.inbox-pinned-task:not(.is-open) > button.inbox-pinned-task-open--rest .inbox-pinned-task-title {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    white-space: normal;
  }
}
@media (max-width: 480px) {
  .inbox-pinned-task:not(.is-open) > .inbox-pinned-task-done {
    min-width: var(--tap-min);
    padding: 0;
  }
.inbox-pinned-task:not(.is-open) > .inbox-pinned-task-done .pin-done-word {
    clip: rect(0 0 0 0);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
}
@media (max-width: 768px) {
  .task-types-table,
  .task-types-table tbody,
  .task-types-table tr,
  .task-types-table td {
    display: block;
  }
.task-types-table thead {
    display: none;
  }
.task-types-table tbody {
    display: grid;
    gap: var(--space-3);
  }
.task-types-table tr {
    align-items: center;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-panel);
    display: grid;
    gap: var(--space-2) var(--space-3);
    grid-template-columns: minmax(0, 1fr) auto auto;
    height: auto;
    padding: var(--space-2) var(--space-3);
  }
.task-types-table td {
    border: 0;
    padding: 0;
  }
.task-types-table td:nth-child(1) {
    grid-column: 1 / 3;
  }
.task-types-table td:nth-child(5) {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
  }
.task-types-table td:nth-child(2),
  .task-types-table td:nth-child(4) {
    color: var(--color-muted);
    font-size: var(--text-sm);
  }
.task-types-table td:nth-child(4)::before {
    content: "порядок ";
  }
.task-types-table td:nth-child(6) {
    grid-column: 1 / -1;
    justify-self: end;
  }
.task-types-table td[colspan] {
    grid-column: 1 / -1;
  }
}
.task-types-table .cell-actions { white-space: nowrap; }
.task-types-table .cell-actions form { display: inline-block; }
.task-type-color { align-items: center; display: inline-flex; gap: var(--space-2); }
.task-type-color input[type="color"] {
  block-size: 28px;
  cursor: pointer;
  inline-size: 40px;
  padding: 2px;
}
.task-type-position input { inline-size: 9ch; }
.has-type-color {
  --type-ink: color-mix(in oklab, var(--type-color, var(--color-muted)) 55%, var(--color-text));
}
.task-type-mark { color: var(--type-color, var(--color-muted)); flex: 0 0 auto; }
.task-type.has-type-color > .icon,
.inbox-pinned-task.has-type-color .inbox-pinned-task-icon {
  color: var(--type-color, var(--color-muted));
}
.inbox-pinned-task.has-type-color .inbox-pinned-task-typemenu > summary,
.inbox-pinned-task.has-type-color .inbox-pinned-task-type {
  color: var(--type-ink);
  font-weight: var(--weight-medium);
}
.task-form,
.form-stack {
  display: grid;
  gap: var(--space-3);
}
.form-stack > div {
  display: grid;
  gap: var(--space-1);
  margin: 0;
  min-width: 0;
}
.form-stack label {
  color: var(--label-color);
  font-size: var(--label-size);
  font-weight: var(--label-weight);
}
.task-form input,
.task-form select,
.task-form textarea,
.form-stack input,
.form-stack select,
.form-stack textarea {
  max-width: 100%;
  min-width: 0;
  width: 100%;
}
.task-form .ui-btn,
.form-stack .ui-btn {
  justify-content: center;
  width: 100%;
}
.form-inline-errors {
  display: grid;
  gap: var(--space-2);
}
.form-inline-errors:empty {
  display: none;
}
.form-inline-error {
  align-items: flex-start;
  display: flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  line-height: 1.4;
  margin: 0;
  padding: var(--space-2);
}
.form-inline-error svg {
  flex-shrink: 0;
  margin-top: 1px;
}
.preset-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-2);
}
.field-hint {
  color: var(--color-muted);
  display: block;
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
.reminder-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
}
.reminder-list li {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.nav-badge {
  background: var(--color-danger-solid);
  border-radius: var(--radius-full);
  color: var(--color-on-primary);
  font-size: var(--text-2xs);
  font-weight: var(--weight-bold);
  margin-left: auto;
  min-width: 20px;
  padding: 2px 6px;
  text-align: center;
}
.dup-intro,
.merge-intro {
  margin: 0 0 var(--space-4);
  max-width: 68ch;
}
.dup-list {
  display: grid;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
}
.dup-pair {
  display: grid;
  gap: var(--space-2) var(--space-4);
  padding: var(--space-3);
}
.dup-parties {
  display: grid;
  gap: var(--space-2) var(--space-4);
}
.dup-why {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
}
@media (min-width: 768px) {
  .dup-pair {
    align-items: center;
    grid-template-columns: minmax(0, 1fr) 8.5rem auto;
  }
.dup-parties {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.dup-party {
  min-width: 0;
  overflow-wrap: anywhere;
}
.dup-party .muted {
  display: block;
  font-size: var(--text-xs);
}
.merge-intro:has(+ .merge-phones) {
  margin-bottom: var(--space-2);
}
.merge-phones {
  align-items: center;
  color: var(--color-text);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-sm);
  gap: var(--space-1) var(--space-3);
  margin: 0 0 var(--space-4);
}
.merge-phones .icon {
  color: var(--color-muted);
}
.merge-choice {
  align-items: baseline;
  cursor: pointer;
  display: flex;
  gap: var(--space-2);
}
.merge-actions {
  align-items: center;
  border-top: 1px solid var(--color-border);
  display: flex;
  gap: var(--space-3);
  margin-top: var(--space-5);
  padding-top: var(--space-4);
}
.merge-plate {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  padding: var(--space-2) var(--panel-inset);
}
.merge-plate form {
  display: inline-flex;
}
.tl-event-undo {
  display: inline-flex;
  margin-left: auto;
}
@media (max-width: 768px) {
  .tl-event--merge {
    border-radius: var(--radius-control);
    flex-wrap: wrap;
  }
.tl-event--merge .tl-event-label {
    flex: 1 1 calc(100% - 2rem);
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }
}
.merge-add {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: var(--space-3) 0;
}
.merge-add input[type="search"] {
  flex: 1 1 var(--field-min);
  max-width: var(--field-max);
}
.merge-group {
  margin: 0 0 var(--space-3);
}
.merge-group .ui-row-title {
  overflow-wrap: anywhere;
  white-space: normal;
}
.merge-group .ui-row-sub .mono {
  white-space: nowrap;
}
.merge-field {
  background: var(--color-warning-bg);
  border: 0;
  border-radius: var(--radius-control);
  display: grid;
  gap: var(--space-1);
  margin: 0 0 var(--space-2);
  min-width: 0;
  padding: var(--space-2) var(--panel-inset);
}
.merge-field legend {
  color: var(--color-muted);
  float: left;
  font-size: var(--text-xs);
  padding: 0;
  width: 100%;
}
.merge-orders {
  margin-top: var(--space-3);
}
.merge-error {
  align-items: center;
  color: var(--color-danger-text);
  display: flex;
  gap: var(--space-2);
  margin: 0 0 var(--space-3);
}
.order-cancel-panel form,
.order-cancelled-note {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  align-items: flex-start;
}
.order-cancel-panel label {
  font-size: var(--text-2xs);
  color: var(--color-muted);
}
.order-cancel-panel textarea {
  width: 100%;
  resize: vertical;
}
.order-cancelled-note {
  border-left: 3px solid var(--color-danger-border);
}
.cell-outcome--won { color: var(--color-success-text); }
.cell-outcome--lost { color: var(--color-danger-text); }
.cell-outcome--unknown { color: var(--color-muted); }
@media (hover: none) {
:where(
    button, select, textarea, summary, a[href],
    [role="button"], [role="tab"],
    label:has(input:is([type="checkbox"], [type="radio"])),
    input:not([type="checkbox"], [type="radio"], [type="file"], [type="hidden"])
  ):where(:not(.visually-hidden, .optgrp-toggle, .ui-row-link)) {
    min-height: var(--tap-min);
  }
:where(a[href], summary, label) {
    align-content: center;
  }
:where(a[href]:not([class])) {
padding-block: max(0px, calc((var(--tap-min) - 1em) / 2));
  }
:where(a[href^="tel:"], a[href^="mailto:"]) {
    align-items: center;
    display: inline-flex;
  }
}
:root {
  --m-num: 220px;              
  --m-cur: 20px;               
  --m-pad: var(--space-2);
  --m-gut: var(--space-4);     
  --m-sep: .3em;               
  --m-row-lg: var(--table-row-height);
  --m-row-sm: var(--space-6);
  --m-cell-lg: var(--control-h);
  --m-cell-sm: 22px;
  --m-bar-h: var(--control-h-lg);
}
.money-panel .panel-note { color: var(--label-color); font-size: var(--label-size); }
.m-body { padding: var(--space-3) 0; }
.m-row {
  align-items: center;
  column-gap: var(--space-3);
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--m-num);
  min-height: var(--m-row-lg);
  padding: 0 var(--m-gut);
  transition: background var(--transition-fast);
}
.m-row--sm { min-height: var(--m-row-sm); padding-left: calc(var(--m-gut) * 2); }
.m-row.is-editing { background: var(--state-selected); }
.m-label { font-size: var(--text-md); font-weight: var(--weight-semibold); min-width: 0; }
.m-label--sm {
  color: var(--label-color); font-size: var(--label-size); font-weight: var(--label-weight);
  min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.m-cell { display: block; justify-self: end; width: var(--m-num); }
.m-val,
.m-in {
  border: 1px solid transparent; border-radius: var(--radius-input);
  font-family: var(--font-mono); font-feature-settings: "tnum"; font-variant-numeric: tabular-nums;
  height: var(--m-cell-lg); letter-spacing: -.015em; padding: 0 var(--m-pad); width: 100%;
}
.m-cell--sm .m-val,
.m-cell--sm .m-in { height: var(--m-cell-sm); }
.m-val {
  align-items: center; background: none; color: var(--color-text); display: grid;
gap: 0;
  grid-template-columns: minmax(0, 1fr) auto var(--m-cur); text-align: right; white-space: nowrap;
}
.m-val--date {
  display: flex; justify-content: flex-end;
  padding-right: calc(var(--m-pad) + var(--m-cur));
}
button.m-val { cursor: pointer; transition: border-color var(--transition-fast), background var(--transition-fast); }
button.m-val:not(.m-val--est) .m-digits {
  border-bottom: 1px dashed var(--color-border-strong);
}
button.m-val--date {
  text-decoration: underline dashed var(--color-border-strong);
  text-underline-offset: 3px;
}
button.m-val:hover { background: var(--color-neutral-bg); border-color: var(--color-border); color: var(--color-text); }
button.m-val:focus-visible { border-color: var(--color-primary); box-shadow: var(--focus-ring); outline: none; }
.m-sign { color: var(--color-muted); padding-right: .18em; text-align: right; }
.m-cur { align-self: center; color: var(--color-faint); font-size: .68em; padding-left: 6px; text-align: left; }
i.sep { display: inline-block; width: var(--m-sep); }
.m-cell--lg .m-val, .m-cell--lg .m-in { font-size: var(--text-2xl); font-weight: var(--weight-bold); }
.m-cell--md .m-val, .m-cell--md .m-in { font-size: var(--text-xl); font-weight: var(--weight-normal); }
.m-cell--md .m-val--result { font-weight: var(--weight-bold); }
.m-cell--sm .m-val, .m-cell--sm .m-in {
  color: var(--color-muted); font-size: var(--text-sm); font-weight: var(--weight-normal);
}
.m-in {
  background: var(--color-surface); border-color: var(--color-primary); box-shadow: var(--focus-ring);
  color: var(--color-text); outline: none; padding-right: calc(var(--m-pad) + var(--m-cur));
  text-align: right; word-spacing: calc(var(--m-sep) - .6em);
}
.m-note {
  color: var(--color-muted); font-size: var(--text-xs); line-height: var(--m-row-sm); margin: 0;
  max-width: calc(100% - var(--m-num)); padding: 0 var(--m-gut) 0 calc(var(--m-gut) * 2);
}
.m-note b {
  color: var(--color-text); font-family: var(--font-mono); font-variant-numeric: tabular-nums;
  font-weight: var(--weight-medium);
}
.m-namewrap { align-items: center; display: flex; gap: var(--space-1); max-width: var(--field-max); min-width: 0; }
.m-name {
  background: none; border: 0; border-bottom: 1px dashed var(--color-border-strong); color: var(--color-text);
  font: inherit; font-size: var(--text-xs); min-width: 0; padding: 1px 0; width: 100%;
}
.m-name:focus { border-bottom-color: var(--color-primary); box-shadow: none; outline: none; }
.m-name::placeholder { color: var(--color-faint); }
.m-del {
  background: none; border: 0; border-radius: var(--radius-sm); color: var(--color-faint);
  cursor: pointer; flex: 0 0 auto; line-height: 0; padding: 3px;
}
.m-del:hover { background: var(--color-danger-bg); color: var(--color-danger-text); }
.m-add {
  align-items: center; background: none; border: 0; border-radius: var(--radius-sm); color: var(--color-primary);
  cursor: pointer; display: inline-flex; font: inherit; font-size: var(--text-xs);
  font-weight: var(--weight-semibold); gap: var(--space-1); margin-left: -5px; padding: 2px 5px;
}
.m-add:hover { background: var(--color-primary-soft); color: var(--color-primary); }
.m-flagwrap {
  align-items: baseline; column-gap: var(--space-2); display: flex; flex-wrap: wrap;
  min-width: 0; row-gap: 0;
}
.m-flag {
  align-items: center; color: var(--color-muted); cursor: pointer; display: inline-flex;
  font-size: var(--text-2xs); gap: var(--space-1); margin: 0; min-width: 0;
}
.m-flag input { height: 13px; margin: 0; width: 13px; }
.m-flag input:disabled { cursor: default; }
.m-flag:has(input:checked) { color: var(--color-text); }
.m-private {
  background: var(--color-surface-sunken); border-top: 1px solid var(--color-border);
  margin: var(--space-5) 0 calc(-1 * var(--space-3)); padding: var(--space-2) 0 var(--space-3);
}
.m-private-cap {
  align-items: center; color: var(--color-muted); display: flex; font-size: var(--text-2xs);
  gap: var(--space-1); margin: 0; min-height: var(--m-row-sm); padding: 0 var(--m-gut);
}
.m-rule { display: flex; justify-content: flex-end; padding: var(--space-1) var(--m-gut) 0; }
.m-rule span { border-top: 1px solid var(--color-border-strong); display: block; height: 0; width: var(--m-num); }
.m-bar {
  align-items: center; border-top: 1px solid var(--color-border); display: flex;
  height: var(--m-bar-h); padding: 0 var(--m-gut);
}
.m-bar.is-editing { background: var(--color-primary-soft); }
.m-bar > * { min-width: 0; width: 100%; }
.m-bar-rest {
  align-items: center; background: none; border: 0; color: var(--color-muted); cursor: pointer; display: flex;
  flex: 1 1 auto; font: inherit; font-size: var(--text-xs); gap: var(--space-3); height: 100%;
  justify-content: space-between; margin: 0 calc(-1 * var(--m-gut)); padding: 0 var(--m-gut);
  text-align: left; transition: background var(--transition-fast); width: auto;
}
.m-bar-rest:hover { background: var(--color-surface-sunken); color: var(--color-text); }
.m-bar-last { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-bar-last b { color: var(--color-text); font-weight: var(--weight-medium); }
.m-bar-more {
  align-items: center; color: var(--color-primary); display: flex; flex: 0 0 auto; gap: var(--space-1);
  font-weight: var(--weight-semibold);
}
.m-chev { transition: transform var(--transition-fast); }
.is-open .m-chev { transform: rotate(180deg); }
.m-bar-edit { align-items: center; display: flex; gap: var(--space-2); }
.m-bar-rest[hidden], .m-bar-edit[hidden], .m-err[hidden], .m-hist[hidden] { display: none !important; }
.m-bar-what {
  color: var(--color-text); flex: 0 0 auto; font-size: var(--text-xs);
  font-weight: var(--weight-semibold); white-space: nowrap;
}
.m-why {
  background: var(--color-surface); border: 1px solid var(--color-border-strong); border-radius: var(--radius-input);
  color: var(--color-text); flex: 1 1 auto; font: inherit; font-size: var(--text-xs); height: 26px;
  max-width: var(--field-max); min-width: 0; padding: 0 var(--space-2);
}
.m-why:focus { border-color: var(--color-primary); box-shadow: var(--focus-ring); outline: none; }
.m-hint { color: var(--color-muted); flex: 0 0 auto; font-size: var(--text-2xs); white-space: nowrap; }
.m-err {
  align-items: center; color: var(--color-danger-text); display: flex; flex: 0 1 auto; font-size: var(--text-2xs);
  font-weight: var(--weight-semibold); gap: var(--space-1); margin: 0; min-width: 0; overflow: hidden;
  white-space: nowrap;
}
.m-hist {
  background: var(--color-surface-sunken); border-top: 1px solid var(--color-border); overflow: hidden;
}
.m-hist-inner { padding: var(--space-2) var(--m-gut) var(--space-3); }
.m-hist ol { display: grid; gap: var(--space-1); list-style: none; margin: 0; padding: 0; }
.m-hist li {
  border-top: 1px solid var(--color-border); column-gap: var(--space-2); display: grid;
  font-size: var(--text-xs); grid-template-columns: 118px 148px minmax(0, 1fr);
  padding-top: var(--space-1); row-gap: 2px;
}
.m-hist li:first-child { border-top: 0; padding-top: 0; }
.m-hist-when { color: var(--color-faint); }
.m-hist-who { color: var(--color-muted); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-hist-what { color: var(--color-text); min-width: 0; }
.m-hist-why { color: var(--color-muted); grid-column: 3; min-width: 0; }
.m-hist-why em { color: var(--color-faint); font-style: normal; }
@media (max-width: 620px) {
  :root { --m-num: 180px; }
  .m-note { max-width: 100%; }
  .m-cell--lg .m-val, .m-cell--lg .m-in { font-size: var(--text-xl); }
  .m-cell--md .m-val, .m-cell--md .m-in { font-size: var(--text-lg); }
  .m-label { font-size: var(--text-base); }
  .m-hint { display: none; }
  .m-hist li { grid-template-columns: minmax(0, 1fr); }
  .m-hist-why { grid-column: 1; }
}
.manual-order-form .panel-body { display: grid; gap: var(--space-4); }
.order-manual-status { border: 0; display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0; padding: 0; }
.order-manual-status legend { margin-bottom: var(--space-1); padding: 0; }
.order-phones { border: 0; display: grid; gap: var(--space-2); margin: 0; padding: 0; }
.order-phones legend { margin-bottom: var(--space-1); padding: 0; }
.order-phones-rows { display: grid; gap: var(--space-3); }
.order-phone-row {
  align-items: end;
  display: grid;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
}
.order-phone-row .chip-check { white-space: nowrap; }
.order-phones .ui-btn { justify-self: start; }
@media (max-width: 700px) {
  .order-phone-row { grid-template-columns: minmax(0, 1fr); }
}
.order-delivery-form .order-phone-row {
  gap: var(--space-1) var(--space-2);
  grid-template-columns: minmax(0, 1fr) auto;
}
.order-delivery-form .order-phone-row > label:first-child { grid-column: 1 / -1; }
.order-delivery-form .order-phone-row + .order-phone-row {
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-3);
}
.order-delivery-form .order-phones-rows { gap: var(--space-3); }
.order-dup-panel { border-color: var(--color-warning-border); }
.order-dup-panel .panel-head { background: var(--color-warning-bg); color: var(--color-warning-text); }
.order-dup-panel .panel-body { display: grid; gap: var(--space-3); justify-items: start; }
.order-dup-list { display: grid; gap: var(--space-1); list-style: none; margin: 0; padding: 0; }
.order-dup-list li { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.m-bar-rest--static { cursor: default; }
.m-bar-rest--static:hover { background: none; color: var(--color-muted); }
.order-status-strip { margin-bottom: 0; padding-block: var(--panel-inset-y); }
.order-status-strip .icon { color: var(--color-faint); }
.order-status-strip .order-strip-more { margin-left: auto; }
.order-status-strip .menu-drop-body { display: grid; gap: var(--space-2); min-width: 280px; }
.order-status-strip .menu-drop-body textarea { width: 100%; }
.order-texts { display: grid; gap: var(--space-3); }
.order-text-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  overflow: hidden;
}
.order-text-card-head {
  align-items: center;
  background: var(--color-surface-sunken);
  border-bottom: 1px solid var(--color-border);
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
  padding: var(--space-2) var(--space-3);
}
.order-text-card .doc-text { border: 0; border-radius: 0; margin: 0; }
.order-phones-more summary {
  color: var(--color-primary);
  cursor: pointer;
  font-size: var(--text-xs);
  margin-top: var(--space-1);
}
.order-phones-more div { padding-top: var(--space-05); }
.panel--accent-blue { border-left: 3px solid var(--color-primary); }
.panel--accent-green { border-left: 3px solid var(--color-success-solid); }
.panel--accent-blue > .panel-head .panel-title .icon { color: var(--color-primary); }
.panel--accent-green > .panel-head .panel-title .icon { color: var(--color-success-solid); }
.order-where-grid { margin: 0; }
.order-where-grid dt {
  align-items: center;
  display: flex;
  gap: var(--space-1);
}
.order-where-grid dt .icon { color: var(--color-faint); }
.order-where-grid dd { word-break: break-word; }
.order-where-wide { grid-column: span 2; }
@media (max-width: 480px) {
  .order-where-grid {
    gap: var(--space-2) var(--space-3);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
.order-where-wide { grid-column: 1 / -1; }
}
.order-detail-page .quote-head-titles {
  padding-block: var(--panel-inset-y);
}
.order-composition-body { padding: var(--space-3) 0; }
.order-composition-table th.r,
.order-composition-table td.r {
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
}
.order-composition-desc td { white-space: pre-line; }
.order-money-strip {
  border-top: 1px solid var(--color-border);
}
.m-val--est .m-digits { color: var(--color-muted); }
.m-val--est .m-sign { color: var(--color-faint); }
button.m-val--est .m-digits { border-bottom: 1px dashed var(--color-border-strong); }
.settle-block {
  border-bottom: 1px solid var(--color-border);
  display: grid;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 1fr);
  padding: var(--space-4);
}
.panel > .settle-block:last-child { border-bottom: 0; }
.settle-total > p { margin: 0; }
.settle-block:has(+ .settle-actions) { border-bottom: 0; }
.settle-block-head { align-items: center; display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-3); }
.settle-num .muted { font-family: var(--font-base); }
.settle-block-title {
  color: var(--color-text); font-size: var(--text-base); font-weight: var(--weight-semibold);
  line-height: var(--leading-tight); margin: 0;
}
.settle-table.settle-table--owes { min-width: 0; }
.settle-table--owes th.settle-num,
.settle-table--owes td.settle-num { width: 160px; }
@media (max-width: 480px) {
  .settle-table--owes th.settle-num,
  .settle-table--owes td.settle-num { padding-inline: var(--space-2); width: 88px; }
.settle-table--owes th.settle-num { line-height: var(--leading-tight); white-space: normal; }
}
.settle-figures {
  display: grid;
  gap: var(--space-4) var(--space-6);
  grid-template-columns: minmax(0, 1fr);
}
.settle-total { align-content: start; display: grid; gap: var(--space-1); margin: 0; min-width: 0; }
.settle-total dt { color: var(--label-color); font-size: var(--label-size); font-weight: var(--label-weight); }
.settle-total dd { margin: 0; }
.settle-sum {
  font-family: var(--font-mono); font-size: var(--text-xl); font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold); letter-spacing: -.015em; line-height: var(--leading-tight);
  white-space: nowrap;
}
.settle-sum.is-negative .m-sign,
.settle-sum.is-negative .m-digits { color: var(--color-danger-text); }
.settle-month {
  align-items: center; border: 1px solid var(--color-border); border-radius: var(--radius-control);
  display: inline-flex;
}
@media (min-width: 600px) {
  .settle-figures { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.settle-num { font-family: var(--font-mono); font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
th.settle-num { font-family: inherit; }
.settle-table { min-width: 560px; position: relative; }
.settle-client { cursor: pointer; display: grid; gap: 1px; min-height: var(--tap-min); }
.settle-client .muted { font-size: var(--text-xs); }
.settle-table .settle-actions-cell { text-align: right; white-space: nowrap; width: 64px; }
.settle-table .settle-date { width: 96px; }
.settle-table:not(.settle-table--owes) .settle-num { width: 128px; }
@media (max-width: 720px) {
  .settle-table:not(.settle-table--owes) { min-width: 600px; }
  .settle-table:not(.settle-table--owes) .settle-num { width: 96px; }
  .settle-table:not(.settle-table--owes) th.settle-num { line-height: var(--leading-tight); white-space: normal; }
}
#orders-settlement .ui-list {
  display: none;
}
@media (max-width: 720px) {
  #orders-settlement .table-scroll {
    display: none;
  }
#orders-settlement .ui-list {
    display: block;
  }
#orders-settlement .ui-row-sub {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }
}
#orders-changes .ui-row { align-items: start; }
#orders-changes .ui-row-title,
#orders-changes .ui-row-sub,
#orders-changes .ui-row-end {
  overflow: visible;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}
#orders-changes .ui-row-title { white-space: nowrap; }
#orders-changes .ui-row-end { flex-wrap: wrap; }
@media (max-width: 720px) {
  #orders-changes .ui-row {
    grid-template-areas: "title end" "sub sub";
    grid-template-columns: auto minmax(0, 1fr);
  }
#orders-changes .ui-row-lead { display: none; }
#orders-changes .ui-row-sub .muted { font-size: inherit; }
}
.settle-hint { color: var(--color-faint); font-size: var(--text-xs); }
.settle-undo { align-items: center; display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-3); }
@media (max-width: 480px) {
  .settle-undo .ui-btn { width: 100%; }
}
.order-edit-action {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  padding-inline: var(--m-gut);
}
.deal-side .deal-head {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-3);
}
.deal-side .deal-title {
  font-size: var(--text-md);
  font-weight: var(--weight-semibold);
  line-height: 1.3;
  margin: 0;
  overflow-wrap: anywhere;
}
.deal-side .deal-title.hx-value { cursor: text; }
.deal-sec {
  border-top: 1px solid var(--color-border);
  padding: var(--space-2) var(--space-3);
}
.deal-take {
  display: grid;
  gap: var(--space-1);
  margin-bottom: var(--space-2);
}
.deal-take .ui-btn,
.tl-take .ui-btn,
.chat-head-take .ui-btn,
.deal-side-peek-take {
  animation: take-halo calc(var(--duration-panel) * 5) var(--ease-card-in) var(--duration-card) 2;
  min-height: max(var(--control-h-lg), var(--tap-min));
}
.deal-take .ui-btn { width: 100%; }
@keyframes take-halo {
  from { box-shadow: 0 0 0 0 color-mix(in srgb, var(--color-primary) 45%, transparent); }
  to { box-shadow: 0 0 0 var(--space-2) transparent; }
}
@media (prefers-reduced-motion: reduce) {
  .deal-take .ui-btn,
  .tl-take .ui-btn,
  .chat-head-take .ui-btn,
  .deal-side-peek-take { animation: none; }
}
.chat-head-take { flex: 0 0 auto; margin: 0 0 0 auto; }
.chat-head-take .ui-btn { min-height: var(--control-h); }
.chat-head-take + .chat-head-right { margin-left: 0; }
#inbox-body:has(#deal-panel[data-open]) .chat-head-take { display: none; }
.deal-channels-title {
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  margin: 0 0 var(--space-1);
}
.deal-channel[data-can-send="1"] { cursor: pointer; }
.deal-channel[data-can-send="0"] .ui-row-title { color: var(--color-muted); font-weight: var(--weight-medium); }
.deal-side .field {
  align-items: baseline;
  column-gap: var(--space-3);
  display: grid;
  grid-template-columns: minmax(88px, 40%) minmax(0, 1fr);
  padding-block: var(--space-1);
}
.deal-side .field + .field {
  border-top: 0;
  margin-top: 0;
  padding-top: var(--space-1);
}
.deal-side .field-label {
  color: var(--color-muted);
  font-size: var(--text-sm);
  letter-spacing: 0;
  margin: 0;
  text-transform: none;
}
.deal-side .field-value {
  font-size: var(--text-base);
  min-height: 0;
  min-width: 0;
}
.deal-side .field--clip .field-value {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.deal-side .field--clip .field-value:has(.hx-input) { white-space: normal; }
.deal-side .field--clip .field-value .hx-input {
  display: block;
  box-sizing: border-box;
  height: 20px;
  line-height: 18px;
  max-height: 20px;
  min-height: 0;
  overflow: hidden;
  padding-block: 0;
  resize: none;
  white-space: pre;
  width: 100%;
}
.deal-side .field--person {
  display: block;
  font-weight: var(--weight-semibold);
  padding-block: var(--space-1) var(--space-2);
}
.deal-side .field--person .field-value { align-items: center; display: flex; gap: var(--space-2); }
.deal-side .field--person .field-avatar { float: none; margin: 0; }
.deal-side .field-inline-form select {
  max-width: 100%;
  min-height: max(28px, var(--tap-min));
  padding-block: 2px;
}
.deal-side .field-value > .hx-value,
.deal-side .phone-number > .hx-value,
.deal-side .deal-title.hx-value {
  border: 0;
  display: inline;
  font-size: inherit;
  margin: 0;
  min-height: 0;
  padding: 0;
}
.deal-side .phone-number > .hx-value[hidden] { display: none; }
.deal-side .hx-value { cursor: text; }
.deal-side .field-value > .hx-value:hover,
.deal-side .phone-number > .hx-value:hover,
.deal-side .deal-title.hx-value:hover { background: var(--color-surface-sunken); box-shadow: 0 0 0 3px var(--color-surface-sunken); }
.deal-side .phone-row { align-items: center; }
.phone-number > .ui-menu > summary {
  --ui-btn-fg: var(--color-text);
  font: inherit;
  gap: 2px;
  margin-left: -6px;
  padding-inline: 6px;
}
.deal-adds {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1) var(--space-2);
  padding-block: var(--space-1);
}
.deal-add {
  align-items: center;
  background: none;
  border: 1px dashed var(--color-border-strong);
  border-radius: var(--radius-pill);
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--text-sm);
  gap: var(--space-1);
  min-height: max(28px, var(--tap-min));
  padding: 0 var(--space-3) 0 var(--space-2);
}
.deal-add:hover { border-color: var(--color-primary); color: var(--color-primary); }
.deal-add[hidden] + .hx-input { flex-basis: 100%; }
.deal-fold { border-top: 1px solid var(--color-border); }
.deal-fold--tasks:has(#card-tasks-number[data-count="0"]) { display: none; }
.deal-sec .deal-fold--quiet { border-top: 0; margin-inline: calc(-1 * var(--space-3)); }
.deal-fold-summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  gap: var(--space-2);
  list-style: none;
  min-height: max(36px, var(--tap-min));
  padding: 0 var(--space-3);
}
.deal-fold-summary::-webkit-details-marker { display: none; }
.deal-fold-summary:hover { background: var(--color-surface-sunken); }
.deal-fold--quiet > .deal-fold-summary { color: var(--color-muted); font-weight: var(--weight-medium); }
.deal-fold[open] > .deal-fold-summary .disclosure-caret { transform: rotate(90deg); }
.deal-fold-summary .disclosure-caret { transition: transform var(--duration-card) var(--ease-card-in); }
.deal-block { border-top: 1px solid var(--color-border); position: relative; }
.deal-block > .deal-fold { border-top: 0; }
.deal-block > :is(.deal-fold > .deal-fold-summary, .deal-fold-summary) { padding-inline-end: calc(var(--space-3) + 6rem); }
.deal-fold-summary--static { cursor: default; }
.deal-fold-summary--static:hover { background: none; }
.deal-block-add {
  position: absolute;
  right: var(--space-2);
  top: calc((max(36px, var(--tap-min)) - var(--control-h-sm, 28px)) / 2);
}
.deal-fold-body {
  list-style: none;
  margin: 0;
  padding: 0 var(--space-3) var(--space-3);
}
.deal-actions {
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
  padding: var(--space-2) var(--space-2) var(--space-3);
}
.deal-stage .chat-head-stage-summary {
  border: 0;
  padding-inline: 0;
  width: 100%;
}
.deal-stage .chat-head-stage-summary:hover { background: var(--color-surface-sunken); }
.deal-stage .chat-head-stage-name { color: var(--color-text); max-width: none; }
.deal-stage .chat-head-stage-age,
.deal-stage .chat-head-stage-caret { color: var(--color-muted); }
.deal-lost-reason {
  color: var(--color-muted);
  display: block;
  font-size: var(--text-xs);
  margin: 0;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chat-head-stage-line:has(.deal-lost-reason) .chat-head-stage-name { flex-shrink: 0; }
.chat-head-stage-line .deal-lost-reason::before,
.deal-side-peek-stage .deal-lost-reason::before { content: "· "; }
td .deal-lost-reason { font-size: inherit; }
.deal-stage .chat-head-stage-summary { gap: var(--space-2); }
.deal-stage .chat-head-stage-line {
  min-height: var(--control-h-lg);
  padding-inline: var(--space-3);
  width: 100%;
}
.deal-stage .chat-head-stage-name { font-size: var(--text-md); }
.deal-stage .chat-head-stage-age { font-size: var(--text-xs); }
.chat-head-stage-step {
  color: var(--stage-ink, var(--color-muted));
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.deal-stage .chat-head-stage-step,
.deal-stage .chat-head-stage-caret { margin-left: auto; }
.deal-stage .chat-head-stage-step + .chat-head-stage-caret { margin-left: 0; }
.deal-stage .chat-head-funnel { align-items: center; min-height: var(--space-3); width: 100%; }
.deal-stage .chat-head-funnel-seg {
  background: var(--color-border);
  block-size: var(--space-2);
  flex: 1 1 0;
  inline-size: auto;
  opacity: 1;
}
.deal-stage .chat-head-funnel-seg:is(.is-done, .is-current) {
  background: var(--stage-fill, var(--color-muted));
  box-shadow: inset 0 0 0 1px var(--stage-color, var(--color-muted));
}
.deal-stage .chat-head-funnel-seg.is-current { block-size: var(--space-3); flex-grow: 1.6; }
.deal-stage.filter-pop > .filter-pop-body { left: 0; right: auto; }
.inbox-card-caption {
  color: var(--color-muted);
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
}
.inbox-card .inbox-card-head { padding: var(--space-2) var(--space-3); }
.inbox-card .deal-side .deal-head { padding-bottom: var(--space-3); }
.chat-head--inbox .chat-head-sub,
.chat-head--inbox .chat-head-card-caret { display: none; }
@media (max-width: 768px) {
  .inbox-workspace { --inbox-head-h: 56px; }
.chat-head.chat-head--inbox {
    height: var(--inbox-head-h);
    position: relative;
  }
.chat-head--inbox .chat-head-left { display: contents; }
  .chat-head--inbox .chat-head-avatar { order: 1; }
  .chat-head--inbox .chat-head-who { gap: 1px; order: 2; }
  .chat-head--inbox .chat-head-right { flex: 0 0 auto; margin-left: auto; order: 3; }
  .chat-head--inbox .chat-head-take { order: 3; position: relative; }
  .chat-head--inbox .chat-head-card-toggle { order: 4; }
.chat-head--inbox .chat-head-sub { display: flex; min-width: 0; }
.chat-head--inbox .chat-head-name .panel-title { min-height: 0; pointer-events: none; }
.chat-head--inbox .chat-head-call { display: none; }
.chat-head--inbox .chat-head-card-icon { display: none; }
  .chat-head--inbox .chat-head-card-caret {
    display: inline-flex;
    transition: transform var(--duration-card) var(--ease-card-in);
  }
  .chat-head--inbox .chat-head-card-toggle,
  .chat-head--inbox .chat-head-card-toggle.is-open,
  .chat-head--inbox .chat-head-card-toggle:hover { background: none; color: var(--color-sidebar-muted); }
  .chat-head--inbox .chat-head-card-toggle.is-open { border-color: transparent; }
  .chat-head--inbox .chat-head-card-toggle::after { content: ""; inset: 0; position: absolute; }
  .chat-head--inbox .chat-head-card-toggle.is-open .chat-head-card-caret { transform: rotate(180deg); }
.chat-head--inbox .chat-head-card-toggle:focus-visible { outline: none; }
  .chat-head--inbox .chat-head-card-toggle:focus-visible::after {
    outline: 2px solid var(--color-primary);
    outline-offset: -2px;
  }
.inbox-workspace .inbox-card-slot { top: var(--inbox-head-h); }
  .inbox-card {
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-md);
    inset: 0 0 auto 0;
    max-height: 70%;
    transform: translateY(-100%);
  }
  .inbox-card[data-open] { transform: none; }
.inbox-card .inbox-card-head { display: none; }
}
body:has(.deal-page) .app-shell { height: 100dvh; }
body:has(.deal-page) .main-area { min-height: 0; }
body:has(.deal-page) .topbar { display: none; }
.content:has(> .deal-page) {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  height: 100%;
  min-height: 0;
  padding: var(--space-3);
}
.deal-page {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: var(--deal-col-w, 340px) 12px minmax(0, 1fr);
  min-height: 0;
}
.deal-side--page {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  min-height: 0;
  overflow-y: auto;
  scrollbar-color: var(--color-border) transparent;
  scrollbar-width: thin;
}
.deal-side--page .deal-head { padding-top: var(--space-4); }
.deal-side--page .deal-title { font-size: var(--text-md); }
.deal-side--page .deal-head {
  background: color-mix(in srgb, var(--stage-color, var(--color-surface)) 12%, var(--color-surface));
}
.deal-side-peek {
  background: color-mix(in srgb, var(--stage-color, var(--color-surface)) 12%, var(--color-surface));
  display: none;
}
.deal-resizer {
  cursor: col-resize;
  position: relative;
  touch-action: none;
}
.deal-resizer::after {
  background: transparent;
  border-radius: 2px;
  content: "";
  inset: var(--space-4) 5px;
  position: absolute;
  transition: background 120ms ease-out;
}
.deal-resizer:hover::after,
.deal-resizer:focus-visible::after,
.deal-page.is-resizing .deal-resizer::after { background: var(--color-primary); }
.deal-resizer:focus-visible { outline: none; }
.deal-page.is-resizing { cursor: col-resize; user-select: none; }
.deal-feed { min-height: 0; }
@media (max-width: 1024px) {
  .deal-page { grid-template-columns: minmax(260px, 36%) 12px minmax(0, 1fr); }
}
@media (max-width: 768px) {
  .deal-page { display: flex; flex-direction: column; gap: var(--space-2); min-height: 0; }
  .deal-resizer { display: none; }
  .deal-side--page { flex: 0 0 auto; overflow: visible; }
.deal-page:has(.deal-side--page[open]) { overflow-y: auto; overscroll-behavior: contain; }
  .deal-page:has(.deal-side--page[open]) .deal-feed { flex: 0 0 auto; min-height: 70dvh; }
.deal-side-peek {
    align-items: center;
    cursor: pointer;
    display: grid;
    gap: 2px var(--space-3);
    grid-template-columns: minmax(0, 1fr) auto auto;
    list-style: none;
    min-height: 56px;
    padding: var(--space-2) var(--space-3);
  }
  .deal-side-peek-name { grid-column: 1 / 3; }
  .deal-side-peek-take { grid-column: 2; grid-row: 1; }
  .deal-side-peek:has(.deal-side-peek-take) .deal-side-peek-name { grid-column: 1; }
  .deal-side--page[open] .deal-side-peek-take { display: none; }
  .deal-side-peek-caret { grid-column: 3; grid-row: 1 / 3; }
  .deal-side-peek::-webkit-details-marker { display: none; }
  .deal-side-peek-name {
    font-weight: var(--weight-semibold);
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .deal-side-peek-stage {
    align-items: center;
    background: var(--stage-fill, none);
    border-radius: var(--radius-control);
    color: var(--stage-ink, var(--color-muted));
    display: inline-flex;
    flex: 0 1 auto;
    font-size: var(--text-base);
    font-weight: var(--weight-semibold);
    gap: var(--space-1);
    max-width: 55vw;
    min-width: 0;
    padding: var(--space-05) var(--space-2);
  }
.deal-side-peek-stage .stage-dot { display: none; }
  .deal-side-peek-phone { color: var(--color-muted); font-size: var(--text-sm); white-space: nowrap; }
  .deal-side-peek-caret { color: var(--color-muted); justify-self: end; }
.deal-side-peek-dup { color: var(--color-primary); display: inline-flex; grid-column: 2; grid-row: 1; }
.deal-side-peek-dup[hidden] { display: none; }
  .deal-side-peek:has(.deal-side-peek-dup:not([hidden])) .deal-side-peek-name { grid-column: 1; }
  .deal-side--page[open] .deal-side-peek-dup { display: none; }
.deal-side--page .merge-plate { padding-right: max(36px, var(--tap-min)); }
.deal-side--page { position: relative; }
  .deal-side--page[open] .deal-side-peek {
    align-items: center;
    background: none;
    display: flex;
    justify-content: center;
    min-height: max(36px, var(--tap-min));
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: max(36px, var(--tap-min));
  }
  .deal-side--page[open] .deal-side-peek-name,
  .deal-side--page[open] .deal-side-peek-stage,
  .deal-side--page[open] .deal-side-peek-phone { display: none; }
  .deal-side--page[open] .deal-title { padding-right: max(24px, var(--tap-min)); }
  .deal-side[open] .deal-side-peek-caret { transform: rotate(180deg); }
.deal-side--page .deal-head { gap: var(--space-1); padding-block: var(--space-3) var(--space-2); }
  .deal-side--page .deal-stage .chat-head-stage-summary { min-height: 0; padding-block: 0; }
.deal-feed { flex: 1 1 auto; min-height: 0; order: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .deal-resizer::after,
  .deal-fold-summary .disclosure-caret { transition: none; }
}
.tl-convo-foot { gap: var(--space-1); }
.timeline-area--chat > :first-child { margin-block-start: 0; }
.timeline-area--chat { padding-block-start: var(--space-3); }
.ui-btn {
  --ui-btn-bg: var(--color-surface);
  --ui-btn-bg-hover: var(--color-neutral-bg);
  --ui-btn-fg: var(--color-text);
  --ui-btn-border: var(--color-border-strong);
  align-items: center;
  background: var(--ui-btn-bg);
  border: 1px solid var(--ui-btn-border);
  border-radius: var(--radius-control);
  color: var(--ui-btn-fg);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  gap: var(--space-2);
  justify-content: center;
  line-height: var(--leading-tight);
  min-height: max(var(--control-h-md), var(--tap-min));
  padding: 0 var(--space-3);
  text-decoration: none;
  touch-action: manipulation;
  transition: background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);
  white-space: nowrap;
}
.ui-btn:hover {
  background-color: var(--ui-btn-bg-hover);
  border-color: var(--ui-btn-border);
  color: var(--ui-btn-fg);
  text-decoration: none;
}
.ui-btn--primary {
  --ui-btn-bg: var(--color-primary);
  --ui-btn-bg-hover: var(--color-primary-hover);
  --ui-btn-fg: var(--color-on-primary);
  --ui-btn-border: var(--color-primary);
}
.ui-btn--danger {
  --ui-btn-bg-hover: var(--color-danger-bg);
  --ui-btn-fg: var(--color-danger-text);
  --ui-btn-border: var(--color-danger-border);
}
.ui-btn--invisible {
  --ui-btn-bg: transparent;
  --ui-btn-border: transparent;
  --ui-btn-fg: var(--color-muted);
}
.ui-btn--invisible:hover { color: var(--color-text); }
.ui-btn--soft,
.deal-bar .ui-menu:has(.ui-menu-body :is(input[type="checkbox"]:checked, input[type="radio"]:checked:not([value=""]))) > summary {
  --ui-btn-bg: var(--color-primary-soft);
  --ui-btn-bg-hover: var(--color-primary-soft);
  --ui-btn-fg: var(--color-info-text);
  --ui-btn-border: var(--color-info-border);
}
.ui-btn--success {
  --ui-btn-bg: var(--color-success-text);
  --ui-btn-bg-hover: color-mix(in srgb, var(--color-success-text) 86%, var(--color-text));
  --ui-btn-fg: var(--color-on-primary);
  --ui-btn-border: var(--color-success-text);
}
.ui-btn--go {
  --ui-btn-bg-hover: var(--color-primary-soft);
  --ui-btn-fg: var(--color-primary);
  --ui-btn-border: var(--color-primary);
}
.ui-btn.is-inactive {
  --ui-btn-bg: var(--color-surface);
  --ui-btn-bg-hover: var(--color-surface);
  --ui-btn-fg: var(--color-muted);
  --ui-btn-border: var(--color-border);
}
.ui-btn--sm {
  font-size: var(--text-xs);
  gap: var(--space-1);
  min-height: max(var(--control-h-sm), var(--tap-min));
  padding: 0 var(--space-2);
}
.ui-btn--icon {
  min-width: max(var(--control-h-md), var(--tap-min));
  padding: 0;
}
.ui-btn--icon.ui-btn--sm { min-width: max(var(--control-h-sm), var(--tap-min)); }
.ui-btn:is(:disabled, [aria-disabled="true"]),
.ui-btn:is(:disabled, [aria-disabled="true"]):hover {
  background-color: var(--ui-btn-bg);
  background-image: none;
  border-color: var(--ui-btn-border);
  color: var(--ui-btn-fg);
  cursor: not-allowed;
  opacity: var(--opacity-disabled);
}
.ui-btn:active {
  background-color: var(--ui-btn-bg-hover);
  background-image: linear-gradient(var(--state-active), var(--state-active));
}
.ui-label {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--radius-pill);
  display: inline-flex;
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
  gap: var(--space-1);
  line-height: 18px;
  padding: 0 var(--space-2);
  white-space: nowrap;
}
:where(.ui-label) {
  background: var(--color-neutral-bg);
  color: var(--color-neutral-text);
}
.ui-label--success { background: var(--color-success-bg); border-color: var(--color-success-border); color: var(--color-success-text); }
.ui-label--warning { background: var(--color-warning-bg); border-color: var(--color-warning-border); color: var(--color-warning-text); }
.ui-label--danger { background: var(--color-danger-bg); border-color: var(--color-danger-border); color: var(--color-danger-text); }
.ui-label--info { background: var(--color-info-bg); border-color: var(--color-info-border); color: var(--color-info-text); }
.ui-label--neutral { background: var(--color-neutral-bg); border-color: var(--color-neutral-border); color: var(--color-neutral-text); }
.ui-counter {
  background: var(--color-neutral-bg);
  border-radius: var(--radius-pill);
  color: var(--color-text);
  display: inline-block;
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
  font-variant-numeric: tabular-nums;
  line-height: 18px;
  min-width: 20px;
  padding: 0 6px;
  text-align: center;
}
.ui-counter--primary {
  background: var(--color-primary);
  color: var(--color-on-primary);
}
.ui-counter--danger { background: var(--color-danger-bg); color: var(--color-danger-text); }
.ui-counter--warning { background: var(--color-warning-bg); color: var(--color-warning-text); }
.ui-counter--success { background: var(--color-success-bg); color: var(--color-success-text); }
.ui-control {
  align-content: start;
  display: grid;
  gap: var(--space-1);
  min-width: 0;
}
.ui-control-label {
  color: var(--color-text);
  display: block;
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
}
.ui-control :is(input:not([type="checkbox"], [type="radio"]), select, textarea) {
  min-height: max(var(--control-h-md), var(--tap-min));
  width: 100%;
}
.ui-control-hint,
.ui-control-error {
  font-size: var(--text-xs);
  margin: 0;
}
.ui-control-hint { color: var(--color-muted); }
.ui-control-error {
  align-items: center;
  color: var(--color-danger-text);
  display: flex;
  gap: var(--space-1);
}
.ui-control--error :is(input, select, textarea) {
  background: color-mix(in srgb, var(--color-danger-bg) 55%, var(--color-surface));
  border-color: var(--color-danger-solid);
}
.ui-control--inline .ui-control-label {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  font-weight: var(--weight-normal);
  gap: var(--space-2);
  min-height: max(var(--control-h-sm), var(--tap-min));
}
.ui-hours {
  align-items: center;
  column-gap: var(--space-3);
  display: grid;
  grid-template-columns: max-content max-content;
  justify-content: start;
  row-gap: var(--space-1);
}
.ui-hours-range {
  align-items: center;
  display: inline-flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  white-space: nowrap;
}
.ui-hours-range input {
  min-height: max(var(--control-h-md), var(--tap-min));
  width: 5em;
}
.ui-hours-range label {
  color: inherit;
  display: inline;
  font-size: inherit;
  font-weight: inherit;
}
.ui-box {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-flat);
  min-width: 0;
}
.ui-box--raised { box-shadow: var(--elevation-raised); }
.ui-box-header,
.ui-box-footer {
  align-items: center;
  display: flex;
  gap: var(--space-2);
  justify-content: space-between;
min-height: max(var(--control-h-md), var(--tap-min));
  padding: var(--space-1) var(--panel-inset);
}
.ui-box-header { border-bottom: 1px solid var(--color-border); }
.ui-box-footer {
  border-top: 1px solid var(--color-border);
  justify-content: flex-end;
}
.ui-box-title {
  align-items: center;
  display: flex;
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  gap: var(--space-2);
  margin: 0;
}
.ui-box-title .icon { color: var(--color-faint); }
.ui-box-actions {
  display: flex;
  gap: var(--space-1);
}
.ui-box-body { padding: var(--panel-inset); }
.ui-box-row {
  border-top: 1px solid var(--color-border);
  padding: var(--panel-inset-y) var(--panel-inset);
}
.ui-box-header + .ui-box-row { border-top: 0; }
.ui-list {
  --ui-list-cols: auto minmax(0, 1fr) minmax(0, 2fr) auto;
}
.ui-list-body {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ui-list-head,
.ui-row {
  align-items: center;
  column-gap: var(--space-3);
  display: grid;
  grid-template-columns: var(--ui-list-cols);
  padding: 0 var(--panel-inset);
}
.ui-list-head {
  background: var(--color-surface-sunken);
  border-bottom: 1px solid var(--color-border);
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  min-height: var(--control-h-md);
}
.ui-row {
  border-bottom: 1px solid var(--color-border);
  font-size: var(--text-sm);
  min-height: var(--control-h-lg);
  padding-block: var(--space-1);
  position: relative;
}
.ui-row:last-child { border-bottom: 0; }
.ui-row:hover { background: var(--state-hover); }
.ui-row.is-current { background: var(--state-selected); }
.ui-row-lead {
  align-items: center;
  display: flex;
  gap: var(--space-2);
}
.ui-row-title,
.ui-row-sub,
.ui-row-end {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ui-row-title {
  color: var(--color-text);
  font-weight: var(--weight-semibold);
}
.ui-row-act {
  --ui-btn-bg-hover: transparent;
  --ui-btn-fg: var(--color-text);
  background: none;
  border: 0;
  cursor: pointer;
  display: block;
  font: inherit;
  font-weight: var(--weight-semibold);
  justify-self: start;
  max-width: 100%;
  min-height: 0;
  padding: 0;
  text-align: left;
}
a.ui-row-title:hover {
  color: var(--color-text);
  text-decoration: none;
}
.ui-row-sub { color: var(--color-muted); }
.ui-row-end {
  align-items: center;
  color: var(--color-muted);
  display: flex;
  font-size: var(--text-xs);
  gap: var(--space-2);
  justify-content: flex-end;
}
.ui-row-link::after {
  content: "";
  inset: 0;
  position: absolute;
}
.ui-row-link:focus-visible { outline: none; }
.ui-row:has(.ui-row-link:focus-visible) {
  outline: 3px solid color-mix(in srgb, var(--color-focus) 22%, transparent);
  outline-offset: -3px;
}
.ui-row :is(a, button, summary, input, label, details):not(.ui-row-link) {
  position: relative;
  z-index: var(--z-above);
}
@media (max-width: 720px) {
  .ui-list-head { display: none; }
.ui-row {
    column-gap: var(--space-2);
    grid-template-areas: "lead title end" "lead sub sub";
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding-block: var(--space-2);
    row-gap: var(--space-05);
  }
.ui-row-lead { grid-area: lead; }
  .ui-row-title { grid-area: title; }
  .ui-row-sub { font-size: var(--text-xs); grid-area: sub; }
  .ui-row-end { grid-area: end; }
}
.ui-list--stacked .ui-row {
  column-gap: var(--space-2);
  grid-template-areas: "lead title end" "lead sub sub";
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding-block: var(--space-1);
  row-gap: var(--space-05);
}
.ui-list--stacked .ui-row-lead { grid-area: lead; }
.ui-list--stacked .ui-row-title { grid-area: title; }
.ui-list--stacked .ui-row-sub { grid-area: sub; }
.ui-list--stacked .ui-row-end { grid-area: end; }
.ui-dialog {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  color: var(--color-text);
  max-height: calc(100dvh - 2 * var(--space-6));
  max-width: 640px;
  padding: 0;
  width: calc(100% - 2 * var(--space-4));
}
.ui-dialog[open] {
  animation: ui-dialog-in var(--duration-card) var(--ease-card-in);
  display: flex;
  flex-direction: column;
}
.ui-dialog::backdrop { background: color-mix(in srgb, var(--color-text) 45%, transparent); }
.ui-dialog[open]::backdrop { animation: ui-dialog-fade var(--duration-card) var(--ease-card-in); }
@keyframes ui-dialog-in {
  from { opacity: 0; transform: translateY(8px); }
}
@keyframes ui-dialog-fade {
  from { opacity: 0; }
}
.ui-dialog-header {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex: 0 0 auto;
  gap: var(--space-2);
  justify-content: space-between;
  padding: var(--space-2) var(--space-2) var(--space-2) var(--space-4);
}
.ui-dialog-title {
  font-size: var(--text-md);
  font-weight: var(--weight-semibold);
  margin: 0;
}
.ui-dialog-header form { margin: 0; }
.ui-dialog-body {
  flex: 1 1 auto;
  overscroll-behavior: contain;
  overflow-y: auto;
  padding: var(--space-4);
}
.ui-dialog-footer {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: flex-end;
  padding: 0 var(--space-4) var(--space-4);
}
.ui-dialog--confirm { max-width: 440px; }
.ui-dialog--confirm .ui-dialog-body { padding: var(--space-5) var(--space-5) var(--space-4); }
.ui-dialog--confirm .ui-dialog-footer { padding: 0 var(--space-5) var(--space-5); }
.ui-dialog--confirm .ui-dialog-footer > .ui-btn { flex: 1 1 0; }
.close-reason-form { display: grid; gap: var(--space-3); }
.close-reason-form textarea { width: 100%; resize: vertical; }
.close-reason-list { display: grid; gap: var(--space-2); }
.close-reason-list > .ui-btn,
.close-reason-other > summary { width: 100%; justify-content: flex-start; }
.close-reason-other > summary { list-style: none; }
.close-reason-other > summary::-webkit-details-marker { display: none; }
.close-reason-other[open] > summary { background: var(--color-neutral-bg); }
.close-reason-other > summary ~ :is(.ui-control, .ui-btn) { margin-top: var(--space-2); }
.close-reason-other > summary ~ .ui-btn { width: 100%; }
.close-reason-page { max-width: 440px; display: grid; gap: var(--space-3); }
.ui-dialog-text {
  font-size: var(--text-md);
  font-weight: var(--weight-medium);
  line-height: var(--leading-tight);
  margin: 0;
  overflow-wrap: anywhere;
}
.ui-dialog--full {
  height: 100dvh;
  margin-right: 0;
  max-height: 100dvh;
  max-width: 720px;
}
.ui-dialog--photo {
  background: color-mix(in srgb, var(--color-text) calc(100% * var(--pv-o, 1)), transparent);
  border: 0;
  border-radius: 0;
  color: var(--color-surface);
  height: 100dvh;
  max-height: 100dvh;
  max-width: none;
  overflow: hidden;
  width: 100%;
}
.ui-dialog--photo[open] { animation: ui-dialog-fade var(--duration-card) var(--ease-card-in); }
.ui-dialog--photo .ui-dialog-body { background: none; flex: 1 1 auto; min-height: 0; overflow: hidden; padding: 0; position: relative; }
.photo-viewer { inset: 0; outline: none; position: absolute; touch-action: none; user-select: none; }
.photo-viewer-img {
  display: block;
  height: 100%;
  object-fit: contain;
  transform: translate(var(--pv-x, 0), var(--pv-y, 0));
  transition: transform var(--duration-card) var(--ease-card-in), opacity var(--duration-card) var(--ease-card-in);
  width: 100%;
}
.photo-viewer.is-dragging .photo-viewer-img { transition: none; }
.photo-viewer.is-loading .photo-viewer-img { opacity: 0; }
.photo-viewer-wait {
  color: var(--color-surface);
  font-size: var(--text-sm);
  left: 50%;
  margin: 0;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
}
.photo-viewer-bar {
  align-items: center;
  background: color-mix(in srgb, var(--color-text) 55%, transparent);
  display: flex;
  gap: var(--space-1);
  left: 0;
  padding: max(var(--space-1), env(safe-area-inset-top)) var(--space-2) var(--space-1);
  position: absolute;
  right: 0;
  top: 0;
}
.photo-viewer-bar form { margin: 0; }
.photo-viewer-bar .ui-btn,
.photo-viewer-prev,
.photo-viewer-next { color: var(--color-surface); }
.photo-viewer-caption {
  flex: 1 1 auto;
  font-size: var(--text-sm);
  min-width: 0;
  overflow: hidden;
  padding-left: var(--space-2);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.photo-viewer-caption span { opacity: 0.7; }
.photo-viewer-pos {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  padding: 0 var(--space-2);
  white-space: nowrap;
}
.photo-viewer-prev,
.photo-viewer-next {
  background: color-mix(in srgb, var(--color-text) 55%, transparent);
  border-radius: var(--radius-pill);
  position: absolute;
  top: 50%;
  translate: 0 -50%;
}
.photo-viewer-prev { left: var(--space-3); }
.photo-viewer-next { right: var(--space-3); }
.photo-viewer-prev:disabled,
.photo-viewer-next:disabled { display: none; }
@media (hover: none) {
  .photo-viewer-prev,
  .photo-viewer-next { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .photo-viewer-img { transition: none; }
}
@media (max-width: 640px) {
  .ui-dialog:not(.ui-dialog--confirm) {
    border-radius: 0;
    height: 100dvh;
    max-height: 100dvh;
    max-width: none;
padding-bottom: env(safe-area-inset-bottom);
    width: 100%;
  }
}
.ui-tabs {
  border-bottom: 1px solid var(--color-border);
  display: flex;
  gap: var(--space-1);
  overflow-x: auto;
  scrollbar-width: none;
}
.ui-tabs-item {
  align-items: center;
  border-radius: var(--radius-control) var(--radius-control) 0 0;
  color: var(--color-muted);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: var(--text-sm);
  gap: var(--space-2);
  min-height: max(var(--control-h-lg), var(--tap-min));
  padding: 0 var(--space-2);
  position: relative;
  text-decoration: none;
  white-space: nowrap;
}
a.ui-tabs-item:hover {
  background: var(--state-hover);
  color: var(--color-text);
  text-decoration: none;
}
.ui-tabs-item[aria-current] {
  color: var(--color-text);
  font-weight: var(--weight-semibold);
}
.ui-tabs-item[aria-current]::after {
  background: var(--color-primary);
  border-radius: var(--radius-pill);
  bottom: 0;
  content: "";
  height: 2px;
  left: var(--space-2);
  position: absolute;
  right: var(--space-2);
}
.ui-segmented {
  align-items: center;
  background: var(--color-surface-sunken);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  display: inline-flex;
  flex: 0 0 auto;
  gap: var(--space-05);
  padding: var(--space-05);
}
.ui-segmented-item {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: var(--radius-sm);
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: var(--text-sm);
  gap: var(--space-1);
  justify-content: center;
  line-height: 1;
  min-height: max(26px, var(--tap-min));
  min-width: max(var(--control-h-sm), var(--tap-min));
  padding: 0 var(--space-2);
  text-decoration: none;
  transition: background-color var(--transition-fast), color var(--transition-fast);
}
a.ui-segmented-item:hover,
button.ui-segmented-item:hover {
  background: var(--state-hover);
  color: var(--color-text);
  text-decoration: none;
}
a.ui-segmented-item:active,
button.ui-segmented-item:active { background: var(--state-active); }
.ui-segmented-item:is([aria-current], [aria-pressed="true"]) {
  background: var(--color-surface);
  box-shadow: inset 0 0 0 1px var(--color-border);
  color: var(--color-text);
  font-weight: var(--weight-semibold);
}
label.ui-segmented-item:hover:not(:has(input:disabled)) { background: var(--state-hover); color: var(--color-text); }
.ui-segmented-item:has(input:checked) {
  background: var(--color-surface);
  box-shadow: inset 0 0 0 1px var(--color-border);
  color: var(--color-text);
  font-weight: var(--weight-semibold);
}
.ui-segmented-item:has(input:disabled) { cursor: not-allowed; opacity: 0.45; }
.ui-segmented-item:has(input:focus-visible) { outline: 2px solid var(--color-primary); outline-offset: 1px; }
.ui-segmented--icons .ui-segmented-item { padding: var(--space-1); }
.ui-menu {
  display: inline-block;
  position: relative;
}
.ui-menu > summary { list-style: none; }
.ui-menu > summary::-webkit-details-marker { display: none; }
.ui-menu-body {
  background: var(--color-surface-raised);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  display: grid;
  left: 0;
  max-height: min(60dvh, 420px);
  min-width: 200px;
  overflow-y: auto;
  padding: var(--space-1);
  position: absolute;
  top: calc(100% + var(--space-1));
  z-index: var(--z-dropdown);
}
.ui-menu--end .ui-menu-body {
  left: auto;
  right: 0;
}
[data-menu-fixed] > .ui-menu-body,
.filter-pop[data-menu-fixed] > .filter-pop-body {
font-family: var(--font-base);
  font-variant-numeric: normal;
  left: var(--pop-left, 0);
  max-height: var(--pop-max-h, min(60dvh, 420px));
  position: fixed;
  top: var(--pop-top, 0);
  width: max-content;
}
.ui-menu[data-menu-fixed]:not([data-menu-placed]) > .ui-menu-body,
.filter-pop[data-menu-fixed]:not([data-menu-placed]) > .filter-pop-body { visibility: hidden; }
.ui-menu:not([open]) > .ui-menu-body { display: none; }
.ui-menu-title {
  color: var(--color-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  margin: 0;
  padding: var(--space-1) var(--space-2);
}
.ui-menu-item {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: var(--radius-sm);
  color: var(--color-text);
  cursor: pointer;
  display: flex;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--weight-normal);
  gap: var(--space-2);
  justify-content: flex-start;
  min-height: max(var(--control-h-md), var(--tap-min));
  padding: 0 var(--space-2);
  position: relative;
  text-align: left;
  text-decoration: none;
  width: 100%;
}
.ui-menu-item:hover {
  background: var(--state-hover);
  color: var(--color-text);
  text-decoration: none;
}
.ui-menu-item .icon {
  color: var(--color-muted);
  flex: 0 0 auto;
}
.ui-menu-check { visibility: hidden; }
.ui-menu-item[aria-checked="true"] .ui-menu-check,
.ui-menu-item:has(input:checked) .ui-menu-check { visibility: visible; }
.ui-menu-item input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
}
.ui-menu-item--danger,
.ui-menu-item--danger:hover { color: var(--color-danger-text); }
.ui-menu-item--danger .icon { color: inherit; }
.ui-menu-item[aria-disabled="true"] { color: var(--color-muted); cursor: default; }
.ui-menu-item[aria-disabled="true"]:hover { background: transparent; color: var(--color-muted); }
.ui-menu-item[aria-disabled="true"] img { opacity: .55; }
.ui-menu-divider {
  border: 0;
  border-top: 1px solid var(--color-border);
  margin: var(--space-1) 0;
}
.ui-filterbar {
  display: grid;
  gap: var(--space-2);
grid-template-columns: minmax(0, 1fr);
}
.ui-filterbar-main {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.ui-filterbar-search {
  flex: 1 1 220px;
  margin: 0;
  max-width: var(--field-max);
  min-width: 0;
  position: relative;
}
.ui-filterbar-search .icon {
  color: var(--color-muted);
  left: var(--space-2);
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.ui-filterbar-search input {
  min-height: max(var(--control-h-md), var(--tap-min));
  padding-left: calc(var(--space-2) + var(--icon-md) + var(--space-2));
  text-overflow: ellipsis; 
  width: 100%;
}
.ui-filterbar-controls {
  align-items: center;
  display: flex;
  gap: var(--space-2);
}
.ui-filterbar-end {
  margin-left: auto;
  white-space: nowrap;
}
@media (min-width: 721px) {
  .ui-filterbar-controls:has(> .ui-filterbar-end) { flex-grow: 1; }
}
.ui-filterbar-chips {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
}
.ui-filterbar-chips--reserve { min-height: var(--control-h-sm); }
.ui-filterbar-chip {
  align-items: center;
  background: var(--color-primary-soft);
  border: 1px solid var(--color-info-border);
  border-radius: var(--radius-pill);
  color: var(--color-info-text);
  display: inline-flex;
  font-size: var(--text-xs);
  gap: var(--space-05);
  line-height: 18px;
  padding: 0 var(--space-05) 0 var(--space-2);
}
.ui-filterbar-chip a {
  align-items: center;
  border-radius: var(--radius-pill);
  color: inherit;
  display: inline-flex;
  justify-content: center;
  min-height: max(18px, var(--tap-min));
  min-width: max(18px, var(--tap-min));
}
.ui-filterbar-chip a:hover { background: var(--state-hover); }
@media (max-width: 720px) {
  .ui-filterbar-main { flex-wrap: nowrap; }
.ui-filterbar-search {
    flex: 1 0 45%;
    max-width: none;
  }
.ui-filterbar-controls {
    flex: 0 1 auto;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
  }
.ui-filterbar-end { margin-left: 0; }
}
.ui-filterpanel-menu .ui-menu-body { max-height: min(80vh, 40rem); overflow-y: auto; padding: 0; }
.ui-filterpanel {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  max-width: 94vw;
  width: max-content;
}
.ui-filterpanel--sets { grid-template-columns: 12rem minmax(0, 1fr); }
.ui-filterpanel-sets {
  align-content: start;
  background: var(--color-surface-sunken);
  border-right: 1px solid var(--color-border);
  display: grid;
  padding: var(--space-2);
}
.ui-filterpanel-sets .chip-check-hint { display: block; }
.ui-filterpanel-sets .ui-menu-item { padding-block: var(--space-1); }
.ui-filterpanel-fields {
  column-gap: var(--space-3);
  display: grid;
  grid-auto-columns: minmax(9.5rem, 1fr);
  grid-auto-flow: column;
  min-width: 0;
  padding: var(--space-3);
}
.ui-filterpanel-fields > * + * {
  border-left: 1px solid var(--color-border);
  padding-left: var(--space-3);
}
.ui-filterpanel-stack { display: grid; align-content: start; gap: var(--space-2); min-width: 0; }
.ui-filterpanel-col { border: 0; margin: 0; min-width: 0; padding: 0; }
.ui-filterpanel-stack > .ui-filterpanel-col + .ui-filterpanel-col {
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-2);
}
.ui-filterpanel-col--scroll { max-height: 26rem; overflow-y: auto; }
.ui-filterpanel-col legend {
  color: var(--color-text);
  float: left;
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  padding: 0 var(--space-2) var(--space-1);
  width: 100%;
}
.ui-filterpanel-col legend + * { clear: both; }
.ui-filterpanel .ui-menu-item[aria-checked="true"],
.ui-filterpanel .ui-menu-item:has(input:checked) { background: var(--state-selected); }
.ui-filterpanel .ui-menu-item .ui-menu-check { color: var(--color-primary); }
.ui-filterpanel .ui-menu-item:has(input:focus-visible) { box-shadow: var(--focus-ring); }
.ui-filterpanel .filter-dates { padding: var(--space-1) var(--space-2) 0; }
.ui-filterpanel-input,
.ui-filterpanel-range input { min-width: 0; width: 100%; }
.ui-filterpanel-range { display: grid; gap: var(--space-1); grid-template-columns: 1fr 1fr; }
.ui-filterpanel-foot {
  border-top: 1px solid var(--color-border);
  display: flex;
  grid-column: 1 / -1;
  justify-content: flex-end;
  padding: var(--space-2) var(--space-3);
}
@media (max-width: 720px) {
.ui-filterpanel-menu[open] > .ui-menu-body {
    border-radius: var(--radius-panel) var(--radius-panel) 0 0;
    bottom: 0 !important;
    left: 0 !important;
    max-height: min(82dvh, max(50dvh, calc(100dvh - var(--pop-top, 0px))));
    overflow-y: auto;
    position: fixed !important;
    right: 0 !important;
    top: auto !important;
    width: auto !important;
  }
.ui-filterpanel,
  .ui-filterpanel--sets { grid-template-columns: 1fr; max-width: none; width: auto; }
.ui-filterpanel-sets { border-bottom: 1px solid var(--color-border); border-right: 0; }
.ui-filterpanel-fields { gap: var(--space-2); grid-auto-flow: row; grid-template-columns: 1fr; }
.ui-filterpanel-fields > * + * {
    border-left: 0;
    border-top: 1px solid var(--color-border);
    padding-left: 0;
    padding-top: var(--space-2);
  }
.ui-filterpanel-col--scroll { max-height: none; }
.ui-filterpanel-foot {
    background: var(--color-surface);
    bottom: 0;
padding-bottom: calc(var(--space-2) + env(safe-area-inset-bottom));
    position: sticky;
  }
}
.ui-blank {
  align-items: center;
  color: var(--color-muted);
  display: grid;
  gap: var(--space-2);
  justify-items: center;
  padding: var(--space-7) var(--space-4);
  text-align: center;
}
.ui-blank > .icon {
  color: var(--color-faint);
  height: 24px;
  width: 24px;
}
.ui-blank-title {
  color: var(--color-text);
  font-size: var(--text-base);
  font-weight: var(--weight-semibold);
  margin: 0;
}
.ui-blank-text {
  font-size: var(--text-sm);
  margin: 0;
  max-width: 44ch;
}
.ui-blank--compact {
  gap: var(--space-1);
  padding: var(--space-4) var(--panel-inset);
}
.ui-blank--compact > .icon {
  height: var(--icon-md);
  width: var(--icon-md);
}
.ui-blank--compact .ui-blank-title { font-size: var(--text-sm); }
.ui-list--framed { margin-block: var(--space-1); }
.ui-list--framed .ui-row { border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.ad-thumb {
  background: var(--color-surface-sunken);
  border-radius: var(--radius-sm);
  display: block;
  height: 48px;
  object-fit: cover;
  width: 48px;
}
span.ad-thumb { align-items: center; color: var(--color-muted); display: flex; justify-content: center; }
.ad-row .ui-row-end { color: var(--color-text); font-weight: var(--weight-semibold); }
.deal-fold-body > .ui-list--framed { margin-inline: 0; }
.phone-number:has(> .hx-value) > details > summary { cursor: text; }
.phone-number:has(> .hx-value) > details > summary > svg:last-of-type { cursor: pointer; padding-left: 4px; box-sizing: content-box; }
.phone-number > details.ui-menu[hidden] { display: none; }
.tasks-top {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  margin-bottom: var(--space-2);
}
.tasks-filter { flex: 1 1 20rem; min-width: 0; }
.tasks-bar { margin: 0; }
.tasks-bar .ui-filterbar-search { max-width: none; }
.tasks-quick { margin-bottom: var(--space-2); }
.tasks-period { display: inline-flex; flex: 0 0 auto; }
.tasks-period > summary { cursor: pointer; }
.tasks-period[open] > summary { color: var(--color-text); }
@media (max-width: 720px) {
  .tasks-quick { gap: 0; }
  .tasks-quick .ui-tabs-item { padding: 0 var(--space-1); gap: var(--space-1); }
  .tasks-quick-more { display: none; }
  .tasks-period > summary > svg:last-child { display: none; }
  .tasks-period-label.is-idle {
    clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px;
  }
}
@media (max-width: 720px) {
  .tasks-bar .ui-filterbar-reset-text { display: none; }
.tasks-bar .ui-filterbar-search { flex: 1 1 5rem; }
}
.tasks-panel-dates { display: grid; gap: var(--space-1); padding: var(--space-1) var(--space-2); }
.tasks-panel-dates label { align-items: center; display: flex; gap: var(--space-2); }
.tasks-panel-dates input { flex: 1; min-width: 0; }
.tasks-panel-hint { color: var(--color-muted); font-size: var(--text-xs); margin: var(--space-1) var(--space-2) 0; }
.tasks-period-form .tasks-panel-foot { display: flex; justify-content: flex-end; }
.tasks-head {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  gap: var(--space-2);
  min-height: 44px;
  padding-inline: var(--space-3);
}
.tasks-total { color: var(--color-muted); font-size: var(--text-sm); }
.tasks-bulk {
  align-items: center;
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  gap: var(--space-2);
}
@media (min-width: 769px) {
  .tasks-head:has(.tasks-bulk:not([hidden])) {
    background: var(--color-primary-soft);
    border-bottom-color: var(--color-primary);
  }
}
.tasks-bulk[hidden] { display: none; }
.tasks-head:has(.tasks-bulk:not([hidden])) .tasks-total { display: none; }
.tasks-bulk-day { cursor: default; justify-content: space-between; }
.task-list { list-style: none; margin: 0; padding: 0; }
.task-row {
  align-items: center;
  column-gap: var(--space-3);
  display: grid;
  grid-template-columns: 28px 10.5rem 11rem minmax(0, 1.2fr) minmax(0, 1.6fr) 10.5rem;
  min-height: max(var(--table-row-height), var(--tap-min));
  padding: var(--space-1) var(--space-3);
}
.task-row + .task-row { border-top: 1px solid var(--color-border); }
.task-row.is-open { cursor: pointer; }
.task-row:hover { background: var(--color-surface-sunken); }
.task-row:focus-visible { outline: 2px solid var(--color-focus); outline-offset: -2px; }
.task-pick { align-items: center; display: flex; width: 28px; }
.task-pick input { cursor: pointer; height: 16px; margin: 0; width: 16px; }
.task-due {
  color: var(--color-muted);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.task-due.is-overdue { color: var(--color-danger-text); font-weight: var(--weight-semibold); }
.task-type {
  align-items: center;
  display: inline-flex;
  gap: var(--space-1);
  min-width: 0;
}
.task-type-name, .task-deal, .task-text, .task-who {
  font-size: var(--text-sm);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.task-deal { color: var(--color-text); font-weight: var(--weight-semibold); text-decoration: none; }
.task-deal:hover { text-decoration: underline; }
.task-text, .task-who { color: var(--color-muted); }
.title-edit-input {
  background: var(--color-surface);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-input);
  color: var(--color-text);
  flex: 1 1 0;
  font: inherit;
  height: var(--control-h-sm);
  min-width: 0;
  padding: 0 var(--space-2);
  width: 100%;
}
.title-edit-input:focus-visible { outline: 2px solid var(--color-focus); outline-offset: 0; }
[data-title-edit-open][hidden], .title-edit-input[hidden], .title-edit-save[hidden] { display: none !important; }
.inbox-pinned-task > .title-edit-input { flex: 1 1 0; width: auto; }
.inbox-pinned-task > .title-edit-input,
.inbox-pinned-task > .title-edit-save { order: 5; }
.inbox-pinned-task > .title-edit-error { flex: 1 0 100%; order: 6; }
@media (max-width: 720px) {
  .inbox-pinned-task > .title-edit-input { flex: 1 1 calc(100% - 4.5rem); min-width: 0; }
  .inbox-pinned-task > .title-edit-save { min-width: 0; }
  .inbox-pinned-task > .title-edit-save { flex: 0 0 auto; }
}
.title-edit-error { color: var(--color-danger-text); font-size: var(--text-sm); }
.title-edit-error:empty { display: none; }
.task-text .title-edit-open {
  color: inherit; cursor: text; display: block; font: inherit; height: auto; max-width: 100%;
  min-height: 0; min-width: 0; overflow: hidden; padding: 0; text-align: left; text-overflow: ellipsis; white-space: nowrap;
}
.task-text:has(.title-edit-input:not([hidden])) { align-items: center; display: flex; gap: var(--space-1); overflow: visible; }
.task-text .title-edit-error { flex-basis: 100%; }
.task-row.has-type-color {
  background: color-mix(in srgb, var(--type-color, var(--color-muted)) 8%, var(--color-surface));
  background: oklch(from var(--type-color, var(--color-muted)) 0.97 min(c, 0.014) h);
}
.task-row.has-type-color:hover {
  background: color-mix(in srgb, var(--type-color, var(--color-muted)) 13%, var(--color-surface));
  background: oklch(from var(--type-color, var(--color-muted)) 0.955 min(c, 0.021) h);
}
.task-row.has-type-color .task-type .icon { color: var(--type-color, var(--color-muted)); }
.task-row.has-type-color .task-type-name { color: var(--type-ink); font-weight: var(--weight-medium); }
.task-dialog-facts { display: grid; gap: var(--space-1); margin: 0 0 var(--space-3); }
.task-dialog-facts > div { display: flex; gap: var(--space-3); }
.task-dialog-facts dt { color: var(--color-muted); flex: 0 0 5.5rem; font-size: var(--text-sm); }
.task-dialog-facts dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.task-dialog-facts dd.is-overdue { color: var(--color-danger-text); }
.task-dialog .inbox-pinned-task-move { margin-bottom: var(--space-3); }
@media (max-width: 480px) {
  #task-guard-dialog .inbox-pinned-task-label {
    clip-path: none;
    height: auto;
    overflow: visible;
    position: static;
    white-space: normal;
    width: auto;
  }
}
.task-dialog [data-next-body]:not([hidden]) { display: grid; gap: var(--space-2); }
@media (max-width: 720px) {
  .ui-btn.bulk-select-toggle { display: inline-flex; }
.tasks-bulk { flex-wrap: nowrap; }
.tasks-bulk .ui-btn { justify-content: center; min-width: var(--tap-min); }
.tasks-bulk .ui-btn > span,
  .bulk-bar .ui-btn > span {
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
.tasks-head .task-pick,
  .task-row .task-pick { display: none; }
.tasks-list-form.is-selecting .tasks-head .task-pick,
  .tasks-list-form.is-selecting .task-row .task-pick { display: flex; }
.task-row {
    column-gap: var(--space-2);
    grid-template-areas: "pick deal deal due" "pick type text who";
grid-template-columns: auto 5.75rem minmax(0, 1fr) 7rem;
    row-gap: 0;
  }
.task-pick { grid-area: pick; width: 28px; }
  .task-pick input { height: 20px; width: 20px; }
  .task-deal { grid-area: deal; }
  .task-due { grid-area: due; text-align: right; }
.task-due .when-day { min-width: 0; }
  .task-type { grid-area: type; }
  .task-text { grid-area: text; }
.task-row:has(.title-edit-input:not([hidden])) .task-text { grid-area: 2 / 2 / 3 / 5; }
  .task-row:has(.title-edit-input:not([hidden])) :is(.task-type, .task-who) { visibility: hidden; }
  .task-who { grid-area: who; justify-self: end; max-width: 100%; text-align: right; }
.task-who.has-setter { align-items: flex-end; display: flex; flex-direction: column; line-height: var(--leading-tight); }
  .task-who .task-setter { font-size: var(--text-xs); max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
  .task-setter-sep { display: none; }
.ui-dialog.task-dialog,
  .ui-dialog.bulk-dialog {
    border-radius: var(--radius-panel) var(--radius-panel) 0 0;
    height: fit-content;
    margin: auto 0 0;
    max-height: 82dvh;
    width: 100%;
  }
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-attach-menu {
  left: 0;
  margin-left: auto;
  max-width: 340px;
  right: 0;
  width: auto;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-channels .menu-drop { position: static; }
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-channels .menu-drop-body {
  left: 0;
  margin-right: auto;
  max-width: 100%;
  min-width: 0;
  right: 0;
  width: max-content;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-channels .tl-channel {
  min-width: 0;
  overflow: hidden;
}
:is(.inbox-pane, .deal-feed, .calc-chat) .tl-channels .tl-channel :is(.conv-ad, .conv-no) {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tl-assistant-status {
  color: var(--color-muted);
  flex: 1 1 100%;
  font-size: var(--text-sm);
  margin: 0;
}
.tl-assistant-status:empty { display: none; }
.tl-assistant-wait {
  align-items: center;
  display: inline-flex;
  gap: var(--space-2);
}
.settle-foot-row th,
.settle-foot-row td {
  background: var(--color-surface-sunken); border-top: 1px solid var(--color-border);
  color: var(--color-text); font-size: var(--text-sm); font-weight: var(--weight-semibold);
  height: 32px; padding: 0 var(--space-3); text-align: left;
}
.settle-foot-row td.settle-num { text-align: right; }
.settle-foot-row th span { color: var(--color-muted); font-weight: var(--weight-normal); }
.panel, .order-debt-line, #orders-result > .ui-tabs { border-color: var(--color-border-window); }
.panel:not(.panel--bare) > .panel-head:not(.panel-head--feed) {
  background: var(--window-head-bg);
  border-bottom-color: var(--color-border-window);
  border-radius: calc(var(--radius-panel) - 1px) calc(var(--radius-panel) - 1px) 0 0;
}
.panel > .panel-head:not(.panel-head--feed) .panel-title { font-size: var(--text-base); }
.panel :is(label, fieldset, .m-label) > .field-caption { color: var(--caption-color); }
.panel legend.field-caption {
  color: var(--color-text);
  font-size: var(--section-size);
  font-weight: var(--weight-semibold);
}
.panel-body > :has(+ fieldset) {
  border-bottom: 1px solid var(--color-border);
  padding-bottom: var(--space-3);
}
.panel-body > fieldset + :not(fieldset) {
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-3);
}
.m-row--total {
  background: var(--window-head-bg);
  border-block: 1px solid var(--color-border-window);
}
.m-body > .m-row--total:first-child { border-top: 0; margin-top: calc(-1 * var(--space-3)); }
label.m-label { color: var(--color-text); }
.order-composition-desc td { padding-block: var(--space-2) var(--space-3); white-space: normal; }
.order-comp-title,
.order-comp-line,
.order-comp-item,
.order-comp-group { margin: 0; }
.order-comp-title { font-size: var(--text-md); font-weight: var(--weight-semibold); padding-bottom: var(--space-1); }
.order-comp-group {
  border-top: 1px solid var(--color-border);
  color: var(--color-text);
  font-size: var(--section-size);
  font-weight: var(--weight-semibold);
  margin-top: var(--space-3);
  padding-top: var(--space-2);
}
.order-comp-title + .order-comp-group { border-top: 0; margin-top: var(--space-2); padding-top: 0; }
.order-comp-item { padding: 1px 0 1px var(--space-5); position: relative; }
.order-comp-item::before { color: var(--color-muted); content: "–"; left: var(--space-1); position: absolute; }
.order-comp-line { padding: 1px 0; }
#order-composition-calc-rows td { border-top: 0; color: var(--color-muted); }
#order-composition-calc-rows tr:first-child td { border-top: 1px solid var(--color-border-window); }
#order-composition-calc-rows td.r { color: var(--color-text); font-family: var(--font-mono); }
.m-body > .m-row--total { padding-block: var(--space-2); }
.order-where-grid dt { color: var(--label-color); font-size: var(--label-size); font-weight: var(--label-weight); }
.order-where-grid dd { color: var(--color-text); }
.form-grid > label { align-content: start; }
.m-body > .m-row--total { padding-block: var(--space-3); }
.panel--collapsible:not([open]) > .panel-head { border-bottom-color: transparent; border-radius: var(--radius-panel); }
.info-panel > h2:first-child {
  background: var(--window-head-bg);
  border-bottom: 1px solid var(--color-border-window);
  border-radius: calc(var(--radius-panel) - 1px) calc(var(--radius-panel) - 1px) 0 0;
  font-size: var(--text-base);
  font-weight: var(--weight-semibold);
  margin: calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-3);
  padding: var(--space-2) var(--space-4);
}
.info-panel, .summary-panel, .quote-offer-card { border-color: var(--color-border-window); }
.quote-rail-heading {
  color: var(--color-text);
  font-size: var(--section-size);
  font-weight: var(--weight-semibold);
}
.when-day { display: inline-block; min-width: 10ch; }
.when-day, .when-time { font-variant-numeric: tabular-nums; white-space: nowrap; }
.panel-head .when-time { color: var(--color-muted); font-size: var(--text-sm); }
.panel-header {
  align-items: center;
  background: var(--window-head-bg);
  border-bottom-color: var(--color-border-window);
  border-radius: calc(var(--radius-panel) - 1px) calc(var(--radius-panel) - 1px) 0 0;
  padding: var(--space-2) var(--space-4);
}
.panel-header h2 { font-size: var(--text-base); font-weight: var(--weight-semibold); margin: 0; }
.panel-header p { font-size: var(--text-sm); margin: 0; }
:where(.panel-body > fieldset) { border: 0; display: grid; gap: var(--space-2); margin: 0; min-width: 0; padding: 0; }
:where(.panel-body > fieldset) > legend { margin-bottom: var(--space-2); padding: 0; }
.panel-body > fieldset > legend,
.panel .merge-field > legend {
  color: var(--color-text);
  font-size: var(--section-size);
  font-weight: var(--weight-semibold);
}
.settle-grid { font-size: var(--text-sm); table-layout: fixed; width: 100%; }
.settle-grid :is(th, td) { padding-inline: var(--space-3); }
.settle-grid th { height: 26px; overflow: hidden; padding-block: 2px; text-overflow: ellipsis; white-space: nowrap; }
.settle-grid td { padding-block: var(--space-1); vertical-align: middle; }
.settle-grid .settle-client .muted { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.settle-table--owes.settle-grid th.settle-num,
.settle-table--owes.settle-grid td.settle-num { width: calc(48% / var(--settle-n, 3)); }
.settle-grid .settle-grid-act { text-align: right; width: 12%; }
.settle-totals { display: grid; grid-template-columns: minmax(0, 1fr) repeat(var(--settle-n, 3), calc(48% / var(--settle-n, 3))); }
.settle-totals-left { align-content: start; display: grid; gap: var(--space-1); padding-right: var(--space-4); }
.settle-totals .settle-total { padding-inline: var(--space-3); text-align: right; }
.settle-status { color: var(--color-text); font-size: var(--text-sm); margin: 0; }
.settle-note { color: var(--color-muted); font-size: var(--text-xs); margin: 0; text-wrap: pretty; }
.settle-note .muted { display: inline; }
.settle-late { color: var(--color-warning-text); margin-right: var(--space-1); }
.settle-late .icon { vertical-align: -2px; }
.settle-block .field + .field { border-top: 0; margin-top: 0; padding-top: 0; }
.settle-end { align-items: center; display: flex; gap: var(--space-2); margin-left: auto; }
.settle-d { color: var(--color-muted); display: inline-block; font-variant-numeric: tabular-nums; width: 3.6em; }
.settle-cancel { align-items: center; color: var(--color-muted); display: inline-flex; font-size: var(--text-xs); margin-block: calc(-1 * var(--space-1)); margin-left: var(--space-2); min-height: max(24px, var(--tap-min)); }
.settle-row-act { align-items: center; display: flex; gap: var(--space-3); justify-content: space-between; }
.settle-bar { align-items: flex-end; display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-4); }
.settle-bar .field { flex: 0 0 170px; }
.settle-preview { display: grid; gap: var(--space-2); }
.settle-preview .hint-note { margin: 0; }
.settle-legend { align-items: center; color: var(--color-muted); display: flex; flex-wrap: wrap; font-size: var(--text-xs); gap: var(--space-1) var(--space-4); margin: 0; }
.settle-sw { border-radius: var(--radius-sm); display: inline-block; height: 8px; margin-right: var(--space-1); width: 14px; }
.settle-sw--earned { background: color-mix(in srgb, var(--color-primary) 35%, transparent); }
.settle-sw--received { background: var(--color-primary); }
.settle-sw--fresh { background: var(--color-border-strong); }
.settle-request-title { font-size: var(--text-xl); font-weight: var(--weight-semibold); line-height: 1.25; margin: 0; text-wrap: balance; }
.settle-totals .settle-total--final { background: var(--color-surface-sunken); border-radius: var(--radius-md); padding-block: var(--space-2); }
.settle-total--final dt { color: var(--color-text); font-weight: var(--weight-semibold); }
.settle-total--final .m-digits { font-size: var(--text-xl); font-weight: var(--weight-bold); }
.settle-request-title span { white-space: nowrap; }
.settle-month-label { font-size: var(--text-sm); font-weight: var(--weight-semibold); min-width: 9.5em; text-align: center; }
@media (max-width: 720px) {
  .settle-totals .settle-total--final { padding: var(--space-3); }
  .settle-table.settle-grid.settle-grid--cards .settle-foot-row--request td[data-label] { display: none; }
}
.settle-sw--short { background: var(--color-warning-text); }
.settle-sw--long { background: var(--color-danger-text); }
.settle-bar-row { align-items: center; display: grid; gap: var(--space-3); grid-template-columns: 6.5em minmax(0, 1fr); }
.settle-bars { display: grid; gap: 3px; min-width: 0; }
.settle-bars i, .settle-stack i { border-radius: var(--radius-sm); display: block; min-width: 0; }
.settle-bars i { height: 8px; }
.settle-stack { display: flex; gap: 1px; height: 12px; min-width: 0; }
.settle-stack i { height: 100%; }
@media (max-width: 720px) {
  .settle-totals { gap: var(--space-3); grid-template-columns: minmax(0, 1fr); }
  .settle-totals .settle-total { column-gap: var(--space-3); display: grid; grid-template-areas: "dt dd" "cap dd"; grid-template-columns: minmax(0, 1fr) auto; padding-inline: 0; text-align: left; }
  .settle-totals .settle-total dt { grid-area: dt; }
  .settle-totals .settle-total .settle-sum { grid-area: dd; text-align: right; }
  .settle-totals .settle-total .settle-note { grid-area: cap; }
  .settle-totals .settle-total:empty { display: none; }
  .settle-table--owes.settle-grid th.settle-num,
  .settle-table--owes.settle-grid td.settle-num { width: 22%; }
  .settle-bar-row { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 720px) {
  .settle-table.settle-grid.settle-grid--cards,
  .settle-grid--cards :is(tbody, tfoot) { display: block; min-width: 0; }
  .settle-grid--cards thead { block-size: 1px; clip-path: inset(50%); inline-size: 1px; overflow: hidden; position: absolute; }
  .settle-block-head > .settle-note { flex-basis: 100%; }
.settle-table.settle-grid.settle-grid--cards :is(.lead-title, .settle-num) > .muted { display: inline; }
  .settle-table.settle-grid.settle-grid--cards tr { align-items: baseline; border-bottom: 1px solid var(--color-border); column-gap: var(--space-3); display: grid; grid-template-columns: minmax(0, 1fr) auto; height: auto; padding-block: var(--space-2); row-gap: 2px; }
  .settle-grid--cards tbody tr:last-child:not(:has(+ tr)) { border-bottom: 0; }
  .settle-grid--cards tfoot tr { border-bottom: 0; border-top: 1px solid var(--color-border); }
  .settle-table.settle-grid.settle-grid--cards :is(td, th) { border: 0; display: block; height: auto; padding: 0; white-space: normal; width: auto; }
  .settle-table.settle-grid.settle-grid--cards .settle-client .muted { white-space: normal; }
  .settle-table.settle-grid.settle-grid--cards td.settle-num:nth-last-child(1 of .settle-num) { font-weight: var(--weight-semibold); grid-column: 2; grid-row: 1; white-space: nowrap; }
  .settle-table.settle-grid.settle-grid--cards td.settle-num:not(:nth-last-child(1 of .settle-num)) { color: var(--color-muted); font-size: var(--text-xs); grid-column: 1 / -1; white-space: nowrap; }
  .settle-table.settle-grid.settle-grid--cards td.settle-num:not(:nth-last-child(1 of .settle-num))::before { content: attr(data-label); float: left; font-family: var(--font-base); }
  .settle-table.settle-grid.settle-grid--cards td.settle-num:not(:nth-last-child(1 of .settle-num)):has(> .muted:only-child) { display: none; }
  .settle-table.settle-grid.settle-grid--cards .settle-grid-act { grid-column: 1 / -1; padding-top: var(--space-1); text-align: left; }
  .settle-table.settle-grid.settle-grid--cards .settle-grid-act:empty { display: none; }
}
.role-matrix { width: 100%; border-collapse: collapse; font-size: var(--text-sm, 0.875rem); }
.role-matrix th, .role-matrix td { padding: var(--space-1) var(--space-3); border-bottom: 1px solid var(--color-border); height: var(--table-row-height-2, 2.5rem); }
.role-matrix thead th { color: var(--color-muted); font-weight: 500; text-align: left; }
.role-matrix th[scope="row"] { font-weight: 600; white-space: nowrap; text-align: left; }
.role-matrix .muted { display: inline; }
.role-link { text-decoration: none; }
.role-matrix td, .role-matrix thead th:not(:first-child) { text-align: center; }
.role-matrix-select { min-width: 6.5rem; }
.role-matrix-select.is-none { color: var(--color-muted); }
.staff-tabs { margin-bottom: var(--space-3); }
.push-gate {
  align-items: center;
  background: var(--color-page);
  display: flex;
  inset: 0;
  justify-content: center;
  overflow-y: auto;
  padding: var(--space-6) var(--space-4) max(var(--space-6), env(safe-area-inset-bottom));
  position: fixed;
  z-index: calc(var(--z-modal) + 2);
}
.push-gate[hidden] { display: none; }
.push-gate__panel {
  background: var(--color-surface);
  border: 1px solid var(--color-border-window);
  border-radius: var(--radius-panel);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-width: var(--field-max);
  padding: var(--space-6);
  width: 100%;
}
.push-gate__icon {
  color: var(--color-primary);
  height: var(--space-7);
  width: var(--space-7);
}
.push-gate__title {
  font-size: var(--text-xl);
  font-weight: 600;
  margin: 0;
  text-wrap: balance;
}
.push-gate__lead {
  color: var(--color-text);
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  margin: 0;
  text-wrap: pretty;
}
.shift-gate__answers {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.shift-switch {
  background: var(--color-border-strong);
  border-radius: var(--radius-full);
  display: inline-block;
  flex: none;
  height: 1rem;
  position: relative;
  transition: background-color var(--duration-card);
  width: 1.75rem;
}
.shift-switch::after {
  background: var(--color-surface);
  border-radius: var(--radius-full);
  content: "";
  height: 0.75rem;
  left: 0.125rem;
  position: absolute;
  top: 0.125rem;
  transition: transform var(--duration-card);
  width: 0.75rem;
}
[aria-checked="true"] > .shift-switch { background: var(--color-success-solid); }
[aria-checked="true"] > .shift-switch::after { transform: translateX(0.75rem); }
.shift-block { display: contents; }
.sidebar-shift {
  display: block;
  margin-bottom: var(--space-3);
}
.sidebar-shift:not(:has(.shift-toggle, .shift-roster)) { display: none; }
.sidebar-shift .shift-block { display: block; }
.sidebar-shift :is(.ui-btn, .ui-label) {
  background: none;
  border: 0;
  border-radius: var(--radius-md);
  color: var(--color-sidebar-text);
  justify-content: flex-start;
  padding: var(--space-2) var(--space-3);
  width: 100%;
}
.sidebar-shift :is(.ui-btn, .ui-label):hover {
  background: var(--color-sidebar-hover);
  color: var(--color-on-primary);
}
@media (min-width: 981px) {
  .sidebar-shift .shift-roster {
    color: var(--color-sidebar-text);
    display: flex;
    flex-direction: column;
    font-size: var(--text-2xs);
    gap: var(--space-1);
    line-height: 1.2;
    padding: var(--space-2) var(--space-3);
  }
.shift-roster__head {
    align-items: center;
    color: var(--color-sidebar-muted);
    display: flex;
    font-weight: 500;
    gap: var(--space-1);
    white-space: nowrap;
  }
.shift-roster__list {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    list-style: none;
    margin: 0;
    padding: 0;
  }
.shift-roster__list li,
  .shift-roster__none {
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
.shift-roster__list li::before {
    background: var(--color-success-solid);
    border-radius: var(--radius-full);
    content: "";
    display: inline-block;
    height: 0.5em;
    margin-right: var(--space-1);
    width: 0.5em;
  }
.shift-roster__full { display: none; }
html[data-sidebar="wide"] .shift-roster__short { display: none; }
  html[data-sidebar="wide"] .shift-roster__full { display: inline; }
html:not([data-sidebar="wide"]) .sidebar-shift .shift-roster { align-items: center; padding: var(--space-2) 0; }
  html:not([data-sidebar="wide"]) .shift-roster__head { flex-direction: column; gap: 2px; }
  html:not([data-sidebar="wide"]) .shift-roster__list { align-items: stretch; width: 100%; }
  html:not([data-sidebar="wide"]) .shift-roster__list li,
  html:not([data-sidebar="wide"]) .shift-roster__none { max-width: 100%; padding: 0 2px; }
html:not([data-sidebar="wide"]) .sidebar-shift .shift-toggle .ui-btn {
    flex-direction: column;
    font-size: var(--text-2xs);
    font-weight: 500;
    gap: var(--space-1);
    justify-content: center;
    line-height: 1.1;
    padding: var(--space-2) 0;
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .shift-switch,
  .shift-switch::after { transition: none; }
}
.push-warning {
  align-items: flex-start;
  background: var(--color-warning-bg);
  border: 1px solid var(--color-warning-border);
  border-radius: var(--radius-panel);
  box-shadow: var(--elevation-overlay);
  color: var(--color-text);
  display: flex;
  font-size: var(--text-sm);
  gap: var(--space-2);
  inset: auto var(--space-4) var(--space-4) auto;
  line-height: var(--leading-normal);
  max-width: min(420px, calc(100vw - var(--space-6)));
  padding: var(--space-2) var(--panel-inset);
  position: fixed;
  z-index: var(--z-modal);
}
.push-warning[hidden] { display: none; }
.push-warning [hidden] { display: none; }
.push-warning__icon {
  color: var(--color-warning-text);
  flex: none;
  margin-top: 3px;
}
.push-warning__body { flex: 1 1 auto; min-width: 0; }
.push-warning__actions {
  align-items: center;
  display: flex;
  flex: none;
  gap: var(--space-1);
  margin: calc(var(--space-1) * -1) calc(var(--space-1) * -1) calc(var(--space-1) * -1) 0;
}
@media (max-width: 980px) {
  .push-warning { inset: var(--space-2) var(--space-2) auto; max-width: none; }
}
.sound-check {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.sound-check [hidden] { display: none; }
.sound-check__facts {
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding-bottom: var(--space-3);
}
.sound-check__fact {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: 0;
}
.sound-check__what {
  color: var(--color-muted);
  flex: 0 0 120px;
  font-size: var(--text-sm);
}
.sound-check__step {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.sound-check__step > .ui-btn { align-self: flex-start; }
.sound-check__lead {
  color: var(--color-text);
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  margin: 0;
  text-wrap: pretty;
}
.sound-check__lead--big {
  font-size: var(--text-xl);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-tight);
  text-wrap: balance;
}
.sound-check__alert {
  background: var(--color-warning-bg);
  border: 1px solid var(--color-warning-border);
  border-radius: var(--radius-control);
  color: var(--color-warning-text);
  font-size: var(--text-base);
  margin: 0;
  padding: var(--panel-inset);
}
.sound-check__answers {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.sound-check__hint {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.sound-check__hint-title {
  font-size: var(--text-md);
  font-weight: var(--weight-semibold);
  margin: 0;
}
.sound-check__list {
  display: flex;
  flex-direction: column;
  font-size: var(--text-md);
  gap: var(--space-3);
  line-height: var(--leading-normal);
  margin: 0;
  padding-left: var(--space-5);
}
.sound-check__result {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
}
.notification-check-link {
  flex-basis: 100%;
  font-size: var(--text-xs);
}
.deal-presence:not(:empty) {
  border-bottom: 1px solid var(--color-border);
  padding: var(--space-1) var(--panel-inset);
}
.shift-strip { display: none; }
@media (max-width: 980px) {
  .shift-strip {
    display: block;
    padding: var(--space-1) var(--panel-inset);
  }
.shift-strip .ui-label { max-width: 100%; }
.shift-strip__text {
    overflow: hidden;
    text-overflow: ellipsis;
  }
.shift-block .shift-roster { display: none; }
}
.account-menu-toggle > .ui-avatar { display: none; }
@media (min-width: 981px) {
  html:not([data-sidebar="wide"]) .sidebar-profile { display: none; }
html[data-sidebar="wide"] .sidebar-profile { margin: var(--space-1) 0 0; }
html:not([data-sidebar="wide"]) .account-menu-toggle > svg { display: none; }
  html:not([data-sidebar="wide"]) .account-menu-toggle > .ui-avatar { display: inline-flex; }
html:not([data-sidebar="wide"]) .sidebar-account .account-menu-toggle { padding-block: var(--space-1); }
html:not([data-sidebar="wide"]) .sidebar-account .account-menu .ui-label {
    display: inline-flex;
    font-size: var(--text-sm);
    font-weight: var(--weight-semibold);
  }
html:not([data-sidebar="wide"]) .sidebar-account:has([data-view-role]) .account-menu-toggle::after {
    background: var(--color-warning-dot);
    border: 2px solid var(--color-sidebar);
    border-radius: var(--radius-full);
    content: "";
    height: var(--space-3);
    bottom: var(--space-05);
    position: absolute;
    right: calc(var(--space-1) + var(--space-05));
    width: var(--space-3);
  }
}
#uis-call-dialog [hidden] { display: none; }
.review-lead { margin: var(--space-2) 0 var(--space-3); }
.review-list { display: flex; flex-direction: column; gap: var(--space-4); }
.review-dialog .panel-title { display: flex; gap: var(--space-2); align-items: baseline; min-width: 0; }
.review-dialog .panel-title a { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.review-feed { display: flex; flex-direction: column; gap: var(--space-2); }
.review-earlier > summary { cursor: pointer; color: var(--color-muted); padding-block: var(--space-1); }
.review-earlier[open] { display: flex; flex-direction: column; gap: var(--space-2); }
.review-turn { display: flex; flex-direction: column; gap: var(--space-1); }
.review-turn--assistant {
  background: var(--color-info-bg);
  border: 1px solid var(--color-info-border);
  border-radius: var(--radius-md);
  padding: var(--space-2);
}
.review-turn--suggestion { border-style: dashed; }  
.review-tag {
  align-items: center;
  color: var(--color-info-text);
  display: inline-flex;
  font-size: var(--text-xs);
  font-weight: 600;
  gap: var(--space-1);
}
.review-turn:not(.review-turn--assistant) > .review-tag { color: var(--color-muted); }
.review-form-wrap {
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--panel-inset);
}
.review-past { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: baseline; }
.review-past-text { flex-basis: 100%; }
.review-form { display: flex; flex-direction: column; gap: var(--space-2); }
.review-form textarea { width: 100%; max-width: none; }
.review-actions { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-3); align-items: center; }
.review-verdict { border: 0; display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-3); margin: 0; padding: 0; }
.review-verdict-option { align-items: center; display: inline-flex; gap: var(--space-1); min-height: 44px; }
.review-more { display: flex; justify-content: center; }
.trainer-ideal { display: none; flex-direction: column; gap: var(--space-1); }
.review-form:has(input[value="both_bad"]:checked) .trainer-ideal { display: flex; }
.trainer-ideal textarea { width: 100%; max-width: none; }
.trainer-bar { align-items: center; display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-3); }
.trainer-answers { display: grid; gap: var(--space-2); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.trainer-rating { display: grid; gap: var(--space-1) var(--space-3); grid-template-columns: repeat(4, max-content); }
.trainer-form textarea { min-height: 76px; }
@media (max-width: 640px) {
  .trainer-answers { grid-template-columns: minmax(0, 1fr); }
  .trainer-rating { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.trainer-form textarea { font-size: var(--text-md); }
}
