/* TelliApp v1.5.6 — final native intake layout repair.
   Loaded LAST, after legacy Android/iOS stylesheets, to eliminate double controls. */

/* -------- Shared clean field model -------- */
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 22px !important;
  border: 1.5px solid var(--ui-field-border) !important;
  border-radius: 29px !important;
  background: var(--ui-field-bg) !important;
  box-shadow: 0 1px 2px rgba(18,28,45,.025) !important;
  overflow: visible !important;
  color:var(--ui-text)!important;
}

html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell {
  border: 2px solid var(--ui-brand) !important;
  box-shadow: 0 0 0 2px rgba(52,153,232,.055) !important;
  padding-left: 21px !important;
  padding-right: 21px !important;
}

/* The actual controls are transparent content only: NO second rectangle. */
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input:focus,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select:focus,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea:focus {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--ui-text) !important;
  font-family: inherit !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  transform: none !important;
  zoom: 1 !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input::placeholder,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea::placeholder {
  color: var(--ui-text-muted) !important;
  opacity: 1 !important;
  font-weight: 500 !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select {
  padding-right: 4px !important;
  color: var(--ui-text) !important;
}

html body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side {
  display: grid !important;
  place-items: center !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ui-text-muted) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: 2 !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side { justify-self: end !important; }

/* Floating label: hidden at rest, moves onto the single shell border on focus/value. */
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-label {
  position: absolute !important;
  left: 66px !important;
  top: 50% !important;
  z-index: 6 !important;
  display: inline-block !important;
  max-width: calc(100% - 90px) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: top .15s ease, left .15s ease, transform .15s ease, opacity .15s ease !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-label.always-visible {
  top: 0 !important;
  left: 28px !important;
  padding: 0 8px !important;
  background: var(--ui-bg) !important;
  color: var(--ui-brand-dark) !important;
  transform: translateY(-50%) !important;
  opacity: 1 !important;
}

html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea {
  resize: none !important;
  overflow: auto !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell {
  align-items: flex-start !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-field-icon {
  margin-top: 27px !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) textarea {
  padding-top: 26px !important;
  padding-bottom: 18px !important;
}

/* Never render a duplicate QR glyph from pseudo-elements. */
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field[data-field-name="serial_imei"] .intake-input-shell::before,
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field[data-field-name="serial_imei"] .intake-input-shell::after {
  content: none !important;
  display: none !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.with-side-icon .intake-field-side {
  display: grid !important;
}

/* -------- Native-like sections -------- */
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-section {
  display: grid !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3 {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  color: var(--ui-text) !important;
  font-weight: 800 !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  border-radius: 50% !important;
  background: var(--ui-brand-soft) !important;
  color: var(--ui-brand-dark) !important;
}

html body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status {
  display: grid !important;
  align-items: center !important;
  background: var(--ui-success-soft) !important;
  color: var(--ui-success) !important;
  box-shadow: none !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge {
  display: grid !important;
  place-items: center !important;
  background: var(--ui-success-soft) !important;
  color: var(--ui-success) !important;
}

/* Suggestions must inherit the selected light UI instead of old dark cards. */
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggestions {
  background: var(--ui-card-bg) !important;
  border: 1px solid var(--ui-border) !important;
  box-shadow: 0 12px 26px rgba(20,35,55,.12) !important;
  overflow: hidden !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card {
  background: var(--ui-field-bg) !important;
  color: var(--ui-text) !important;
  border-color: var(--ui-field-border) !important;
}
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card * { color: inherit !important; }
html body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card small { color: var(--ui-text-muted) !important; }

/* -------- Phone: same visual density as native Android app -------- */
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head {
  min-height: 104px !important;
  padding: calc(18px + env(safe-area-inset-top)) 28px 14px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2 {
  font-size: 34px !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close {
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  font-size: 40px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body {
  padding: 0 24px calc(150px + env(safe-area-inset-bottom)) !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look {
  gap: 0 !important;
  padding: 0 !important;
  transform: none !important;
  zoom: 1 !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status {
  grid-template-columns: 62px minmax(0,1fr) !important;
  gap: 18px !important;
  min-height: 108px !important;
  margin: 8px 0 36px !important;
  padding: 20px 24px !important;
  border-radius: 30px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge {
  width: 58px !important;
  height: 58px !important;
  border-radius: 18px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge .ui-icon {
  width: 34px !important;
  height: 34px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b {
  font-size: 20px !important;
  line-height: 1.32 !important;
  font-weight: 750 !important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section {
  gap: 20px !important;
  margin: 0 0 44px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3 {
  gap: 18px !important;
  font-size: 31px !important;
  line-height: 1.12 !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon {
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon {
  width: 36px !important;
  height: 36px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-subhead,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-subhead {
  font-size: 19px !important;
  font-weight: 800 !important;
  margin: 0 0 2px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid {
  grid-template-columns: 1fr !important;
  gap: 18px !important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell {
  min-height: 102px !important;
  border-radius: 30px !important;
  padding: 0 26px !important;
  grid-template-columns: 44px minmax(0,1fr) auto !important;
  gap: 18px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell {
  padding-left: 25px !important;
  padding-right: 25px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon {
  width: 42px !important;
  height: 42px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon {
  width: 36px !important;
  height: 36px !important;
  stroke-width: 2 !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side {
  width: 34px !important;
  height: 34px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side .ui-icon {
  width: 29px !important;
  height: 29px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea {
  font-size: 24px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label {
  left: 30px !important;
  font-size: 16px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea {
  min-height: 118px !important;
  font-size: 23px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell {
  min-height: 146px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-hint,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-hint {
  margin: 9px 10px 0 !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn {
  position: fixed !important;
  z-index: 130 !important;
  left: 22px !important;
  right: 22px !important;
  bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  width: auto !important;
  min-height: 102px !important;
  margin: 0 !important;
  border-radius: 30px !important;
  font-size: 25px !important;
  font-weight: 800 !important;
}

/* Keep autocomplete large and directly below the field on phone. */
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggestions,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggestions {
  margin-top: 10px !important;
  border-radius: 24px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card {
  min-height: 84px !important;
  padding: 13px 15px !important;
}

/* Tablet and desktop keep the same functionality but use denser sizing. */
html.tablet-ui body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell {
  min-height: 76px !important;
  border-radius: 22px !important;
  padding: 0 18px !important;
}
html.tablet-ui body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.tablet-ui body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.tablet-ui body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea {
  font-size: 18px !important;
}
@media (min-width:1100px) {
  html body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell {
    min-height: 66px !important;
    border-radius: 18px !important;
    padding: 0 16px !important;
    grid-template-columns: 30px minmax(0,1fr) auto !important;
    gap: 12px !important;
  }
  html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
  html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
  html body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea { font-size: 16px !important; }
}
/* TelliApp v1.5.7 — phone intake scale + keyboard width stability.
   Loaded LAST. Changes are intentionally limited to the New intake screen on phones. */

/* Never let the intake sheet become wider than the visible app viewport when the
   software keyboard opens. This also prevents focused fields from appearing to
   stretch off the right edge. */
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet {
  overflow-x: clip !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet {
  width: 100% !important;
  max-width: 100% !important;
  left: 0 !important;
  right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body {
  width: 100% !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
  overflow-x: clip !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

/* Larger phone density, matched closer to the native Android intake screen. */
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head {
  min-height: 118px !important;
  padding: calc(22px + env(safe-area-inset-top)) 30px 18px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2 {
  font-size: 40px !important;
  line-height: 1.04 !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close {
  width: 62px !important;
  height: 62px !important;
  min-width: 62px !important;
  font-size: 44px !important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status {
  grid-template-columns: 72px minmax(0,1fr) !important;
  gap: 20px !important;
  min-height: 132px !important;
  margin: 12px 0 44px !important;
  padding: 24px 28px !important;
  border-radius: 34px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge {
  width: 68px !important;
  height: 68px !important;
  border-radius: 21px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge .ui-icon {
  width: 40px !important;
  height: 40px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b {
  font-size: 23px !important;
  line-height: 1.34 !important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section {
  gap: 24px !important;
  margin-bottom: 52px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3 {
  gap: 20px !important;
  font-size: 36px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon {
  width: 82px !important;
  height: 82px !important;
  min-width: 82px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon {
  width: 44px !important;
  height: 44px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-subhead,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-subhead {
  font-size: 22px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid {
  gap: 22px !important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell {
  width: 100% !important;
  min-height: 124px !important;
  border-radius: 36px !important;
  padding: 0 30px !important;
  grid-template-columns: 54px minmax(0,1fr) auto !important;
  gap: 22px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 29px !important;
  padding-right: 29px !important;
  transform: none !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon {
  width: 50px !important;
  height: 50px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon {
  width: 44px !important;
  height: 44px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side {
  width: 40px !important;
  height: 40px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-side .ui-icon {
  width: 34px !important;
  height: 34px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea {
  width: 100% !important;
  max-width: 100% !important;
  font-size: 29px !important;
  line-height: 1.25 !important;
  transform: none !important;
  zoom: 1 !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label {
  left: 34px !important;
  font-size: 19px !important;
  padding: 0 9px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell {
  min-height: 178px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea {
  min-height: 150px !important;
  resize: none !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-field-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-field-icon {
  margin-top: 34px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-hint,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-hint {
  font-size: 18px !important;
  margin-top: 11px !important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn {
  left: 28px !important;
  right: 28px !important;
  min-height: 118px !important;
  border-radius: 36px !important;
  font-size: 29px !important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card {
  min-height: 98px !important;
  padding: 16px 18px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b {
  font-size: 21px !important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small {
  font-size: 15px !important;
}
/* TelliApp v1.5.8 — larger phone intake density, native-app proportions.
   Loaded after v1.5.7; phone only. Tablet/desktop remain unchanged. */
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body{
  padding-left:20px!important;padding-right:20px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status{
  min-height:148px!important;padding:28px 30px!important;border-radius:38px!important;
  grid-template-columns:82px minmax(0,1fr)!important;gap:22px!important;margin-bottom:48px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge{width:78px!important;height:78px!important;border-radius:24px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b{font-size:27px!important;line-height:1.32!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3{font-size:42px!important;gap:22px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon{width:94px!important;height:94px!important;min-width:94px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon{width:52px!important;height:52px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid{gap:24px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell{
  min-height:148px!important;border-radius:40px!important;padding:0 34px!important;
  grid-template-columns:62px minmax(0,1fr) auto!important;gap:24px!important;
  width:100%!important;max-width:100%!important;overflow:hidden!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell{
  width:100%!important;max-width:100%!important;min-width:0!important;transform:none!important;
  padding-left:34px!important;padding-right:34px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon{width:58px!important;height:58px!important;min-width:58px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon{width:50px!important;height:50px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea{
  font-size:34px!important;line-height:1.25!important;min-width:0!important;width:100%!important;max-width:100%!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label{font-size:22px!important;left:38px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell{min-height:200px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea{min-height:170px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-toggle,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-toggle{min-height:138px!important;border-radius:38px!important;padding:20px 28px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy b,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy b{font-size:30px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy small,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy small{font-size:22px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card{min-height:118px!important;padding:18px 22px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-avatar,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-avatar{width:72px!important;height:72px!important;min-width:72px!important;font-size:28px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b{font-size:27px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small{font-size:19px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn{min-height:132px!important;font-size:34px!important;border-radius:40px!important;left:20px!important;right:20px!important}
/* TelliApp v1.5.9 — phone intake closer to native Android proportions.
   Phone only; tablet and desktop stay unchanged. */
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body{
  padding-left:28px!important;
  padding-right:28px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look{
  gap:34px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status{
  min-height:168px!important;
  padding:32px 34px!important;
  border-radius:42px!important;
  grid-template-columns:92px minmax(0,1fr)!important;
  gap:24px!important;
  margin-bottom:54px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge{
  width:88px!important;height:88px!important;border-radius:26px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b{
  font-size:31px!important;line-height:1.3!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section{
  margin-bottom:46px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3{
  font-size:46px!important;gap:24px!important;margin-bottom:28px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon{
  width:102px!important;height:102px!important;min-width:102px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon{
  width:56px!important;height:56px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid{
  gap:28px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell{
  min-height:166px!important;
  border-radius:42px!important;
  padding:0 38px!important;
  grid-template-columns:68px minmax(0,1fr) auto!important;
  gap:26px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon{
  width:64px!important;height:64px!important;min-width:64px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon{
  width:54px!important;height:54px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea{
  font-size:38px!important;line-height:1.22!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.has-value .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field.always-float .intake-field-label{
  font-size:24px!important;left:42px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell{
  min-height:220px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggestions,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggestions{
  width:100%!important;max-width:none!important;margin-top:18px!important;border-radius:34px!important;padding:12px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card{
  width:100%!important;min-height:150px!important;padding:24px 28px!important;border-radius:28px!important;
  grid-template-columns:82px minmax(0,1fr) 40px!important;gap:24px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-avatar,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-avatar{
  width:82px!important;height:82px!important;min-width:82px!important;font-size:31px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b{
  font-size:31px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small{
  font-size:22px!important;line-height:1.35!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-device-list,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-device-list{
  width:100%!important;max-width:none!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-toggle,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-toggle{
  min-height:156px!important;border-radius:40px!important;padding:24px 32px!important;
}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy b,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy b{font-size:34px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy small,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy small{font-size:24px!important}
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn{
  min-height:146px!important;font-size:38px!important;border-radius:42px!important;left:28px!important;right:28px!important;
}
/* TelliApp v1.6.1 — Android focus/keyboard geometry fix.
   Fixes browser focus zoom/pan and removes over-constrained 100dvw sizing.
   Phone intake only. Tablet/desktop are untouched. */

html.mobile-app-ui:not(.tablet-ui),
html.phone-shape-ui:not(.tablet-ui),
html.mobile-app-ui:not(.tablet-ui) body,
html.phone-shape-ui:not(.tablet-ui) body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* Use the viewport edges as the width source. Do NOT combine inset:0 with 100dvw:
   on Android the visual viewport can be repanned while an input is focused. */
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet {
  position: fixed !important;
  inset: 0 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}

html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet {
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  transform: none !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}

html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Focusing a field may change only its visual state, never its geometry. */
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  zoom: 1 !important;
}

/* Keep controls above Android's focus-zoom threshold and never allow intrinsic
   input sizing to widen the grid. */
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet input,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet select,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet textarea,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet input,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet select,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet textarea {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  font-size: max(16px, 1em) !important;
  transform: none !important;
}
/* TelliApp v1.6.6 — phone-native scale reset.
   High-specificity rules intentionally override all legacy phone XXL/intake layers. */
*{box-sizing:border-box}
html,body{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}

/* PHONE: one canonical sizing system */
@media (max-width:599px){
  html{font-size:16px!important}
  html.phone-shape-ui body .main,
  html.mobile-app-ui:not(.tablet-ui) body .main,
  html.touch-ui body .main{width:100%!important;max-width:none!important;margin:0!important;padding:10px 12px calc(60px + env(safe-area-inset-bottom))!important}

  html.phone-shape-ui body .topbar,
  html.mobile-app-ui:not(.tablet-ui) body .topbar{min-height:36px!important;margin:0 0 10px!important}
  html.phone-shape-ui body .topbar h1,
  html.mobile-app-ui:not(.tablet-ui) body .topbar h1{font-size:18px!important;line-height:1.08!important;letter-spacing:0!important}
  html.phone-shape-ui body .top-actions,
  html.mobile-app-ui:not(.tablet-ui) body .top-actions{gap:4px!important}
  html.phone-shape-ui body .icon-btn,
  html.mobile-app-ui:not(.tablet-ui) body .icon-btn{min-width:30px!important;min-height:30px!important;padding:2px!important;font-size:24px!important}
  html.phone-shape-ui body .icon-btn .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .icon-btn .ui-icon{width:22px!important;height:22px!important}
  html.phone-shape-ui body h2,
  html.mobile-app-ui:not(.tablet-ui) body h2{font-size:18px!important;line-height:1.1!important;margin:17px 0 10px!important}

  html.phone-shape-ui body .identity-card,
  html.mobile-app-ui:not(.tablet-ui) body .identity-card{min-height:54px!important;border-radius:16px!important;padding:8px 10px!important;gap:8px!important}
  html.phone-shape-ui body .avatar,
  html.mobile-app-ui:not(.tablet-ui) body .avatar{width:34px!important;height:34px!important;min-width:34px!important;flex:0 0 34px!important}
  html.phone-shape-ui body .avatar .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .avatar .ui-icon{width:19px!important;height:19px!important}
  html.phone-shape-ui body .identity-card b,
  html.mobile-app-ui:not(.tablet-ui) body .identity-card b{font-size:15px!important;line-height:1.08!important}
  html.phone-shape-ui body .identity-card small,
  html.mobile-app-ui:not(.tablet-ui) body .identity-card small{font-size:9.5px!important;margin-top:2px!important}
  html.phone-shape-ui body .sync-pill,
  html.mobile-app-ui:not(.tablet-ui) body .sync-pill{font-size:8px!important;padding:4px 6px!important;border-radius:11px!important;gap:3px!important;max-width:46%!important}
  html.phone-shape-ui body .sync-pill .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .sync-pill .ui-icon{width:12px!important;height:12px!important}

  html.phone-shape-ui body .stats,
  html.mobile-app-ui:not(.tablet-ui) body .stats{gap:6px!important}
  html.phone-shape-ui body .stats>div,
  html.mobile-app-ui:not(.tablet-ui) body .stats>div{min-height:86px!important;border-radius:16px!important;padding:8px 3px!important}
  html.phone-shape-ui body .metric-icon,
  html.mobile-app-ui:not(.tablet-ui) body .metric-icon{width:34px!important;height:34px!important;border-radius:11px!important}
  html.phone-shape-ui body .metric-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .metric-icon .ui-icon{width:19px!important;height:19px!important}
  html.phone-shape-ui body .stats b,
  html.mobile-app-ui:not(.tablet-ui) body .stats b{font-size:20px!important;line-height:1!important;margin-top:6px!important}
  html.phone-shape-ui body .stats small,
  html.mobile-app-ui:not(.tablet-ui) body .stats small{font-size:8.5px!important;margin-top:2px!important}

  html.phone-shape-ui body .quick,
  html.mobile-app-ui:not(.tablet-ui) body .quick{gap:7px!important}
  html.phone-shape-ui body .quick button,
  html.mobile-app-ui:not(.tablet-ui) body .quick button{min-height:64px!important;padding:8px 9px!important;grid-template-columns:34px minmax(0,1fr)!important;column-gap:8px!important;border-radius:16px!important}
  html.phone-shape-ui body .quick-icon,
  html.mobile-app-ui:not(.tablet-ui) body .quick-icon{width:34px!important;height:34px!important;border-radius:11px!important}
  html.phone-shape-ui body .quick-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .quick-icon .ui-icon{width:19px!important;height:19px!important}
  html.phone-shape-ui body .quick b,
  html.mobile-app-ui:not(.tablet-ui) body .quick b{font-size:13px!important}
  html.phone-shape-ui body .quick small,
  html.mobile-app-ui:not(.tablet-ui) body .quick small{font-size:9.5px!important;margin-top:1px!important}

  html.phone-shape-ui body .bottom-nav,
  html.mobile-app-ui:not(.tablet-ui) body .bottom-nav,
  html.touch-ui body .bottom-nav{height:56px!important;padding:4px 1px calc(4px + env(safe-area-inset-bottom))!important}
  html.phone-shape-ui body .bottom-nav button,
  html.mobile-app-ui:not(.tablet-ui) body .bottom-nav button{gap:1px!important;padding:1px 0!important;min-width:0!important}
  html.phone-shape-ui body .bottom-nav .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .bottom-nav .ui-icon{width:21px!important;height:21px!important;min-width:21px!important;min-height:21px!important}
  html.phone-shape-ui body .bottom-nav small,
  html.mobile-app-ui:not(.tablet-ui) body .bottom-nav small{font-size:7.5px!important;line-height:1!important;font-weight:780!important;white-space:nowrap!important}

  html.phone-shape-ui body .search,
  html.phone-shape-ui body .parity-search,
  html.mobile-app-ui:not(.tablet-ui) body .search,
  html.mobile-app-ui:not(.tablet-ui) body .parity-search{height:46px!important;border-radius:16px!important;padding:0 12px!important;gap:8px!important}
  html.phone-shape-ui body .search .ui-icon,
  html.phone-shape-ui body .parity-search .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .search .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .parity-search .ui-icon{width:20px!important;height:20px!important}
  html.phone-shape-ui body .search input,
  html.phone-shape-ui body .parity-search input,
  html.mobile-app-ui:not(.tablet-ui) body .search input,
  html.mobile-app-ui:not(.tablet-ui) body .parity-search input{font-size:14px!important}
  html.phone-shape-ui body .segmented,
  html.mobile-app-ui:not(.tablet-ui) body .segmented{height:38px!important;margin:10px 0 12px!important;border-radius:14px!important}
  html.phone-shape-ui body .segmented button,
  html.mobile-app-ui:not(.tablet-ui) body .segmented button{font-size:11px!important;padding:0 4px!important}

  html.phone-shape-ui body .order-list,
  html.mobile-app-ui:not(.tablet-ui) body .order-list{gap:9px!important}
  html.phone-shape-ui body .order-card,
  html.mobile-app-ui:not(.tablet-ui) body .order-card{min-height:146px!important;padding:12px!important;border-radius:18px!important}
  html.phone-shape-ui body .status-icon,
  html.mobile-app-ui:not(.tablet-ui) body .status-icon{width:42px!important;height:42px!important;min-width:42px!important;border-radius:13px!important}
  html.phone-shape-ui body .status-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .status-icon .ui-icon{width:23px!important;height:23px!important}
  html.phone-shape-ui body .grow b,
  html.mobile-app-ui:not(.tablet-ui) body .grow b{font-size:15px!important}
  html.phone-shape-ui body .grow a,
  html.mobile-app-ui:not(.tablet-ui) body .grow a{font-size:12px!important;margin-top:2px!important}
  html.phone-shape-ui body .badge,
  html.mobile-app-ui:not(.tablet-ui) body .badge{font-size:9.5px!important;padding:5px 8px!important;border-radius:11px!important}
  html.phone-shape-ui body .order-card h3,
  html.mobile-app-ui:not(.tablet-ui) body .order-card h3{font-size:13px!important;margin:9px 0 4px!important}
  html.phone-shape-ui body .order-card p,
  html.mobile-app-ui:not(.tablet-ui) body .order-card p{font-size:12px!important;line-height:1.3!important;min-height:30px!important}
  html.phone-shape-ui body .order-card footer,
  html.mobile-app-ui:not(.tablet-ui) body .order-card footer{font-size:10px!important;margin-top:7px!important}
  html.phone-shape-ui body .fab,
  html.phone-shape-ui body .new-order-fab,
  html.phone-shape-ui body .order-add-fab,
  html.phone-shape-ui body .appointment-fab,
  html.mobile-app-ui:not(.tablet-ui) body .fab,
  html.mobile-app-ui:not(.tablet-ui) body .new-order-fab,
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab,
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab{min-height:46px!important;padding:0 14px!important;border-radius:17px!important;font-size:13px!important;bottom:64px!important;right:10px!important}

  html.phone-shape-ui body .clients-list,
  html.mobile-app-ui:not(.tablet-ui) body .clients-list{gap:9px!important;margin-top:11px!important}
  html.phone-shape-ui body .client-card,
  html.mobile-app-ui:not(.tablet-ui) body .client-card{min-height:76px!important;border-radius:18px!important;padding:10px 12px!important;grid-template-columns:44px minmax(0,1fr) 17px!important;gap:9px!important}
  html.phone-shape-ui body .client-avatar,
  html.mobile-app-ui:not(.tablet-ui) body .client-avatar{width:44px!important;height:44px!important;border-radius:14px!important;font-size:16px!important}
  html.phone-shape-ui body .client-copy b,
  html.mobile-app-ui:not(.tablet-ui) body .client-copy b{font-size:15px!important}
  html.phone-shape-ui body .client-copy em,
  html.mobile-app-ui:not(.tablet-ui) body .client-copy em{font-size:12px!important;margin-top:2px!important}
  html.phone-shape-ui body .client-copy small,
  html.mobile-app-ui:not(.tablet-ui) body .client-copy small{font-size:9.5px!important;padding:4px 7px!important;margin-top:4px!important}

  html.phone-shape-ui body .warehouse-tabs,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-tabs{padding:0 10px!important}
  html.phone-shape-ui body .warehouse-tabs button,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-tabs button{padding:8px 3px 11px!important;gap:3px!important;font-size:11px!important}
  html.phone-shape-ui body .warehouse-tabs .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-tabs .ui-icon{width:24px!important;height:24px!important}
  html.phone-shape-ui body .warehouse-next,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-next{min-height:58px!important;border-radius:17px!important;padding:9px 11px!important}
  html.phone-shape-ui body .warehouse-stats,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats{gap:5px!important;margin:9px 0 11px!important}
  html.phone-shape-ui body .warehouse-stats div,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats div{min-height:54px!important;border-radius:14px!important;padding:7px!important}
  html.phone-shape-ui body .warehouse-stats small,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats small{font-size:8px!important}
  html.phone-shape-ui body .warehouse-stats b,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats b{font-size:14px!important}
  html.phone-shape-ui body .shelf-grid,
  html.phone-shape-ui body .warehouse-grid,
  html.mobile-app-ui:not(.tablet-ui) body .shelf-grid,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  html.phone-shape-ui body .shelf-card,
  html.phone-shape-ui body .warehouse-slot,
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card,
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-slot{min-height:148px!important;border-radius:15px!important;padding:9px 8px!important}

  /* Native-like intake. Specificity intentionally exceeds v1.5.x legacy XXL rules. */
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet{inset:0!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet{inset:0!important;width:100%!important;max-width:100%!important;border-radius:0!important;transform:none!important;overflow-x:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head{min-height:44px!important;height:auto!important;padding:7px 11px!important;display:flex!important;align-items:center!important;gap:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2{font-size:18px!important;line-height:1.05!important;margin:0!important;white-space:nowrap!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body{padding:6px 11px 72px!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look{width:100%!important;max-width:100%!important;gap:9px!important;overflow-x:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status{min-height:50px!important;height:auto!important;border-radius:16px!important;padding:8px 10px!important;grid-template-columns:30px minmax(0,1fr)!important;gap:8px!important;margin:2px 0 15px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-badge{width:30px!important;height:30px!important;min-width:30px!important;border-radius:9px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-crm-status b{font-size:11.5px!important;line-height:1.25!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section{display:grid!important;gap:8px!important;margin:0 0 18px!important;padding:0!important;width:100%!important;max-width:100%!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section h3{font-size:18px!important;line-height:1.1!important;gap:7px!important;margin:2px 0 4px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon{width:34px!important;height:34px!important;min-width:34px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-section-icon .ui-icon{width:19px!important;height:19px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-grid{grid-template-columns:1fr!important;gap:7px!important;width:100%!important;max-width:100%!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field{width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;transform:none!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:focus-within .intake-input-shell{width:100%!important;max-width:100%!important;min-width:0!important;min-height:50px!important;height:50px!important;border-radius:16px!important;padding:0 11px!important;grid-template-columns:24px minmax(0,1fr) auto!important;gap:7px!important;margin:0!important;left:0!important;right:auto!important;transform:none!important;zoom:1!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon{width:24px!important;height:24px!important;min-width:24px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-icon .ui-icon{width:21px!important;height:21px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field input,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field select,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea{width:100%!important;max-width:100%!important;min-width:0!important;font-size:16px!important;line-height:1.2!important;padding:0!important;margin:0!important;transform:none!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-field-label{font-size:10px!important;left:13px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field:has(textarea) .intake-input-shell{min-height:76px!important;height:76px!important;padding-top:7px!important;padding-bottom:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-app-field textarea{min-height:54px!important;height:54px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggestions,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggestions{width:100%!important;max-width:100%!important;margin-top:5px!important;border-radius:14px!important;padding:5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-card{width:100%!important;min-height:50px!important;padding:7px 8px!important;border-radius:13px!important;grid-template-columns:32px minmax(0,1fr) 18px!important;gap:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-avatar,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-avatar{width:32px!important;height:32px!important;min-width:32px!important;font-size:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy b{font-size:13px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-suggest-copy small{font-size:9px!important;line-height:1.25!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-toggle,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-toggle{min-height:60px!important;height:auto!important;border-radius:16px!important;padding:8px 10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy b{font-size:13.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-problem-group-copy small{font-size:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form.intake-app-look .intake-create-btn{min-height:52px!important;height:52px!important;font-size:15px!important;border-radius:17px!important;left:11px!important;right:11px!important;bottom:calc(6px + env(safe-area-inset-bottom))!important}
}

/* TABLET */
@media (min-width:600px) and (max-width:1099px){
  html{font-size:16px!important;-webkit-text-size-adjust:100%;text-size-adjust:100%}
  .main{width:100%!important;max-width:980px!important;margin:0 auto!important;padding:16px 18px calc(70px + env(safe-area-inset-bottom))!important}
  .topbar h1{font-size:23px!important}.bottom-nav{height:64px!important}.bottom-nav .ui-icon{width:22px!important;height:22px!important}.bottom-nav small{font-size:8px!important}
  .identity-card{min-height:68px!important}.stats>div{min-height:102px!important}.quick button{min-height:74px!important}.search,.parity-search{height:50px!important}.order-card{min-height:166px!important}.client-card{min-height:82px!important}
  .warehouse-grid,.shelf-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
  .new-intake-sheet .od-sheet{width:min(860px,100%)!important;max-width:860px!important}
}

/* DESKTOP */
@media (min-width:1100px){.main{max-width:1280px!important;margin:0 auto!important}.new-intake-sheet .od-sheet{max-width:920px!important}}
/* TelliApp v1.6.7 — screen parity reset.
   Phone-only cleanup after Chrome Desktop-site testing distorted earlier sizing decisions.
   Keep Home/Orders close to v1.6.6; normalize Intake, Inbox/Appointments, Warehouse, Finance and Lock. */

@media (max-width:599px){
  /* Never let phone pages grow wider than the real layout viewport. */
  html.mobile-app-ui:not(.tablet-ui),
  html.phone-shape-ui:not(.tablet-ui){font-size:16px!important;-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
  html.mobile-app-ui:not(.tablet-ui) body,
  html.phone-shape-ui:not(.tablet-ui) body{overflow-x:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .main,
  html.phone-shape-ui:not(.tablet-ui) body .main{width:100%!important;max-width:100%!important;overflow-x:hidden!important}

  /* LOCK — Android-app proportions, not the old XXL layer. */
  html.mobile-app-ui:not(.tablet-ui) body .lock-page,
  html.phone-shape-ui:not(.tablet-ui) body .lock-page{padding:18px 16px 28px!important;min-height:100dvh!important;display:flex!important;align-items:flex-start!important;justify-content:center!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card{width:100%!important;max-width:420px!important;margin:0 auto!important;text-align:center!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-hero,
  html.phone-shape-ui:not(.tablet-ui) body .lock-hero{width:104px!important;height:104px!important;margin:12px auto 22px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-hero .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .lock-hero .ui-icon{width:48px!important;height:48px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card h1,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card h1{font-size:27px!important;line-height:1.08!important;margin:0 0 10px!important;letter-spacing:-.3px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card>p,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card>p{font-size:17px!important;line-height:1.25!important;margin:0 0 24px!important}
  html.mobile-app-ui:not(.tablet-ui) body .floating-label>span,
  html.phone-shape-ui:not(.tablet-ui) body .floating-label>span{top:-9px!important;left:18px!important;font-size:12px!important;padding:0 5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field{height:62px!important;border-width:2px!important;border-radius:20px!important;padding:0 16px!important;gap:11px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field>.ui-icon{width:23px!important;height:23px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field .pin-input,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field .pin-input{font-size:20px!important;letter-spacing:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-form,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-form{gap:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-primary,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-primary{height:66px!important;border-radius:20px!important;font-size:18px!important;gap:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-primary .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-primary .ui-icon{width:23px!important;height:23px!important}
  html.mobile-app-ui:not(.tablet-ui) body .secondary-action,
  html.phone-shape-ui:not(.tablet-ui) body .secondary-action{height:62px!important;margin-top:12px!important;border-radius:20px!important;font-size:16px!important;gap:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .secondary-action .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .secondary-action .ui-icon{width:22px!important;height:22px!important}
  html.mobile-app-ui:not(.tablet-ui) body .logout-action,
  html.phone-shape-ui:not(.tablet-ui) body .logout-action{margin:20px auto 0!important;font-size:15px!important;gap:8px!important}

  /* INBOX / APPOINTMENTS — compact switch, controls and FAB like Android app. */
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch{width:250px!important;max-width:72vw!important;margin:0 auto 34px!important;border-width:1px!important;border-radius:20px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch button,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch button{min-height:44px!important;height:44px!important;padding:0 10px!important;font-size:14px!important;gap:7px!important;white-space:nowrap!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch .ui-icon{width:20px!important;height:20px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-title,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-title{min-height:38px!important;margin:0 0 12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-title h1,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-title h1{font-size:20px!important;line-height:1.1!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-top-actions,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-top-actions{gap:6px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-action,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-action{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:3px!important;border-radius:10px!important;font-size:26px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-action .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-action .ui-icon{width:22px!important;height:22px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-add,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-add{font-size:28px!important;line-height:1!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg{height:40px!important;margin:10px 0 14px!important;border-radius:14px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg button,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg button{font-size:11px!important;padding:0 4px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-empty,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-empty{min-height:220px!important;font-size:15px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-list,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-list{gap:9px!important;margin-top:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card{padding:12px 14px!important;border-radius:18px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card b,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card b{font-size:15px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card span,
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card small,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card span,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card small{font-size:11px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-fab{right:14px!important;bottom:calc(66px + env(safe-area-inset-bottom))!important;min-width:154px!important;min-height:50px!important;height:50px!important;padding:0 16px!important;border-radius:17px!important;gap:9px!important;font-size:14px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab-plus,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-fab-plus{font-size:29px!important;line-height:1!important}

  /* WAREHOUSE — match the Android three-column density. */
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-tabs,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-tabs{margin:2px -12px 14px!important;padding:0 12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-tabs button,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-tabs button{min-height:66px!important;padding:9px 4px 13px!important;gap:5px!important;font-size:14px!important}
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-tabs .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-tabs .ui-icon{width:26px!important;height:26px!important}
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-tabs button.active:after,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-tabs button.active:after{height:3px!important;width:42%!important}
  html.mobile-app-ui:not(.tablet-ui) body .next-shelf,
  html.phone-shape-ui:not(.tablet-ui) body .next-shelf{min-height:68px!important;border-radius:18px!important;padding:10px 12px!important;grid-template-columns:44px minmax(0,1fr) auto!important;gap:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .next-shelf span,
  html.phone-shape-ui:not(.tablet-ui) body .next-shelf span{width:44px!important;height:44px!important}
  html.mobile-app-ui:not(.tablet-ui) body .next-shelf span .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .next-shelf span .ui-icon{width:25px!important;height:25px!important}
  html.mobile-app-ui:not(.tablet-ui) body .next-shelf b,
  html.phone-shape-ui:not(.tablet-ui) body .next-shelf b{font-size:14px!important;line-height:1.15!important}
  html.mobile-app-ui:not(.tablet-ui) body .next-shelf strong,
  html.phone-shape-ui:not(.tablet-ui) body .next-shelf strong{font-size:24px!important}
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin:9px 0 12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats div,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-stats div{min-width:0!important;min-height:54px!important;border-radius:14px!important;padding:7px 8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats small,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-stats small{font-size:8px!important;line-height:1.15!important}
  html.mobile-app-ui:not(.tablet-ui) body .warehouse-stats b,
  html.phone-shape-ui:not(.tablet-ui) body .warehouse-stats b{font-size:14px!important;margin-top:2px!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-grid,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card{min-width:0!important;min-height:168px!important;height:168px!important;border-radius:16px!important;padding:9px!important;overflow:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card>div strong,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card>div strong{font-size:19px!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card>div .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card>div .ui-icon{width:20px!important;height:20px!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card>b,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card>b{font-size:11px!important;margin-top:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card>span,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card>span{font-size:11px!important;line-height:1.2!important;margin-top:7px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card>small,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card>small{font-size:9px!important;line-height:1.2!important;margin-top:3px!important;white-space:normal!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card>em,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card>em{font-size:8px!important;line-height:1.15!important;margin-top:3px!important}
  html.mobile-app-ui:not(.tablet-ui) body .shelf-card>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .shelf-card>.ui-icon{right:8px!important;bottom:8px!important;width:15px!important;height:15px!important}

  /* FINANCE — no horizontal drift, six cards in a compact 3x2 grid. */
  html.mobile-app-ui:not(.tablet-ui) body .finance-online-note,
  html.phone-shape-ui:not(.tablet-ui) body .finance-online-note{width:100%!important;border-radius:16px!important;padding:10px 12px!important;gap:9px!important;margin-bottom:12px!important;font-size:12px!important;line-height:1.3!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-online-note .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .finance-online-note .ui-icon{width:20px!important;height:20px!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-period,
  html.phone-shape-ui:not(.tablet-ui) body .finance-period{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;overflow:visible!important;width:100%!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-period button,
  html.phone-shape-ui:not(.tablet-ui) body .finance-period button{min-width:0!important;min-height:44px!important;padding:7px 5px!important;border-radius:14px!important;font-size:12px!important;line-height:1.15!important;white-space:normal!important}
  html.mobile-app-ui:not(.tablet-ui) body .period-btn,
  html.phone-shape-ui:not(.tablet-ui) body .period-btn{min-height:42px!important;margin:9px 0 6px!important;padding:7px 12px!important;border-radius:14px!important;font-size:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .period-btn .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .period-btn .ui-icon{width:18px!important;height:18px!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-range,
  html.phone-shape-ui:not(.tablet-ui) body .finance-range{font-size:11px!important;margin:6px 0 9px!important;min-height:14px!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-metrics,
  html.phone-shape-ui:not(.tablet-ui) body .finance-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;width:100%!important;overflow:visible!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-metrics>div,
  html.phone-shape-ui:not(.tablet-ui) body .finance-metrics>div{min-width:0!important;width:auto!important;min-height:126px!important;height:126px!important;border-radius:17px!important;padding:11px 10px!important;justify-content:flex-start!important;overflow:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-metrics .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .finance-metrics .ui-icon{width:22px!important;height:22px!important;flex:0 0 auto!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-metrics b,
  html.phone-shape-ui:not(.tablet-ui) body .finance-metrics b{font-size:20px!important;line-height:1.05!important;margin-top:17px!important;overflow-wrap:anywhere!important}
  html.mobile-app-ui:not(.tablet-ui) body .finance-metrics small,
  html.phone-shape-ui:not(.tablet-ui) body .finance-metrics small{font-size:11px!important;line-height:1.18!important;margin-top:7px!important;overflow-wrap:anywhere!important}

  /* NEW INTAKE — compact Android-app geometry. */
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head{min-height:40px!important;height:40px!important;padding:5px 10px!important;gap:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2{font-size:16px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close{width:30px!important;height:30px!important;min-width:30px!important;font-size:25px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body{padding:5px 10px 64px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status{min-height:44px!important;border-radius:15px!important;padding:7px 9px!important;grid-template-columns:27px minmax(0,1fr)!important;gap:7px!important;margin:2px 0 12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge{width:27px!important;height:27px!important;min-width:27px!important;border-radius:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b{font-size:10px!important;line-height:1.25!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section{gap:7px!important;margin:0 0 14px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3{font-size:16px!important;line-height:1.05!important;gap:6px!important;margin:2px 0 3px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon{width:30px!important;height:30px!important;min-width:30px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon{width:17px!important;height:17px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid{gap:6px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;transform:none!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell{width:100%!important;max-width:100%!important;min-width:0!important;height:44px!important;min-height:44px!important;border-radius:15px!important;padding:0 10px!important;grid-template-columns:22px minmax(0,1fr) auto!important;gap:6px!important;left:0!important;right:auto!important;transform:none!important;zoom:1!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon{width:22px!important;height:22px!important;min-width:22px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon{width:19px!important;height:19px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea{font-size:14px!important;line-height:1.2!important;min-width:0!important;max-width:100%!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label{font-size:9px!important;line-height:1!important;left:11px!important;top:-5px!important;padding:0 4px!important;max-width:calc(100% - 24px)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell{height:64px!important;min-height:64px!important;padding-top:6px!important;padding-bottom:6px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea{height:48px!important;min-height:48px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-toggle,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-toggle{min-height:52px!important;padding:7px 9px!important;border-radius:15px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy b{font-size:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy small{font-size:9px!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn{height:46px!important;min-height:46px!important;left:10px!important;right:10px!important;bottom:calc(5px + env(safe-area-inset-bottom))!important;border-radius:15px!important;font-size:14px!important}
}

/* Tablet stays a separate compact layout, independent of phone tuning. */
@media (min-width:600px) and (max-width:1099px){
  html.tablet-ui .new-intake-sheet .od-sheet{max-width:760px!important}
}
/* TelliApp v1.6.8 — targeted phone corrections.
   Robust phone selectors: do not depend on mobile-app-ui/phone-shape-ui classes. */
@media (max-width:599px){
  /* Orders: compact search/segment and Android-size New order FAB. */
  body .order-add-fab{
    right:14px!important;bottom:calc(76px + env(safe-area-inset-bottom))!important;
    width:auto!important;min-width:168px!important;max-width:210px!important;
    height:52px!important;min-height:52px!important;padding:0 16px!important;
    border-radius:17px!important;gap:9px!important;font-size:14px!important;line-height:1!important;
  }
  body .order-add-fab-plus{font-size:30px!important;line-height:1!important;transform:none!important}
  body .segmented{min-height:43px!important;height:43px!important;border-radius:15px!important}
  body .segmented button{min-height:43px!important;height:43px!important;padding:0 7px!important;font-size:12px!important;line-height:1!important}
  body .search{height:52px!important;min-height:52px!important;border-radius:18px!important;padding:0 14px!important}
  body .search input{font-size:15px!important}
  body .search>span{font-size:24px!important}

  /* Appointments: hard-lock header actions so generic .icon-btn cannot blow them up. */
  body button#appointments-refresh,
  body button#appointment-add{
    width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;
    max-width:32px!important;max-height:32px!important;padding:3px!important;margin:0!important;
    border-radius:9px!important;font-size:24px!important;line-height:1!important;
    transform:none!important;zoom:1!important;
  }
  body button#appointments-refresh svg,
  body button#appointments-refresh .ui-icon,
  body button#appointment-add svg,
  body button#appointment-add .ui-icon{
    width:21px!important;height:21px!important;min-width:21px!important;min-height:21px!important;
    max-width:21px!important;max-height:21px!important;transform:none!important;
  }
  body .appointment-top-actions{display:flex!important;align-items:center!important;gap:7px!important;width:auto!important}
  body .inbox-title h1{font-size:21px!important;line-height:1.1!important}

  /* Settings: match the Android app density. */
  body .settings-head{margin-bottom:14px!important;min-height:42px!important}
  body .settings-head h1{font-size:22px!important;line-height:1.1!important}
  body .settings-head .plain-back{width:36px!important;height:36px!important;min-width:36px!important}
  body .settings-head .plain-back .ui-icon{width:24px!important;height:24px!important}
  body .settings-profile{
    border-radius:22px!important;padding:16px 18px!important;
    grid-template-columns:58px minmax(0,1fr) 24px!important;gap:14px!important;min-height:96px!important;
  }
  body .settings-profile-avatar{width:58px!important;height:58px!important;border-radius:50%!important}
  body .settings-profile-avatar .ui-icon{width:28px!important;height:28px!important}
  body .settings-profile b{font-size:19px!important;line-height:1.15!important}
  body .settings-profile span{font-size:14px!important;margin-top:3px!important}
  body .settings-profile small{font-size:12px!important;margin-top:3px!important}
  body .settings-profile>strong{font-size:24px!important}
  body .settings-section-title{font-size:22px!important;margin:24px 0 5px!important}
  body .settings-section-sub{font-size:14px!important;line-height:1.3!important;margin:0 0 12px!important}
  body .settings-group{border-radius:22px!important}
  body .settings-row{
    min-height:86px!important;padding:12px 15px!important;
    grid-template-columns:52px minmax(0,1fr) 20px!important;gap:12px!important;
  }
  body .settings-row.static{grid-template-columns:52px minmax(0,1fr)!important}
  body .settings-icon{width:52px!important;height:52px!important;border-radius:16px!important}
  body .settings-icon .ui-icon{width:26px!important;height:26px!important}
  body .settings-row b{font-size:17px!important;line-height:1.15!important}
  body .settings-row small{font-size:13px!important;line-height:1.28!important;margin-top:3px!important}
  body .settings-row>.ui-icon{width:20px!important;height:20px!important}
  body .settings-logout{min-height:56px!important;margin-top:20px!important;border-radius:18px!important;font-size:16px!important;gap:10px!important}
  body .settings-logout .ui-icon{width:22px!important;height:22px!important}
  body .build-label{font-size:12px!important}

  /* Intake: robust fallback independent of device classification classes. */
  body .new-intake-sheet .od-sheet{font-size:14px!important;padding-left:12px!important;padding-right:12px!important}
  body .new-intake-sheet .od-sheet-head{height:44px!important;min-height:44px!important;padding:5px 8px!important;gap:7px!important}
  body .new-intake-sheet .od-sheet-head h2{font-size:19px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;margin:0!important}
  body .new-intake-sheet .od-sheet-head .od-sheet-close{width:34px!important;height:34px!important;font-size:24px!important}
  body .new-intake-sheet .intake-crm-banner{min-height:54px!important;padding:9px 11px!important;border-radius:16px!important;font-size:11px!important;line-height:1.3!important}
  body .new-intake-sheet .intake-section h3{font-size:18px!important;line-height:1.1!important}
  body .new-intake-sheet .intake-section-icon{width:39px!important;height:39px!important;min-width:39px!important}
  body .new-intake-sheet .intake-section-icon .ui-icon{width:22px!important;height:22px!important}
  body .new-intake-sheet .intake-input-shell{min-height:52px!important;height:52px!important;border-radius:16px!important;padding-left:12px!important;padding-right:12px!important}
  body .new-intake-sheet .intake-input-shell input,
  body .new-intake-sheet .intake-input-shell select,
  body .new-intake-sheet .intake-input-shell textarea{font-size:14px!important}
  body .new-intake-sheet .intake-input-icon{width:22px!important;height:22px!important;min-width:22px!important}
  body .new-intake-sheet .intake-create-btn{height:50px!important;min-height:50px!important;font-size:15px!important;border-radius:16px!important;left:12px!important;right:12px!important}
}
/* TelliApp v1.6.9 — native phone parity correction.
   IMPORTANT: these rules intentionally outrank legacy phone/touch XL rules.
   Tablet/desktop are not changed. */
@media (max-width: 599px) {
  /* ORDERS — make the New order FAB the same compact size as New appointment. */
  html.touch-ui body .order-add-fab,
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab {
    right:14px!important;
    bottom:calc(66px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    min-width:154px!important;
    max-width:184px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    padding:0 16px!important;
    border-radius:17px!important;
    gap:9px!important;
    font-size:14px!important;
    line-height:1!important;
    transform:none!important;
    zoom:1!important;
  }
  html.touch-ui body .order-add-fab-plus,
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab-plus,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab-plus {
    font-size:29px!important;
    line-height:1!important;
    transform:none!important;
  }

  /* SETTINGS — force native-app density, overriding old XL touch rules. */
  html.touch-ui body .settings-head,
  html.mobile-app-ui:not(.tablet-ui) body .settings-head,
  html.phone-shape-ui:not(.tablet-ui) body .settings-head {
    min-height:44px!important;
    margin-bottom:14px!important;
    gap:8px!important;
  }
  html.touch-ui body .settings-head h1,
  html.mobile-app-ui:not(.tablet-ui) body .settings-head h1,
  html.phone-shape-ui:not(.tablet-ui) body .settings-head h1 {
    font-size:22px!important;
    line-height:1.08!important;
    margin:0!important;
  }
  html.touch-ui body .settings-head .plain-back,
  html.mobile-app-ui:not(.tablet-ui) body .settings-head .plain-back,
  html.phone-shape-ui:not(.tablet-ui) body .settings-head .plain-back {
    width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  }
  html.touch-ui body .settings-head .plain-back .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .settings-head .plain-back .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .settings-head .plain-back .ui-icon {
    width:24px!important;height:24px!important;
  }
  html.touch-ui body .settings-profile,
  html.mobile-app-ui:not(.tablet-ui) body .settings-profile,
  html.phone-shape-ui:not(.tablet-ui) body .settings-profile {
    min-height:96px!important;
    padding:14px 16px!important;
    border-radius:22px!important;
    grid-template-columns:58px minmax(0,1fr) 18px!important;
    gap:13px!important;
  }
  html.touch-ui body .settings-profile-avatar,
  html.mobile-app-ui:not(.tablet-ui) body .settings-profile-avatar,
  html.phone-shape-ui:not(.tablet-ui) body .settings-profile-avatar {
    width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;
  }
  html.touch-ui body .settings-profile-avatar .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .settings-profile-avatar .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .settings-profile-avatar .ui-icon {
    width:28px!important;height:28px!important;
  }
  html.touch-ui body .settings-profile b,
  html.mobile-app-ui:not(.tablet-ui) body .settings-profile b,
  html.phone-shape-ui:not(.tablet-ui) body .settings-profile b {font-size:18px!important;line-height:1.12!important;}
  html.touch-ui body .settings-profile span,
  html.mobile-app-ui:not(.tablet-ui) body .settings-profile span,
  html.phone-shape-ui:not(.tablet-ui) body .settings-profile span {font-size:14px!important;margin-top:3px!important;}
  html.touch-ui body .settings-profile small,
  html.mobile-app-ui:not(.tablet-ui) body .settings-profile small,
  html.phone-shape-ui:not(.tablet-ui) body .settings-profile small {font-size:12px!important;margin-top:2px!important;}
  html.touch-ui body .settings-profile>strong,
  html.mobile-app-ui:not(.tablet-ui) body .settings-profile>strong,
  html.phone-shape-ui:not(.tablet-ui) body .settings-profile>strong {font-size:22px!important;}

  html.touch-ui body .settings-section-title,
  html.mobile-app-ui:not(.tablet-ui) body .settings-section-title,
  html.phone-shape-ui:not(.tablet-ui) body .settings-section-title {
    font-size:21px!important;margin:22px 0 5px!important;line-height:1.12!important;
  }
  html.touch-ui body .settings-section-sub,
  html.mobile-app-ui:not(.tablet-ui) body .settings-section-sub,
  html.phone-shape-ui:not(.tablet-ui) body .settings-section-sub {
    font-size:13px!important;line-height:1.3!important;margin:0 0 10px!important;
  }
  html.touch-ui body .settings-group,
  html.mobile-app-ui:not(.tablet-ui) body .settings-group,
  html.phone-shape-ui:not(.tablet-ui) body .settings-group {border-radius:22px!important;}
  html.touch-ui body .settings-row,
  html.mobile-app-ui:not(.tablet-ui) body .settings-row,
  html.phone-shape-ui:not(.tablet-ui) body .settings-row {
    min-height:76px!important;
    padding:10px 14px!important;
    grid-template-columns:50px minmax(0,1fr) 18px!important;
    gap:11px!important;
  }
  html.touch-ui body .settings-row.static,
  html.mobile-app-ui:not(.tablet-ui) body .settings-row.static,
  html.phone-shape-ui:not(.tablet-ui) body .settings-row.static {grid-template-columns:50px minmax(0,1fr)!important;}
  html.touch-ui body .settings-icon,
  html.mobile-app-ui:not(.tablet-ui) body .settings-icon,
  html.phone-shape-ui:not(.tablet-ui) body .settings-icon {
    width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;border-radius:16px!important;
  }
  html.touch-ui body .settings-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .settings-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .settings-icon .ui-icon {width:25px!important;height:25px!important;}
  html.touch-ui body .settings-row b,
  html.mobile-app-ui:not(.tablet-ui) body .settings-row b,
  html.phone-shape-ui:not(.tablet-ui) body .settings-row b {font-size:16px!important;line-height:1.15!important;}
  html.touch-ui body .settings-row small,
  html.mobile-app-ui:not(.tablet-ui) body .settings-row small,
  html.phone-shape-ui:not(.tablet-ui) body .settings-row small {font-size:12.5px!important;line-height:1.25!important;margin-top:3px!important;}
  html.touch-ui body .settings-row>.ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .settings-row>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .settings-row>.ui-icon {width:18px!important;height:18px!important;}
  html.touch-ui body .settings-logout,
  html.mobile-app-ui:not(.tablet-ui) body .settings-logout,
  html.phone-shape-ui:not(.tablet-ui) body .settings-logout {
    min-height:54px!important;margin-top:18px!important;border-radius:18px!important;font-size:15px!important;gap:9px!important;
  }
  html.touch-ui body .settings-logout .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .settings-logout .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .settings-logout .ui-icon {width:21px!important;height:21px!important;}
  html.touch-ui body .build-label,
  html.mobile-app-ui:not(.tablet-ui) body .build-label,
  html.phone-shape-ui:not(.tablet-ui) body .build-label {font-size:11px!important;}

  /* NEW INTAKE — native Android proportions. Strong selectors beat legacy XL touch rules. */
  html.touch-ui body .new-intake-sheet .od-sheet,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet {
    width:100%!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;
    border-radius:0!important;padding:0!important;background:var(--bg,#f3f6fb)!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-handle,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-handle,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-handle {display:none!important;}
  html.touch-ui body .new-intake-sheet .od-sheet-head,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head {
    min-height:58px!important;height:58px!important;
    padding:calc(4px + env(safe-area-inset-top)) 14px 4px!important;
    gap:8px!important;justify-content:flex-start!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-head h2,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2 {
    order:2!important;font-size:25px!important;line-height:1.05!important;font-weight:800!important;
    margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-close,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close {
    order:1!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;
    font-size:0!important;background:transparent!important;border-radius:10px!important;position:relative!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-close::before,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before {
    content:'←'!important;font-size:25px!important;line-height:1!important;color:var(--ui-text)!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-body,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body {
    padding:8px 14px calc(84px + env(safe-area-inset-bottom))!important;
  }
  html.touch-ui body .new-intake-sheet .new-intake-form,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form {gap:16px!important;}

  html.touch-ui body .new-intake-sheet .intake-crm-status,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status {
    min-height:58px!important;margin:4px 0 16px!important;padding:10px 12px!important;
    border-radius:18px!important;gap:10px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-crm-badge,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge {
    width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border-radius:12px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-crm-badge .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge .ui-icon {width:23px!important;height:23px!important;}
  html.touch-ui body .new-intake-sheet .intake-crm-status b,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b {font-size:13px!important;line-height:1.28!important;}

  html.touch-ui body .new-intake-sheet .intake-section,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section {margin:0 0 18px!important;gap:10px!important;}
  html.touch-ui body .new-intake-sheet .intake-section h3,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3 {
    font-size:20px!important;line-height:1.1!important;margin:0 0 4px!important;gap:10px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-section-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon {
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-section-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon {width:24px!important;height:24px!important;}
  html.touch-ui body .new-intake-sheet .intake-subhead,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-subhead,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-subhead {font-size:13px!important;}

  html.touch-ui body .new-intake-sheet .intake-grid,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid {gap:10px!important;grid-template-columns:1fr!important;}
  html.touch-ui body .new-intake-sheet .intake-client-grid,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-client-grid,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-client-grid {grid-template-columns:1fr!important;}

  html.touch-ui body .new-intake-sheet .intake-app-look .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-input-shell,
  html.touch-ui body .new-intake-sheet .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell {
    min-height:58px!important;height:58px!important;
    padding:0 14px!important;gap:10px!important;border-radius:18px!important;
    grid-template-columns:30px minmax(0,1fr) auto!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell {
    padding:0 13px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon {width:26px!important;height:26px!important;min-width:26px!important;}
  html.touch-ui body .new-intake-sheet .intake-field-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon {width:25px!important;height:25px!important;}
  html.touch-ui body .new-intake-sheet .intake-field-side,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side {width:22px!important;height:22px!important;}
  html.touch-ui body .new-intake-sheet .intake-field-side .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon {width:20px!important;height:20px!important;}
  html.touch-ui body .new-intake-sheet .intake-app-field input,
  html.touch-ui body .new-intake-sheet .intake-app-field select,
  html.touch-ui body .new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea {
    font-size:16px!important;line-height:1.25!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field .intake-field-label {
    left:54px!important;font-size:15px!important;max-width:calc(100% - 72px)!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field.has-value .intake-field-label,
  html.touch-ui body .new-intake-sheet .intake-app-field:focus-within .intake-field-label,
  html.touch-ui body .new-intake-sheet .intake-app-field.always-float .intake-field-label,
  html.touch-ui body .new-intake-sheet .intake-app-field .intake-field-label.always-visible,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.has-value .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field .intake-field-label.always-visible,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.has-value .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field .intake-field-label.always-visible {
    left:18px!important;font-size:11px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell {
    min-height:78px!important;height:auto!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea {
    min-height:58px!important;padding:15px 0!important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-hint,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint {font-size:11px!important;margin:5px 4px 0!important;}

  html.touch-ui body .new-intake-sheet .intake-problem-group-toggle,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-toggle,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-toggle {
    min-height:62px!important;padding:9px 11px!important;border-radius:17px!important;
    grid-template-columns:38px minmax(0,1fr) 18px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-problem-group-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-icon {width:36px!important;height:36px!important;}
  html.touch-ui body .new-intake-sheet .intake-problem-group-copy b,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy b {font-size:14px!important;}
  html.touch-ui body .new-intake-sheet .intake-problem-group-copy small,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-group-copy small {font-size:11px!important;}

  html.touch-ui body .new-intake-sheet .intake-create-btn,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn {
    left:14px!important;right:14px!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;
    min-height:58px!important;height:58px!important;border-radius:18px!important;font-size:16px!important;gap:8px!important;
  }

  html.touch-ui body .new-intake-sheet .intake-suggestions,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggestions,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggestions {max-height:220px!important;border-radius:16px!important;margin-top:6px!important;}
  html.touch-ui body .new-intake-sheet .intake-suggest-card,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-card,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-card {
    min-height:58px!important;padding:8px 10px!important;grid-template-columns:40px minmax(0,1fr) 18px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-suggest-avatar,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-avatar,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-avatar {width:38px!important;height:38px!important;font-size:14px!important;}
  html.touch-ui body .new-intake-sheet .intake-suggest-copy b,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-copy b {font-size:14px!important;}
  html.touch-ui body .new-intake-sheet .intake-suggest-copy small,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggest-copy small {font-size:10.5px!important;}
}

/* TelliApp v1.6.10 — intake parity hotfix.
   Fixes: duplicated back arrows, oversized intake title,
   incorrect floating labels, and closer Android intake proportions. */
@media (max-width: 599px) {
  html.touch-ui body .new-intake-sheet .od-sheet-head,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head {
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    align-items:center!important;
    min-height:48px!important;
    height:48px!important;
    padding:calc(6px + env(safe-area-inset-top)) 16px 2px!important;
    gap:8px!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-head h2,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2 {
    order:unset!important;
    grid-column:2!important;
    justify-self:start!important;
    width:auto!important;
    max-width:100%!important;
    font-size:18px!important;
    line-height:1.18!important;
    font-weight:800!important;
    letter-spacing:-0.01em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-close,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close {
    order:unset!important;
    grid-column:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    padding:0!important;
    margin:0!important;
    font-size:0!important;
    color:var(--ui-text)!important;
    background:transparent!important;
    border-radius:10px!important;
    box-shadow:none!important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-close::before,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before {
    content:'←'!important;
    display:block!important;
    font-size:29px!important;
    line-height:1!important;
    color:var(--ui-text)!important;
    font-weight:500!important;
  }

  html.touch-ui body .new-intake-sheet .od-sheet-body,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body {
    padding:10px 16px calc(92px + env(safe-area-inset-bottom))!important;
  }
  html.touch-ui body .new-intake-sheet .new-intake-form,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form {
    gap:14px!important;
  }

  html.touch-ui body .new-intake-sheet .intake-crm-status,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status {
    min-height:74px!important;
    margin:4px 0 14px!important;
    padding:12px 14px!important;
    border-radius:18px!important;
    gap:12px!important;
    align-items:center!important;
  }
  html.touch-ui body .new-intake-sheet .intake-crm-badge,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge {
    width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:11px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-crm-badge .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge .ui-icon {width:21px!important;height:21px!important;}
  html.touch-ui body .new-intake-sheet .intake-crm-status b,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b {
    font-size:12.5px!important;line-height:1.34!important;font-weight:700!important;
  }

  html.touch-ui body .new-intake-sheet .intake-section,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section {margin:0 0 16px!important;gap:10px!important;}
  html.touch-ui body .new-intake-sheet .intake-section h3,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3 {
    font-size:20px!important;line-height:1.14!important;margin:2px 0 6px!important;gap:12px!important;font-weight:800!important;
  }
  html.touch-ui body .new-intake-sheet .intake-section-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon {
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border-radius:50%!important;
  }
  html.touch-ui body .new-intake-sheet .intake-section-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon {width:23px!important;height:23px!important;}

  html.touch-ui body .new-intake-sheet .intake-grid,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid {gap:10px!important;}

  /* Match the Android app: regular fields show placeholder only, no floating blue label. */
  html.touch-ui body .new-intake-sheet .intake-app-field,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field {
    position:relative!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field:not(.always-float) > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:not(.always-float) > .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:not(.always-float) > .intake-field-label {
    display:none!important;
    opacity:0!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field.always-float,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float {
    padding-top:14px!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.touch-ui body .new-intake-sheet .intake-app-field .intake-field-label.always-visible,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field .intake-field-label.always-visible,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field .intake-field-label.always-visible {
    display:inline-block!important;
    top:-1px!important;
    left:14px!important;
    right:auto!important;
    max-width:calc(100% - 32px)!important;
    padding:0 6px!important;
    background:var(--bg,#f3f6fb)!important;
    color:var(--ui-text)!important;
    font-size:11px!important;
    line-height:1!important;
    transform:none!important;
    opacity:1!important;
    border-radius:8px!important;
  }

  html.touch-ui body .new-intake-sheet .intake-app-look .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-input-shell,
  html.touch-ui body .new-intake-sheet .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell {
    min-height:54px!important;
    height:54px!important;
    padding:0 16px!important;
    gap:12px!important;
    border-radius:18px!important;
    border:1px solid var(--ui-field-border)!important;
    background:var(--ui-field-bg)!important;
    grid-template-columns:28px minmax(0,1fr) auto!important;
    box-shadow:none!important;
    color:var(--ui-text)!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell {
    min-height:84px!important;
    height:auto!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
    align-items:flex-start!important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon {width:24px!important;height:24px!important;min-width:24px!important;align-self:center!important;}
  html.touch-ui body .new-intake-sheet .intake-field-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon {width:24px!important;height:24px!important;}
  html.touch-ui body .new-intake-sheet .intake-field-side,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side {width:22px!important;height:22px!important;align-self:center!important;}
  html.touch-ui body .new-intake-sheet .intake-field-side .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon {width:20px!important;height:20px!important;}

  html.touch-ui body .new-intake-sheet .intake-app-field input,
  html.touch-ui body .new-intake-sheet .intake-app-field select,
  html.touch-ui body .new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea {
    font-size:16px!important;
    line-height:1.25!important;
    color:var(--ui-text)!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field input::placeholder,
  html.touch-ui body .new-intake-sheet .intake-app-field textarea::placeholder,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input::placeholder,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea::placeholder,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input::placeholder,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea::placeholder {
    color:var(--ui-text)!important;
    opacity:1!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea {
    min-height:60px!important;
    padding:8px 0!important;
  }

  html.touch-ui body .new-intake-sheet .intake-field-hint,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint {
    font-size:11px!important;
    margin:6px 6px 0!important;
    color:var(--ui-text)!important;
  }

  html.touch-ui body .new-intake-sheet .intake-create-btn,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn {
    left:16px!important;right:16px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;
    min-height:56px!important;height:56px!important;border-radius:22px!important;font-size:15px!important;gap:8px!important;
  }
}

/* =========================================================
   TELLIAPP v1.6.11 — final phone intake fullscreen repair
   Goal: make intake match the Android app layout much closer.
   ========================================================= */
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet,
html.touch-ui body .new-intake-sheet{
  position:fixed!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  background:var(--ui-card-bg)!important;
  overflow:hidden!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
html.touch-ui body .new-intake-sheet .od-sheet{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:100dvh!important;
  max-height:100dvh!important;
  padding:0!important;
  margin:0!important;
  border-radius:0!important;
  transform:none!important;
  background:var(--ui-card-bg)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-handle,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-handle,
html.touch-ui body .new-intake-sheet .od-sheet-handle{display:none!important}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
html.touch-ui body .new-intake-sheet .od-sheet-head{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  min-height:56px!important;
  height:auto!important;
  padding:12px 16px 8px!important;
  background:var(--ui-card-bg)!important;
  border-bottom:0!important;
  flex:0 0 auto!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
html.touch-ui body .new-intake-sheet .od-sheet-head h2{
  grid-column:2!important;
  margin:0!important;
  width:auto!important;
  max-width:100%!important;
  font-size:20px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
html.touch-ui body .new-intake-sheet .od-sheet-close{
  grid-column:1!important;
  position:relative!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before,
html.touch-ui body .new-intake-sheet .od-sheet-close::before{
  content:'←'!important;
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-indent:0!important;
  font-size:31px!important;
  line-height:1!important;
  color:var(--ui-text)!important;
  font-weight:500!important;
}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
html.touch-ui body .new-intake-sheet .od-sheet-body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:8px 16px calc(92px + env(safe-area-inset-bottom))!important;
  background:var(--ui-card-bg)!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
html.touch-ui body .new-intake-sheet .new-intake-form{
  display:grid!important;
  gap:14px!important;
  width:100%!important;
  max-width:none!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
html.touch-ui body .new-intake-sheet .intake-grid,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-client-grid,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-client-grid,
html.touch-ui body .new-intake-sheet .intake-client-grid{
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  width:100%!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status,
html.touch-ui body .new-intake-sheet .intake-crm-status{
  width:100%!important;
  min-height:74px!important;
  margin:2px 0 14px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  gap:12px!important;
  align-items:center!important;
  overflow:visible!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b,
html.touch-ui body .new-intake-sheet .intake-crm-status b{
  font-size:12.5px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
html.touch-ui body .new-intake-sheet .intake-section{
  width:100%!important;
  margin:0 0 18px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
  gap:12px!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3,
html.touch-ui body .new-intake-sheet .intake-section h3{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin:0 0 2px!important;
  font-size:21px!important;
  line-height:1.16!important;
  font-weight:800!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon,
html.touch-ui body .new-intake-sheet .intake-section-icon{
  width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;border-radius:50%!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon,
html.touch-ui body .new-intake-sheet .intake-section-icon .ui-icon{width:24px!important;height:24px!important}

html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
html.touch-ui body .new-intake-sheet .intake-app-field,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-app-field,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-app-field,
html.touch-ui body .new-intake-sheet .intake-app-look .intake-app-field{
  position:relative!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:not(.always-float) > .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:not(.always-float) > .intake-field-label,
html.touch-ui body .new-intake-sheet .intake-app-field:not(.always-float) > .intake-field-label{
  display:none!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float,
html.touch-ui body .new-intake-sheet .intake-app-field.always-float{
  padding-top:18px!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
html.touch-ui body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label.always-visible,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label.always-visible,
html.touch-ui body .new-intake-sheet .intake-field-label.always-visible{
  display:inline-block!important;
  position:absolute!important;
  top:0!important;
  left:14px!important;
  right:auto!important;
  z-index:2!important;
  margin:0!important;
  padding:0 6px!important;
  background:var(--ui-card-bg)!important;
  color:var(--ui-text-muted)!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:500!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:calc(100% - 28px)!important;
  border-radius:8px!important;
  transform:none!important;
  opacity:1!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
html.touch-ui body .new-intake-sheet .intake-input-shell,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-look .intake-input-shell,
html.touch-ui body .new-intake-sheet .intake-app-look .intake-input-shell{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  box-sizing:border-box!important;
  min-height:56px!important;
  height:56px!important;
  padding:0 16px!important;
  margin:0!important;
  background:var(--ui-field-bg)!important;
  border:1px solid var(--ui-field-border)!important;
  border-radius:18px!important;
  box-shadow:none!important;
  overflow:visible!important;
  color:var(--ui-text)!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
html.touch-ui body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell{
  border-color:var(--ui-brand)!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
html.touch-ui body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell{
  min-height:92px!important;
  height:auto!important;
  align-items:flex-start!important;
  padding-top:12px!important;
  padding-bottom:12px!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon,
html.touch-ui body .new-intake-sheet .intake-field-icon{width:24px!important;height:24px!important;min-width:24px!important;align-self:center!important}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon,
html.touch-ui body .new-intake-sheet .intake-field-icon .ui-icon{width:24px!important;height:24px!important}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side,
html.touch-ui body .new-intake-sheet .intake-field-side{width:22px!important;height:22px!important;align-self:center!important}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon,
html.touch-ui body .new-intake-sheet .intake-field-side .ui-icon{width:20px!important;height:20px!important}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
html.touch-ui body .new-intake-sheet .intake-app-field input,
html.touch-ui body .new-intake-sheet .intake-app-field select,
html.touch-ui body .new-intake-sheet .intake-app-field textarea{
  width:100%!important;
  min-width:0!important;
  font-size:16px!important;
  line-height:1.25!important;
  color:var(--ui-text)!important;
  background:transparent!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input::placeholder,
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea::placeholder,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input::placeholder,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea::placeholder,
html.touch-ui body .new-intake-sheet .intake-app-field input::placeholder,
html.touch-ui body .new-intake-sheet .intake-app-field textarea::placeholder{
  color:var(--ui-text)!important;
  opacity:1!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
html.touch-ui body .new-intake-sheet .intake-app-field textarea{
  min-height:62px!important;
  padding:0!important;
  line-height:1.35!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint,
html.touch-ui body .new-intake-sheet .intake-field-hint{
  margin:6px 6px 0!important;
  font-size:11px!important;
  line-height:1.35!important;
  color:var(--ui-text)!important;
}
html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn,
html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn,
html.touch-ui body .new-intake-sheet .intake-create-btn{
  left:16px!important;
  right:16px!important;
  bottom:calc(12px + env(safe-area-inset-bottom))!important;
  min-height:56px!important;
  height:56px!important;
  border-radius:22px!important;
  font-size:15px!important;
  gap:8px!important;
}
/* TelliApp v1.6.13 — intake-only mobile correction.
   IMPORTANT: scoped to .new-intake-sheet only. No dashboard/orders/inbox/clients/
   warehouse/finance/settings sizing is changed here. */

@media (max-width: 599px) {
  html.touch-ui body .new-intake-sheet,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet {
    overflow-x: hidden !important;
  }

  html.touch-ui body .new-intake-sheet .od-sheet,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    transform: none !important;
    overflow: hidden !important;
    background: var(--bg,#f3f6fb) !important;
  }

  /* Header: exactly one back arrow and a native-size title. */
  html.touch-ui body .new-intake-sheet .od-sheet-handle,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-handle,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-handle {
    display: none !important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-head,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 58px !important;
    height: 58px !important;
    padding: calc(4px + env(safe-area-inset-top)) 14px 4px !important;
    gap: 8px !important;
    box-sizing: border-box !important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-head h2,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-head h2 {
    order: 2 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 24px !important;
    line-height: 1.05 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-close,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close {
    order: 1 !important;
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-close::before,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::before {
    content: '←' !important;
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--ui-text) !important;
    font-size: 25px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    transform: none !important;
  }
  html.touch-ui body .new-intake-sheet .od-sheet-close::after,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::after,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-close::after {
    content: none !important;
    display: none !important;
  }

  html.touch-ui body .new-intake-sheet .od-sheet-body,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .od-sheet-body {
    position: absolute !important;
    top: 58px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 8px 14px calc(82px + env(safe-area-inset-bottom)) !important;
    box-sizing: border-box !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }
  html.touch-ui body .new-intake-sheet .new-intake-form,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .new-intake-form {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  /* CRM banner */
  html.touch-ui body .new-intake-sheet .intake-crm-status,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 62px !important;
    margin: 4px 0 16px !important;
    padding: 10px 12px !important;
    gap: 10px !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
  }
  html.touch-ui body .new-intake-sheet .intake-crm-badge,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    border-radius: 12px !important;
  }
  html.touch-ui body .new-intake-sheet .intake-crm-badge .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-badge .ui-icon {
    width: 23px !important;
    height: 23px !important;
  }
  html.touch-ui body .new-intake-sheet .intake-crm-status b,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-crm-status b {
    font-size: 13px !important;
    line-height: 1.28 !important;
    font-weight: 700 !important;
  }

  /* Sections */
  html.touch-ui body .new-intake-sheet .intake-section,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    gap: 10px !important;
    box-sizing: border-box !important;
  }
  html.touch-ui body .new-intake-sheet .intake-section h3,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section h3 {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 0 4px !important;
    gap: 10px !important;
    font-size: 20px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
  }
  html.touch-ui body .new-intake-sheet .intake-section-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon {
    display: grid !important;
    place-items: center !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    border-radius: 50% !important;
  }
  html.touch-ui body .new-intake-sheet .intake-section-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-section-icon .ui-icon {
    width: 24px !important;
    height: 24px !important;
  }
  html.touch-ui body .new-intake-sheet .intake-subhead,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-subhead,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-subhead {
    font-size: 13px !important;
  }

  html.touch-ui body .new-intake-sheet .intake-grid,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-grid,
  html.touch-ui body .new-intake-sheet .intake-client-grid,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-client-grid,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-client-grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 10px !important;
  }

  /* Material-like field: placeholder inside, small label only when focused/filled.
     Always-floating selects keep a small label on the border without overlap. */
  html.touch-ui body .new-intake-sheet .intake-app-field,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label {
    display: none !important;
    position: absolute !important;
    top: -7px !important;
    left: 16px !important;
    right: auto !important;
    z-index: 4 !important;
    max-width: calc(100% - 32px) !important;
    margin: 0 !important;
    padding: 0 5px !important;
    background: var(--bg,#f3f6fb) !important;
    color: var(--ui-brand-dark) !important;
    border-radius: 6px !important;
    font-size: 11px !important;
    line-height: 14px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field:focus-within > .intake-field-label,
  html.touch-ui body .new-intake-sheet .intake-app-field.has-value > .intake-field-label,
  html.touch-ui body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.touch-ui body .new-intake-sheet .intake-field-label.always-visible,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.has-value > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label.always-visible,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within > .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.has-value > .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label.always-visible {
    display: block !important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field.always-float,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field.always-float {
    padding-top: 0 !important;
  }

  html.touch-ui body .new-intake-sheet .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-input-shell {
    display: grid !important;
    grid-template-columns: 28px minmax(0,1fr) auto !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
    height: 58px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    gap: 12px !important;
    background: var(--ui-field-bg) !important;
    border: 1px solid var(--ui-field-border) !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    transform: none !important;
    overflow: visible !important;
    color:var(--ui-text)!important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:focus-within .intake-input-shell {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    border-color: var(--ui-brand) !important;
    transform: none !important;
    zoom: 1 !important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell {
    min-height: 82px !important;
    height: auto !important;
    align-items: flex-start !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  html.touch-ui body .new-intake-sheet .intake-field-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon {
    display: grid !important;
    place-items: center !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    align-self: center !important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-icon .ui-icon {
    width: 24px !important;
    height: 24px !important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-side,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side {
    display: grid !important;
    place-items: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    align-self: center !important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-side .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-side .ui-icon {
    width: 20px !important;
    height: 20px !important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field input,
  html.touch-ui body .new-intake-sheet .intake-app-field select,
  html.touch-ui body .new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field select,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--ui-text) !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
    transform: none !important;
    zoom: 1 !important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea {
    min-height: 54px !important;
    resize: none !important;
  }
  html.touch-ui body .new-intake-sheet .intake-app-field input::placeholder,
  html.touch-ui body .new-intake-sheet .intake-app-field textarea::placeholder,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input::placeholder,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea::placeholder,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field input::placeholder,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-app-field textarea::placeholder {
    color: var(--ui-text-muted) !important;
    opacity: 1 !important;
  }
  html.touch-ui body .new-intake-sheet .intake-field-hint,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-hint {
    margin: 6px 6px 0 !important;
    color: var(--ui-text-muted) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  /* Bottom action mirrors native app proportions. */
  html.touch-ui body .new-intake-sheet .intake-create-btn,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn {
    position: fixed !important;
    left: 14px !important;
    right: 14px !important;
    bottom: calc(10px + env(safe-area-inset-bottom)) !important;
    width: auto !important;
    max-width: none !important;
    min-height: 58px !important;
    height: 58px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    border-radius: 20px !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    z-index: 30 !important;
    transform: none !important;
    zoom: 1 !important;
  }

  /* Suggestions and problem cards keep the same width as the fields. */
  html.touch-ui body .new-intake-sheet .intake-suggestions,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggestions,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-suggestions,
  html.touch-ui body .new-intake-sheet .intake-problem-groups,
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-groups,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-problem-groups {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}
/* TelliApp v1.6.15 — phone intake visual parity fix.
   This file intentionally overrides older intake rules with equal/higher specificity.
   Scope: ONLY .new-intake-sheet on phones. */
@media (max-width: 599px) {
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
    background: var(--ui-bg) !important;
    transform: none !important;
    zoom: 1 !important;
  }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet > .od-sheet,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet > .od-sheet,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet > .od-sheet {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: var(--ui-bg) !important;
    transform: none !important;
    zoom: 1 !important;
  }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-handle,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-handle,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-handle { display: none !important; }

  /* Native-like compact header */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-head,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-head,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-head {
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    z-index: 20 !important;
    display: grid !important;
    grid-template-columns: 38px minmax(0,1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: calc(58px + env(safe-area-inset-top)) !important;
    min-height: calc(58px + env(safe-area-inset-top)) !important;
    padding: env(safe-area-inset-top) 16px 0 !important;
    margin: 0 !important;
    background: var(--ui-bg) !important;
    overflow: hidden !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-head h2,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-head h2,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-head h2 {
    grid-column: 2 !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--ui-text) !important;
    font-size: 22px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    transform: none !important;
    zoom: 1 !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-close,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-close,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-close {
    grid-column: 1 !important;
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
    transform: none !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-close::before,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-close::before,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-close::before {
    content: '←' !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: var(--ui-text) !important;
    font-size: 27px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    text-indent: 0 !important;
    transform: none !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-close::after,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-close::after,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-close::after { display:none !important; content:none !important; }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-body,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-body,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-body {
    position: absolute !important;
    top: calc(58px + env(safe-area-inset-top)) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px 14px calc(86px + env(safe-area-inset-bottom)) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: var(--ui-bg) !important;
    -webkit-overflow-scrolling: touch !important;
    transform: none !important;
    zoom: 1 !important;
  }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .new-intake-form,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .new-intake-form,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .new-intake-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* CRM status card */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-status,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-status,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-crm-status {
    display: grid !important;
    grid-template-columns: 42px minmax(0,1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 68px !important;
    margin: 0 0 8px !important;
    padding: 10px 12px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-badge,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-badge,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-crm-badge {
    width: 42px !important; height: 42px !important; min-width:42px !important; min-height:42px !important;
    display:grid !important; place-items:center !important; border-radius:13px !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-badge .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-badge .ui-icon,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-crm-badge .ui-icon { width:24px !important; height:24px !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-status b,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-crm-status b,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-crm-status b {
    min-width:0 !important; margin:0 !important; font-size:13px !important; line-height:1.32 !important; font-weight:700 !important;
    white-space:normal !important; overflow-wrap:break-word !important;
  }

  /* Sections */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-section {
    display:flex !important; flex-direction:column !important; gap:10px !important;
    width:100% !important; max-width:100% !important; min-width:0 !important;
    margin:0 0 16px !important; padding:0 !important; border:0 !important; background:transparent !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section h3,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section h3,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-section h3 {
    display:flex !important; align-items:center !important; gap:10px !important;
    width:100% !important; margin:0 0 4px !important; padding:0 !important;
    color:var(--ui-text) !important; font-size:20px !important; line-height:1.12 !important; font-weight:800 !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section-icon,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-section-icon {
    width:44px !important; height:44px !important; min-width:44px !important; min-height:44px !important;
    display:grid !important; place-items:center !important; border-radius:50% !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-section-icon .ui-icon,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-section-icon .ui-icon { width:24px !important; height:24px !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-subhead,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-subhead,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-subhead { font-size:13px !important; line-height:1.2 !important; font-weight:700 !important; }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-grid,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-grid,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-grid,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-client-grid,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-client-grid,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-client-grid {
    display:grid !important; grid-template-columns:minmax(0,1fr) !important; gap:10px !important;
    width:100% !important; max-width:100% !important; min-width:0 !important;
  }

  /* Fields */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field {
    position:relative !important; display:block !important; width:100% !important; max-width:100% !important; min-width:0 !important;
    margin:0 !important; padding:0 !important; transform:none !important; zoom:1 !important;
  }
  /* Remove old extra top padding that made select labels float far away. */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field.always-float,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field.always-float,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field.always-float { padding-top:0 !important; }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-input-shell,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-input-shell,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-look .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-look .intake-input-shell,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-look .intake-input-shell {
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:12px !important;
    width:100% !important; max-width:100% !important; min-width:0 !important;
    height:58px !important; min-height:58px !important;
    margin:0 !important; padding:0 16px !important;
    background:var(--ui-field-bg) !important;
    border:1px solid var(--ui-field-border) !important;
    border-radius:18px !important;
    box-shadow:none !important;
    overflow:visible !important;
    transform:none !important; zoom:1 !important;
    color:var(--ui-text)!important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within .intake-input-shell {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    margin:0 !important; padding-left:16px !important; padding-right:16px !important;
    border-color:var(--ui-brand) !important; transform:none !important; zoom:1 !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field:has(textarea) .intake-input-shell {
    height:88px !important; min-height:88px !important;
    align-items:center !important; padding-top:10px !important; padding-bottom:10px !important;
  }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-icon,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-field-icon {
    display:grid !important; place-items:center !important; width:26px !important; height:26px !important; min-width:26px !important; min-height:26px !important;
    margin:0 !important; align-self:center !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-icon .ui-icon,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-field-icon .ui-icon { width:24px !important; height:24px !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-side,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-side,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-field-side { width:22px !important; height:22px !important; min-width:22px !important; min-height:22px !important; align-self:center !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-side .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-side .ui-icon,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-field-side .ui-icon { width:20px !important; height:20px !important; }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field input,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field select,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field input,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field select,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field input,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field select,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea {
    display:block !important; width:100% !important; max-width:100% !important; min-width:0 !important;
    margin:0 !important; padding:0 !important; border:0 !important; outline:0 !important;
    background:transparent !important; color:var(--ui-text) !important; box-shadow:none !important;
    font-family:inherit !important; font-size:17px !important; line-height:1.25 !important; font-weight:500 !important;
    letter-spacing:0 !important; transform:none !important; zoom:1 !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field input,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field select,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field input,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field select,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field input,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field select { height:36px !important; min-height:36px !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea { min-height:52px !important; resize:none !important; overflow:auto !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field input::placeholder,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea::placeholder,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field input::placeholder,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea::placeholder,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field input::placeholder,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field textarea::placeholder {
    color:var(--ui-text) !important; opacity:1 !important; font-size:17px !important; line-height:1.25 !important; font-weight:500 !important;
  }

  /* Floating labels: tiny border labels, never large overlays. */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field > .intake-field-label,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field > .intake-field-label {
    display:none !important;
    position:absolute !important;
    z-index:8 !important;
    top:-7px !important;
    left:16px !important;
    right:auto !important;
    max-width:calc(100% - 32px) !important;
    margin:0 !important;
    padding:0 5px !important;
    background:var(--ui-card-bg) !important;
    color:var(--ui-brand-dark) !important;
    border-radius:4px !important;
    font-size:11px !important;
    line-height:14px !important;
    font-weight:500 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    transform:none !important;
    zoom:1 !important;
    pointer-events:none !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within > .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field.has-value > .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field.has-value > .intake-field-label,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field.always-float > .intake-field-label,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within > .intake-field-label,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field.has-value > .intake-field-label,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field.always-float > .intake-field-label { display:block !important; }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select .intake-input-shell,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select .intake-input-shell { padding-top:4px !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select select,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select select,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select select { font-size:17px !important; font-weight:600 !important; }

  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-hint,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-note,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-field-hint,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .od-sheet-note,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-field-hint,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .od-sheet-note {
    display:block !important; margin:5px 4px 0 !important; padding:0 !important;
    color:var(--ui-text) !important; font-size:12px !important; line-height:1.35 !important; font-weight:400 !important;
  }

  /* Problem cards */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-groups,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-groups,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-problem-groups { display:flex !important; flex-direction:column !important; gap:10px !important; width:100% !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-toggle,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-toggle,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-toggle {
    width:100% !important; min-height:66px !important; margin:0 !important; padding:10px 14px !important;
    border-radius:18px !important; gap:10px !important; transform:none !important;
  }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-icon,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-icon { width:42px !important; height:42px !important; min-width:42px !important; min-height:42px !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-copy b,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-copy b,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-copy b { font-size:15px !important; line-height:1.2 !important; }
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-copy small,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-copy small,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-problem-group-copy small { font-size:12px !important; line-height:1.2 !important; }

  /* Fixed create button matches native width/height. */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-create-btn,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet .intake-create-btn,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet .intake-create-btn {
    position:fixed !important;
    left:14px !important; right:14px !important; bottom:calc(10px + env(safe-area-inset-bottom)) !important;
    z-index:30 !important;
    width:auto !important; max-width:none !important;
    height:62px !important; min-height:62px !important;
    margin:0 !important; padding:0 18px !important;
    border-radius:18px !important;
    font-size:18px !important; line-height:1 !important; font-weight:800 !important;
    transform:none !important; zoom:1 !important;
  }

  /* Keyboard/focus may change visual viewport height, but NEVER width. */
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .od-sheet,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .od-sheet-body,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .new-intake-form,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-section,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-app-field,
  html.phone-shape-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-input-shell,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .od-sheet,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .od-sheet-body,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .new-intake-form,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-section,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-app-field,
  html.mobile-app-ui:not(.tablet-ui) body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-input-shell,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .od-sheet,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .od-sheet-body,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .new-intake-form,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-section,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-app-field,
  html.touch-ui body .od-sheet-backdrop.new-intake-sheet.intake-keyboard-active .intake-input-shell {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    margin-left:0 !important; margin-right:0 !important; transform:none !important; zoom:1 !important;
  }
}


/* v1.6.16 — final native-detail corrections requested from Samsung comparison.
   Only intake sheet. Loaded last to beat all legacy layers. */
@media (max-width: 599px) {
  html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status {
    grid-template-columns: 34px minmax(0,1fr) !important;
    min-height: 58px !important;
    padding: 10px 13px !important;
    gap: 10px !important;
    border: 0 !important;
    border-radius: 18px !important;
    box-shadow: none !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status.is-connected {
    background: var(--ui-success-soft) !important;
    color: var(--ui-success) !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status.is-offline,
  html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status.is-connecting {
    background: var(--ui-warning-soft) !important;
    color: var(--ui-warning) !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status .intake-crm-badge {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: currentColor !important;
    overflow: visible !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status .intake-crm-badge .ui-icon {
    width: 30px !important;
    height: 30px !important;
    stroke-width: 2.1 !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status b {
    font-size: 13px !important;
    line-height: 1.28 !important;
    font-weight: 700 !important;
    color: inherit !important;
  }

  /* Floating field labels. Idle = hidden. Focus/value = small text cut into top border. */
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field > .intake-field-label {
    display: none !important;
    position: absolute !important;
    z-index: 30 !important;
    top: -7px !important;
    left: 15px !important;
    width: auto !important;
    max-width: calc(100% - 30px) !important;
    height: 15px !important;
    margin: 0 !important;
    padding: 0 5px !important;
    background: var(--ui-bg) !important;
    color: var(--ui-brand-dark) !important;
    border: 0 !important;
    border-radius: 3px !important;
    font-size: 11px !important;
    line-height: 15px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    transform: none !important;
    pointer-events: none !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within > .intake-field-label,
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field.has-value > .intake-field-label,
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field.always-float > .intake-field-label {
    display: block !important;
  }

  /* Select labels are ALWAYS small, like the Android app. Never inherit huge legacy typography. */
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select > .intake-field-label,
  html body .od-sheet-backdrop.new-intake-sheet [data-field-name="device_type"] > .intake-field-label,
  html body .od-sheet-backdrop.new-intake-sheet [data-field-name="document_language"] > .intake-field-label {
    display: block !important;
    top: -7px !important;
    left: 15px !important;
    right: auto !important;
    width: auto !important;
    height: 15px !important;
    padding: 0 5px !important;
    font-size: 11px !important;
    line-height: 15px !important;
    font-weight: 500 !important;
    color: var(--ui-text-muted) !important;
    background: var(--ui-bg) !important;
    transform: none !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet [data-field-name="device_type"]:focus-within > .intake-field-label,
  html body .od-sheet-backdrop.new-intake-sheet [data-field-name="document_language"]:focus-within > .intake-field-label {
    color: var(--ui-brand-dark) !important;
  }

  /* Keep input content centered vertically and leave room for the tiny border label. */
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select .intake-input-shell {
    padding-top: 2px !important;
  }
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field-select select {
    padding-top: 0 !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
  }

  /* On focus only the active field changes border; dimensions never move. */
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field .intake-input-shell,
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field:focus-within .intake-input-shell,
  html body .od-sheet-backdrop.new-intake-sheet .intake-app-field.is-active .intake-input-shell {
    box-sizing: border-box !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }
}

/* (2.9.33: the dark-theme block that was here followed the PHONE setting (prefers-color-scheme), not the app theme — removed; the colours above use the --ui-* theme variables.) */
/* TelliApp v1.6.17 — intake field polish only.
   Scope: ONLY the New Intake sheet. Other screens are intentionally untouched. */

/* Stop Android Chrome text autosizing from turning the tiny border labels into large text. */
.new-intake-sheet #new-intake-form,
.new-intake-sheet #new-intake-form * {
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
}

/* Connection banner: reserve enough space for the cloud/offline icon so text never runs underneath it. */
.new-intake-sheet #new-intake-form .intake-crm-status {
  display: grid !important;
  grid-template-columns: 50px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 14px !important;
  padding-left: 14px !important;
  padding-right: 16px !important;
}
.new-intake-sheet #new-intake-form .intake-crm-badge {
  grid-column: 1 !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  overflow: hidden !important;
}
.new-intake-sheet #new-intake-form .intake-crm-badge .ui-icon {
  width: 27px !important;
  height: 27px !important;
  max-width: 27px !important;
  max-height: 27px !important;
}
.new-intake-sheet #new-intake-form .intake-crm-status b {
  grid-column: 2 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  line-height: 1.34 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

/* Every intake field is a stable anchor for its floating label. */
.new-intake-sheet #new-intake-form .intake-app-field {
  position: relative !important;
  overflow: visible !important;
}
.new-intake-sheet #new-intake-form .intake-input-shell {
  position: relative !important;
  overflow: visible !important;
}

/* Native-style floating labels.
   Hidden while an ordinary empty field is idle; shown on focus or when the field has a value. */
.new-intake-sheet #new-intake-form .intake-app-field > .intake-field-label {
  display: none !important;
  position: absolute !important;
  z-index: 30 !important;
  top: -7px !important;
  left: 18px !important;
  right: auto !important;
  width: auto !important;
  max-width: calc(100% - 36px) !important;
  height: 16px !important;
  min-height: 16px !important;
  margin: 0 !important;
  padding: 0 5px !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: var(--ui-bg) !important;
  color: var(--ui-brand-dark) !important;
  font-family: inherit !important;
  font-size: 11px !important;
  line-height: 16px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  transform: none !important;
  zoom: 1 !important;
  pointer-events: none !important;
  -webkit-text-size-adjust: none !important;
  text-size-adjust: none !important;
}
.new-intake-sheet #new-intake-form .intake-app-field:focus-within > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field.is-active > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field.has-value > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field.always-float > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field > .intake-field-label.always-visible {
  display: block !important;
}

/* Device type / document language are permanent, neutral, compact labels like Android. */
.new-intake-sheet #new-intake-form .intake-app-field.always-float > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field-select > .intake-field-label.always-visible {
  top: -7px !important;
  left: 18px !important;
  color: var(--ui-text-muted) !important;
  background: var(--ui-bg) !important;
  font-size: 11px !important;
  line-height: 16px !important;
  font-weight: 400 !important;
}
/* Keep select captions neutral even while tapped. */
.new-intake-sheet #new-intake-form .intake-app-field.always-float:focus-within > .intake-field-label {
  color: var(--ui-text-muted) !important;
}

/* When a normal field is active, remove the large idle placeholder; the small caption carries the name. */
.new-intake-sheet #new-intake-form .intake-app-field.is-active:not(.always-float) input::placeholder,
.new-intake-sheet #new-intake-form .intake-app-field.is-active:not(.always-float) textarea::placeholder {
  color: var(--ui-text-muted) !important;
}

/* Multiline fields: lock the icon vertically to the center, matching the Android form. */
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-input-shell {
  position: relative !important;
  align-items: center !important;
}
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-field-icon {
  position: absolute !important;
  left: 16px !important;
  top: 50% !important;
  width: 26px !important;
  height: 26px !important;
  margin: 0 !important;
  align-self: auto !important;
  transform: translateY(-50%) !important;
}
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) textarea {
  grid-column: 2 !important;
  align-self: center !important;
  min-height: 52px !important;
  padding: 0 !important;
}

/* Focus should change only the border — never size or horizontal position. */
.new-intake-sheet #new-intake-form .intake-app-field:focus-within .intake-input-shell,
.new-intake-sheet #new-intake-form .intake-app-field.is-active .intake-input-shell {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
  border-color: var(--ui-brand) !important;
}

/* (2.9.33: the dark-theme block that was here followed the PHONE setting (prefers-color-scheme), not the app theme — removed; the colours above use the --ui-* theme variables.) */

/* v1.6.18 — hard Android TextInputLayout parity for ALL intake fields. */
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float):focus-within > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float).is-active > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float).has-value > .intake-field-label {
  display: block !important;
  color: var(--ui-brand-dark) !important;
  background: var(--ui-bg) !important;
  font-size: 11px !important;
  line-height: 16px !important;
  font-weight: 500 !important;
  top: -8px !important;
  left: 18px !important;
  padding: 0 5px !important;
  z-index: 100 !important;
}

.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float):focus-within .intake-input-shell,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float).is-active .intake-input-shell {
  border-color: var(--ui-brand) !important;
  box-shadow: 0 0 0 1px var(--ui-brand) inset !important;
}

/* Once focused, the large field-name placeholder disappears; only example text may remain. */
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float):focus-within input::placeholder,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float):focus-within textarea::placeholder,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float).is-active input::placeholder,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float).is-active textarea::placeholder {
  color: var(--ui-text-muted) !important;
  opacity: 1 !important;
}

/* Select captions are static neutral micro-labels, never giant blue labels. */
.new-intake-sheet #new-intake-form .intake-app-field-select.always-float > .intake-field-label {
  display: block !important;
  color: var(--ui-text-muted) !important;
  background: var(--ui-bg) !important;
  font-size: 10.5px !important;
  line-height: 15px !important;
  font-weight: 400 !important;
  top: -7px !important;
  left: 18px !important;
  padding: 0 4px !important;
}

/* Keep multiline icons vertically centered in both idle and active states. */
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-field-icon {
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* (2.9.33: the dark-theme block that was here followed the PHONE setting (prefers-color-scheme), not the app theme — removed; the colours above use the --ui-* theme variables.) */
/* TelliApp v1.6.19 — REAL floating-label fix for New Intake only.
   Label is anchored inside the field shell, exactly on the border. */

.new-intake-sheet #new-intake-form .intake-input-shell {
  position: relative !important;
  overflow: visible !important;
}

/* Ordinary text fields: caption is hidden until focus or value. */
.new-intake-sheet #new-intake-form .intake-input-shell > .intake-field-label {
  display: none !important;
  position: absolute !important;
  z-index: 200 !important;
  top: -9px !important;
  left: 15px !important;
  right: auto !important;
  width: auto !important;
  max-width: calc(100% - 30px) !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
  padding: 0 5px !important;
  border: 0 !important;
  border-radius: 3px !important;
  background: var(--ui-bg) !important;
  color: var(--ui-brand-dark) !important;
  font-family: inherit !important;
  font-size: 11px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  transform: none !important;
  zoom: 1 !important;
  pointer-events: none !important;
  -webkit-text-size-adjust: none !important;
  text-size-adjust: none !important;
}

/* CSS focus-within makes this work even if JS state runs late. */
.new-intake-sheet #new-intake-form .intake-app-field:focus-within .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field.is-active .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field.has-value .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-app-field.always-float .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form .intake-input-shell > .intake-field-label.always-visible {
  display: block !important;
}

/* Blue border on active text fields, same geometry as idle. */
.new-intake-sheet #new-intake-form .intake-app-field:focus-within .intake-input-shell,
.new-intake-sheet #new-intake-form .intake-app-field.is-active .intake-input-shell {
  border-color: var(--ui-brand) !important;
  box-shadow: 0 0 0 1px var(--ui-brand) inset !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
}

/* Device type + document language: always-visible neutral micro-caption.
   Explicit light background prevents Android/Chrome dark-mode black pill. */
.new-intake-sheet #new-intake-form .intake-app-field-select .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form [data-field-name="device_type"] .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form [data-field-name="document_language"] .intake-input-shell > .intake-field-label {
  display: block !important;
  top: -8px !important;
  left: 15px !important;
  height: 16px !important;
  min-height: 16px !important;
  padding: 0 4px !important;
  border-radius: 2px !important;
  background: var(--ui-bg) !important;
  color: var(--ui-text-muted) !important;
  font-size: 10.5px !important;
  line-height: 16px !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

/* Select captions stay neutral when tapped. */
.new-intake-sheet #new-intake-form .intake-app-field-select:focus-within .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form [data-field-name="device_type"]:focus-within .intake-input-shell > .intake-field-label,
.new-intake-sheet #new-intake-form [data-field-name="document_language"]:focus-within .intake-input-shell > .intake-field-label {
  background: var(--ui-bg) !important;
  color: var(--ui-text-muted) !important;
}

/* Focused field name belongs on the border, not inside the field. */
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float):focus-within input::placeholder,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float):focus-within textarea::placeholder,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float).is-active input::placeholder,
.new-intake-sheet #new-intake-form .intake-app-field:not(.always-float).is-active textarea::placeholder {
  color: var(--ui-text-muted) !important;
  opacity: 1 !important;
}

/* =========================================================
   TelliApp v1.6.20 — focused field text spacing fix.
   Keep floated caption on the border and move editable text /
   active helper text safely below it, especially multiline fields.
   Scoped only to New Intake.
   ========================================================= */

/* Single-line active fields: keep entered value visually centred and
   clear of the floating caption cut-out. */
.new-intake-sheet #new-intake-form .intake-app-field:focus-within input,
.new-intake-sheet #new-intake-form .intake-app-field.is-active input,
.new-intake-sheet #new-intake-form .intake-app-field.has-value input {
  padding-top: 7px !important;
  padding-bottom: 0 !important;
}

/* Multiline fields were the remaining problem: their first line started
   directly under the floating caption. Reserve real space at the top. */
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-input-shell {
  align-items: flex-start !important;
}
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) textarea {
  box-sizing: border-box !important;
  padding-top: 30px !important;
  padding-bottom: 14px !important;
  line-height: 1.32 !important;
}
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-field-icon {
  margin-top: 27px !important;
  align-self: flex-start !important;
}

/* On focus/value keep the same internal geometry: no jump and no text
   hidden behind the border label. */
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea):focus-within textarea,
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea).is-active textarea,
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea).has-value textarea {
  padding-top: 30px !important;
}

/* The active hint/placeholder must start below the floating caption too. */
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) textarea::placeholder {
  line-height: 1.32 !important;
}

/* =========================================================
   TelliApp v1.6.21 — multiline native alignment fix.
   Fixes only multiline fields in New Intake:
   - icon stays vertically centered
   - idle placeholder is vertically centered
   - active/example text stays inside the field and below caption
   - no visible internal textarea scrollbar
   - no vertical jump between idle/focus/value states
   ========================================================= */

.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-input-shell {
  position: relative !important;
  height: 88px !important;
  min-height: 88px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  align-items: center !important;
  overflow: visible !important;
}

.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-field-icon {
  position: absolute !important;
  left: 16px !important;
  top: 50% !important;
  width: 26px !important;
  height: 26px !important;
  min-width: 26px !important;
  min-height: 26px !important;
  margin: 0 !important;
  align-self: auto !important;
  transform: translateY(-50%) !important;
  display: grid !important;
  place-items: center !important;
  z-index: 2 !important;
}

.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-field-icon .ui-icon {
  width: 24px !important;
  height: 24px !important;
}

.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) textarea {
  grid-column: 2 / 3 !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 66px !important;
  min-height: 66px !important;
  max-height: 66px !important;
  margin: 0 !important;
  padding: 20px 0 0 0 !important;
  border: 0 !important;
  outline: 0 !important;
  align-self: center !important;
  resize: none !important;
  overflow-y: hidden !important;
  overflow-x: hidden !important;
  line-height: 1.28 !important;
  background: transparent !important;
}

/* Keep the same internal geometry on focus and after a value is entered. */
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea):focus-within textarea,
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea).is-active textarea,
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea).has-value textarea {
  height: 66px !important;
  min-height: 66px !important;
  max-height: 66px !important;
  padding-top: 20px !important;
  padding-bottom: 0 !important;
  overflow-y: hidden !important;
}

.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) textarea::placeholder {
  line-height: 1.28 !important;
  opacity: 1 !important;
}

/* Long captions must sit cleanly on the border without covering field text. */
.new-intake-sheet #new-intake-form .intake-app-field:has(textarea) .intake-input-shell > .intake-field-label {
  top: -8px !important;
  left: 15px !important;
  height: 17px !important;
  min-height: 17px !important;
  line-height: 17px !important;
  padding: 0 5px !important;
  max-width: calc(100% - 30px) !important;
  background: var(--ui-bg) !important;
  z-index: 250 !important;
}
/* TelliApp v1.6.25 — phone client list/detail parity.
   Scoped only to phone layouts. Other screens, tablet and desktop are untouched. */

/* Client list: bring the Cards view back to the Android proportions. */
html.phone-shape-ui:not(.tablet-ui) .parity-search,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .parity-search {
  height: 58px !important;
  min-height: 58px !important;
  border-radius: 20px !important;
  padding: 0 18px !important;
  gap: 13px !important;
}
html.phone-shape-ui:not(.tablet-ui) .parity-search .ui-icon,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .parity-search .ui-icon {
  width: 28px !important;
  height: 28px !important;
}
html.phone-shape-ui:not(.tablet-ui) .parity-search input,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .parity-search input {
  font-size: 18px !important;
}
html.phone-shape-ui:not(.tablet-ui) .clients-list,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .clients-list {
  gap: 12px !important;
  margin-top: 18px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-card,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-card {
  min-height: 108px !important;
  border-radius: 24px !important;
  padding: 14px 18px !important;
  grid-template-columns: 62px 1fr 22px !important;
  gap: 15px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-avatar,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-avatar {
  width: 62px !important;
  height: 62px !important;
  border-radius: 20px !important;
  font-size: 20px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-copy b,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-copy b {
  font-size: 20px !important;
  line-height: 1.15 !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-copy em,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-copy em {
  font-size: 16px !important;
  line-height: 1.2 !important;
  margin-top: 4px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-copy small,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-copy small {
  font-size: 13px !important;
  line-height: 1 !important;
  padding: 7px 11px !important;
  margin-top: 8px !important;
  border-radius: 16px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-card > .ui-icon,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-card > .ui-icon {
  width: 22px !important;
  height: 22px !important;
}

/* Client detail: same density as the Android client profile/history screen. */
html.phone-shape-ui:not(.tablet-ui) .detail-top,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .detail-top {
  gap: 10px !important;
  margin: 0 0 14px !important;
}
html.phone-shape-ui:not(.tablet-ui) .detail-top h1,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .detail-top h1 {
  font-size: 22px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.35px !important;
}
html.phone-shape-ui:not(.tablet-ui) .plain-back,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .plain-back {
  padding: 3px !important;
}
html.phone-shape-ui:not(.tablet-ui) .plain-back .ui-icon,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .plain-back .ui-icon {
  width: 28px !important;
  height: 28px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-hero,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-hero {
  min-height: 112px !important;
  border-radius: 26px !important;
  padding: 20px 20px !important;
  gap: 14px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-hero-avatar,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-hero-avatar {
  width: 58px !important;
  height: 58px !important;
  flex: 0 0 58px !important;
  border-radius: 18px !important;
  font-size: 21px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-hero b,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-hero b {
  font-size: 20px !important;
  line-height: 1.12 !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-hero span,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-hero span {
  font-size: 15px !important;
  line-height: 1.2 !important;
  margin-top: 6px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-hero strong,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-hero strong {
  font-size: 14px !important;
  line-height: 1.25 !important;
  margin-top: 6px !important;
}
html.phone-shape-ui:not(.tablet-ui) .section-title,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .section-title {
  font-size: 24px !important;
  line-height: 1.15 !important;
  margin: 24px 0 15px !important;
}
html.phone-shape-ui:not(.tablet-ui) .client-history,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .client-history {
  gap: 12px !important;
}
html.phone-shape-ui:not(.tablet-ui) .history-order,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .history-order {
  min-height: 104px !important;
  border-radius: 24px !important;
  padding: 16px 18px !important;
  grid-template-columns: 60px 1fr 22px !important;
  gap: 15px !important;
}
html.phone-shape-ui:not(.tablet-ui) .history-icon,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .history-icon {
  width: 60px !important;
  height: 60px !important;
  border-radius: 19px !important;
}
html.phone-shape-ui:not(.tablet-ui) .history-icon .ui-icon,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .history-icon .ui-icon {
  width: 31px !important;
  height: 31px !important;
}
html.phone-shape-ui:not(.tablet-ui) .history-order span:nth-child(2) b,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .history-order span:nth-child(2) b {
  font-size: 18px !important;
  line-height: 1.15 !important;
}
html.phone-shape-ui:not(.tablet-ui) .history-order span:nth-child(2) em,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .history-order span:nth-child(2) em {
  font-size: 16px !important;
  line-height: 1.25 !important;
  margin-top: 5px !important;
}
html.phone-shape-ui:not(.tablet-ui) .history-order span:nth-child(2) small,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .history-order span:nth-child(2) small {
  font-size: 14px !important;
  line-height: 1.2 !important;
  margin-top: 4px !important;
}
html.phone-shape-ui:not(.tablet-ui) .history-order > .ui-icon,
html.touch-ui.mobile-app-ui:not(.tablet-ui) .history-order > .ui-icon {
  width: 22px !important;
  height: 22px !important;
}
/* TelliApp v1.6.26 — compact native scale for Clients / Orders / Inbox only.
   Warehouse, Finance, Intake, Settings, Home, tablet and desktop stay unchanged. */
@media (max-width: 599px) {
  /* Shared search/title density for Orders + Clients. */
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search),
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) {
    min-height:40px!important;
    margin:0 0 12px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) h1,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) h1 {
    font-size:21px!important;
    line-height:1.08!important;
    letter-spacing:-.2px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn {
    width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:3px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn .ui-icon {
    width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .parity-search,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search {
    height:52px!important;min-height:52px!important;border-radius:18px!important;padding:0 14px!important;gap:10px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .parity-search .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search .ui-icon {
    width:22px!important;height:22px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .parity-search input,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search input {
    font-size:15px!important;
  }

  /* ORDERS — same visual density as Warehouse / Finance. */
  html.mobile-app-ui:not(.tablet-ui) body .segmented,
  html.phone-shape-ui:not(.tablet-ui) body .segmented {
    height:44px!important;margin:12px 0 14px!important;border-radius:15px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .segmented button,
  html.phone-shape-ui:not(.tablet-ui) body .segmented button {
    font-size:12px!important;padding:0 5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .order-list,
  html.phone-shape-ui:not(.tablet-ui) body .order-list {gap:10px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .order-card,
  html.phone-shape-ui:not(.tablet-ui) body .order-card {
    min-height:148px!important;padding:14px 15px!important;border-radius:19px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .order-row,
  html.phone-shape-ui:not(.tablet-ui) body .order-row {gap:10px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .status-icon,
  html.phone-shape-ui:not(.tablet-ui) body .status-icon {
    width:44px!important;height:44px!important;min-width:44px!important;border-radius:13px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .status-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .status-icon .ui-icon {width:23px!important;height:23px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .grow b,
  html.phone-shape-ui:not(.tablet-ui) body .grow b {font-size:15px!important;line-height:1.12!important;}
  html.mobile-app-ui:not(.tablet-ui) body .grow a,
  html.phone-shape-ui:not(.tablet-ui) body .grow a {font-size:13px!important;margin-top:2px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .badge,
  html.phone-shape-ui:not(.tablet-ui) body .badge {font-size:10px!important;padding:6px 8px!important;border-radius:12px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .order-card h3,
  html.phone-shape-ui:not(.tablet-ui) body .order-card h3 {font-size:14px!important;margin:10px 0 3px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .order-card p,
  html.phone-shape-ui:not(.tablet-ui) body .order-card p {font-size:12.5px!important;line-height:1.3!important;min-height:0!important;}
  html.mobile-app-ui:not(.tablet-ui) body .order-card footer,
  html.phone-shape-ui:not(.tablet-ui) body .order-card footer {font-size:10.5px!important;margin-top:10px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .order-card footer .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .order-card footer .ui-icon {width:14px!important;height:14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab {
    min-width:148px!important;max-width:170px!important;height:48px!important;min-height:48px!important;border-radius:16px!important;padding:0 15px!important;font-size:13px!important;gap:8px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab-plus,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab-plus {font-size:27px!important;}

  /* CLIENTS — compact list and detail to Android/native proportions. */
  html.mobile-app-ui:not(.tablet-ui) body .clients-list,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list {gap:10px!important;margin-top:14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-card,
  html.phone-shape-ui:not(.tablet-ui) body .client-card {
    min-height:86px!important;border-radius:18px!important;padding:11px 13px!important;grid-template-columns:50px minmax(0,1fr) 18px!important;gap:10px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .client-avatar,
  html.phone-shape-ui:not(.tablet-ui) body .client-avatar {
    width:50px!important;height:50px!important;min-width:50px!important;border-radius:15px!important;font-size:16px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .client-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .client-copy b {font-size:15px!important;line-height:1.12!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-copy em,
  html.phone-shape-ui:not(.tablet-ui) body .client-copy em {font-size:12px!important;line-height:1.18!important;margin-top:3px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .client-copy small {font-size:10px!important;line-height:1!important;padding:5px 7px!important;margin-top:6px!important;border-radius:12px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-card>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .client-card>.ui-icon {width:17px!important;height:17px!important;}

  html.mobile-app-ui:not(.tablet-ui) body .detail-top,
  html.phone-shape-ui:not(.tablet-ui) body .detail-top {gap:8px!important;margin:0 0 14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .detail-top h1,
  html.phone-shape-ui:not(.tablet-ui) body .detail-top h1 {font-size:22px!important;line-height:1.05!important;}
  html.mobile-app-ui:not(.tablet-ui) body .plain-back .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .plain-back .ui-icon {width:24px!important;height:24px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-hero,
  html.phone-shape-ui:not(.tablet-ui) body .client-hero {min-height:108px!important;border-radius:22px!important;padding:15px 18px!important;gap:14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-hero-avatar,
  html.phone-shape-ui:not(.tablet-ui) body .client-hero-avatar {width:58px!important;height:58px!important;flex:0 0 58px!important;border-radius:18px!important;font-size:20px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-hero b,
  html.phone-shape-ui:not(.tablet-ui) body .client-hero b {font-size:19px!important;line-height:1.08!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-hero span,
  html.phone-shape-ui:not(.tablet-ui) body .client-hero span {font-size:14px!important;margin-top:4px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-hero strong,
  html.phone-shape-ui:not(.tablet-ui) body .client-hero strong {font-size:12px!important;margin-top:6px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .section-title,
  html.phone-shape-ui:not(.tablet-ui) body .section-title {font-size:20px!important;margin:18px 0 11px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .client-history,
  html.phone-shape-ui:not(.tablet-ui) body .client-history {gap:10px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .history-order,
  html.phone-shape-ui:not(.tablet-ui) body .history-order {min-height:86px!important;border-radius:18px!important;padding:12px 14px!important;grid-template-columns:48px minmax(0,1fr) 18px!important;gap:11px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .history-icon,
  html.phone-shape-ui:not(.tablet-ui) body .history-icon {width:48px!important;height:48px!important;border-radius:15px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .history-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .history-icon .ui-icon {width:25px!important;height:25px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .history-order span:nth-child(2) b,
  html.phone-shape-ui:not(.tablet-ui) body .history-order span:nth-child(2) b {font-size:14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .history-order span:nth-child(2) em,
  html.phone-shape-ui:not(.tablet-ui) body .history-order span:nth-child(2) em {font-size:12.5px!important;margin-top:3px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .history-order span:nth-child(2) small,
  html.phone-shape-ui:not(.tablet-ui) body .history-order span:nth-child(2) small {font-size:11px!important;margin-top:3px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .history-order>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .history-order>.ui-icon {width:17px!important;height:17px!important;}

  /* INBOX / APPOINTMENTS — same compact rhythm. */
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch {width:252px!important;max-width:72vw!important;margin:0 auto 30px!important;border-width:1px!important;border-radius:18px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch button,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch button {height:42px!important;min-height:42px!important;font-size:13px!important;gap:7px!important;padding:0 9px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch .ui-icon {width:18px!important;height:18px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-title,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-title {min-height:36px!important;margin:0 0 10px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-title h1,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-title h1 {font-size:20px!important;line-height:1.08!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-action,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-action {width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:3px!important;font-size:24px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-action .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-action .ui-icon {width:20px!important;height:20px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-add,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-add {font-size:25px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg {height:40px!important;margin:10px 0 12px!important;border-radius:14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg button,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg button {font-size:11px!important;padding:0 3px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-empty,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-empty {min-height:190px!important;font-size:14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-list,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-list,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-list,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-list {gap:9px!important;margin-top:12px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card {padding:11px 13px!important;border-radius:17px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card b,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card b,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card b,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card b {font-size:14px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card span,
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card small,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card span,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card small,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card span,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card small,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card span,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card small {font-size:11px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-fab {min-width:148px!important;height:48px!important;min-height:48px!important;padding:0 15px!important;border-radius:16px!important;font-size:13px!important;gap:8px!important;}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab-plus,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-fab-plus {font-size:27px!important;}
}
/* TelliApp v1.6.27 — second compact pass for Orders / Inbox / Clients + Order Detail.
   Intentionally does NOT touch Intake, Warehouse, Finance, Settings or Home. */
@media (max-width:599px){
  /* ORDERS LIST: another ~15% tighter than v186. */
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search),
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search){min-height:34px!important;margin-bottom:9px!important}
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) h1,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) h1{font-size:18px!important}
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn{width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important}
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(+ .parity-search) .icon-btn .ui-icon{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important}

  html.mobile-app-ui:not(.tablet-ui) body .parity-search,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search{height:46px!important;min-height:46px!important;border-radius:16px!important;padding:0 12px!important;gap:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .parity-search .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search .ui-icon{width:19px!important;height:19px!important}
  html.mobile-app-ui:not(.tablet-ui) body .parity-search input,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search input{font-size:13.5px!important}

  html.mobile-app-ui:not(.tablet-ui) body .segmented,
  html.phone-shape-ui:not(.tablet-ui) body .segmented{height:38px!important;margin:9px 0 11px!important;border-radius:13px!important}
  html.mobile-app-ui:not(.tablet-ui) body .segmented button,
  html.phone-shape-ui:not(.tablet-ui) body .segmented button{font-size:10.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-list,
  html.phone-shape-ui:not(.tablet-ui) body .order-list{gap:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card,
  html.phone-shape-ui:not(.tablet-ui) body .order-card{min-height:124px!important;padding:11px 12px!important;border-radius:17px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-row,
  html.phone-shape-ui:not(.tablet-ui) body .order-row{gap:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .status-icon,
  html.phone-shape-ui:not(.tablet-ui) body .status-icon{width:38px!important;height:38px!important;min-width:38px!important;border-radius:11px!important}
  html.mobile-app-ui:not(.tablet-ui) body .status-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .status-icon .ui-icon{width:20px!important;height:20px!important}
  html.mobile-app-ui:not(.tablet-ui) body .grow b,
  html.phone-shape-ui:not(.tablet-ui) body .grow b{font-size:13.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .grow a,
  html.phone-shape-ui:not(.tablet-ui) body .grow a{font-size:11.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .badge,
  html.phone-shape-ui:not(.tablet-ui) body .badge{font-size:9px!important;padding:5px 7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card h3,
  html.phone-shape-ui:not(.tablet-ui) body .order-card h3{font-size:12.5px!important;margin:7px 0 2px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card p,
  html.phone-shape-ui:not(.tablet-ui) body .order-card p{font-size:11px!important;line-height:1.25!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card footer,
  html.phone-shape-ui:not(.tablet-ui) body .order-card footer{font-size:9px!important;margin-top:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card footer .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .order-card footer .ui-icon{width:12px!important;height:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab{min-width:132px!important;max-width:150px!important;height:43px!important;min-height:43px!important;border-radius:15px!important;padding:0 13px!important;font-size:12px!important;gap:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab-plus,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab-plus{font-size:23px!important}

  /* CLIENTS LIST: a little tighter again. */
  html.mobile-app-ui:not(.tablet-ui) body .clients-list,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list{gap:8px!important;margin-top:11px!important}
  html.mobile-app-ui:not(.tablet-ui) body .client-card,
  html.phone-shape-ui:not(.tablet-ui) body .client-card{min-height:76px!important;border-radius:16px!important;padding:9px 11px!important;grid-template-columns:44px minmax(0,1fr) 16px!important;gap:9px!important}
  html.mobile-app-ui:not(.tablet-ui) body .client-avatar,
  html.phone-shape-ui:not(.tablet-ui) body .client-avatar{width:44px!important;height:44px!important;min-width:44px!important;border-radius:14px!important;font-size:14px!important}
  html.mobile-app-ui:not(.tablet-ui) body .client-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .client-copy b{font-size:13.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .client-copy em,
  html.phone-shape-ui:not(.tablet-ui) body .client-copy em{font-size:10.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .client-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .client-copy small{font-size:9px!important;padding:4px 6px!important;margin-top:5px!important}

  /* INBOX: smaller controls and typography. */
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch{width:228px!important;margin-bottom:24px!important;border-radius:16px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch button,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch button{height:37px!important;min-height:37px!important;font-size:11.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-title h1,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-title h1{font-size:18px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg{height:36px!important;margin:8px 0 10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg button,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg button{font-size:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-fab{min-width:132px!important;height:43px!important;min-height:43px!important;font-size:12px!important}

  /* ORDER DETAIL: legacy CSS made this screen dramatically oversized on phones.
     Bring the whole screen down to the same visual density as Warehouse / Finance. */
  html.phone-shape-ui:not(.tablet-ui) body .order-app-screen,
  html.mobile-app-ui:not(.tablet-ui) body .order-app-screen{max-width:none!important;padding-bottom:24px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-topbar,
  html.mobile-app-ui:not(.tablet-ui) body .od-topbar,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-top,
  html.mobile-app-ui:not(.tablet-ui) body .od-work-top{grid-template-columns:38px 1fr auto!important;gap:8px!important;margin-bottom:11px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-topbar h1,
  html.mobile-app-ui:not(.tablet-ui) body .od-topbar h1,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-top h1,
  html.mobile-app-ui:not(.tablet-ui) body .od-work-top h1{font-size:20px!important;letter-spacing:-.2px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-topbtn,
  html.mobile-app-ui:not(.tablet-ui) body .od-topbtn{width:34px!important;height:34px!important;padding:2px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-topbtn .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-topbtn .ui-icon{width:22px!important;height:22px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-hero,
  html.mobile-app-ui:not(.tablet-ui) body .od-hero{gap:12px!important;padding:14px 15px!important;border-radius:19px!important;flex-direction:row!important;align-items:center!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-icon{width:52px!important;height:52px!important;flex:0 0 52px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-icon .ui-icon{width:28px!important;height:28px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-copy>b,
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-copy>b{font-size:18px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-copy>span,
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-copy>span{font-size:13px!important;margin-top:2px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-pills,
  html.mobile-app-ui:not(.tablet-ui) body .od-pills{gap:5px!important;margin-top:7px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-pill,
  html.mobile-app-ui:not(.tablet-ui) body .od-pill{font-size:10px!important;padding:5px 8px!important;border-radius:12px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions,
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions{margin:13px 0 10px!important;gap:5px!important;padding-bottom:4px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions button,
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions button{min-width:68px!important;flex-basis:calc((100% - 20px)/5)!important;gap:4px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions button .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions button .ui-icon{width:48px!important;height:48px!important;padding:11px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions button span,
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions button span{font-size:10.5px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-tabs,
  html.mobile-app-ui:not(.tablet-ui) body .od-tabs{gap:6px!important;margin:7px -4px 12px!important;padding:0 4px 3px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-tabs button,
  html.mobile-app-ui:not(.tablet-ui) body .od-tabs button{height:42px!important;min-width:96px!important;padding:0 11px!important;border-radius:13px!important;font-size:12px!important;gap:5px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-tabs button .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-tabs button .ui-icon{width:15px!important;height:15px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-tab-content,
  html.mobile-app-ui:not(.tablet-ui) body .od-tab-content{margin-top:8px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-next-card,
  html.mobile-app-ui:not(.tablet-ui) body .od-next-card{min-height:92px!important;border-radius:19px!important;padding:13px 15px!important;grid-template-columns:48px 1fr 20px!important;gap:10px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-next-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-next-icon{width:46px!important;height:46px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-next-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-next-icon .ui-icon{width:25px!important;height:25px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-next-card span small,
  html.mobile-app-ui:not(.tablet-ui) body .od-next-card span small{font-size:11px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-next-card span b,
  html.mobile-app-ui:not(.tablet-ui) body .od-next-card span b{font-size:17px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-next-card span em,
  html.mobile-app-ui:not(.tablet-ui) body .od-next-card span em{font-size:11px!important}
  /* "Взять в работу" tile: same od-next-card shape, blue accent so it reads as a distinct action, not the next-step arrow. */
  html body .od-take-card .od-next-icon{background:var(--ui-brand-soft)!important;color:var(--ui-brand-dark)!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-card,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-card{padding:15px!important;border-radius:20px!important;margin-top:11px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-icon{width:46px!important;height:46px!important;min-width:46px!important;flex-basis:46px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-icon .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-icon .ui-icon{width:25px!important;height:25px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-line span b,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-line span b{font-size:16px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-line span small,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-line span small{font-size:11px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-line>strong,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-line>strong{font-size:18px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-card h3,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-card h3{font-size:16px!important;margin:8px 0 5px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-card>p,
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-card>p{font-size:12px!important;line-height:1.3!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats,
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats{gap:8px!important;margin:11px 0!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats>div,
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats>div{min-height:88px!important;border-radius:18px!important;gap:4px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats .ui-icon{width:23px!important;height:23px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats b,
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats b{font-size:17px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats small,
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats small{font-size:10px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-section,
  html.mobile-app-ui:not(.tablet-ui) body .od-section{border-radius:20px!important;margin-top:11px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-section-title,
  html.mobile-app-ui:not(.tablet-ui) body .od-section-title{grid-template-columns:34px 1fr 20px!important;padding:14px 15px!important;gap:9px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-section-title>.ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-section-title>.ui-icon{width:24px!important;height:24px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-section-title b,
  html.mobile-app-ui:not(.tablet-ui) body .od-section-title b{font-size:16px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-section-title .od-section-chevron,
  html.mobile-app-ui:not(.tablet-ui) body .od-section-title .od-section-chevron{width:18px!important;height:18px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-section-body,
  html.mobile-app-ui:not(.tablet-ui) body .od-section-body{padding:0 16px 15px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-section-body p,
  html.mobile-app-ui:not(.tablet-ui) body .od-section-body p{font-size:12.5px!important;line-height:1.35!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-primary-wide,
  html.mobile-app-ui:not(.tablet-ui) body .od-primary-wide,
  html.phone-shape-ui:not(.tablet-ui) body .od-secondary-wide,
  html.mobile-app-ui:not(.tablet-ui) body .od-secondary-wide{min-height:58px!important;border-radius:18px!important;font-size:15px!important;gap:9px!important;margin-top:11px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-row,
  html.mobile-app-ui:not(.tablet-ui) body .od-row{min-height:76px!important;border-radius:18px!important;padding:11px 14px!important;grid-template-columns:40px 1fr 19px!important;gap:10px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-row>.ui-icon:first-child,
  html.mobile-app-ui:not(.tablet-ui) body .od-row>.ui-icon:first-child{width:28px!important;height:28px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-row span b,
  html.mobile-app-ui:not(.tablet-ui) body .od-row span b{font-size:15px!important}
  html.phone-shape-ui:not(.tablet-ui) body .od-row span small,
  html.mobile-app-ui:not(.tablet-ui) body .od-row span small{font-size:11px!important;margin-top:3px!important}
}
/* TelliApp v1.6.28 — compact phone pass.
   Scope: Clients, Inbox, Orders and Lock screen only.
   Intake / Warehouse / Finance / Settings / Home are intentionally untouched. */
@media (max-width:599px){
  /* CLIENTS — keep the heading, reduce search and customer cards. */
  html.mobile-app-ui:not(.tablet-ui) body .clients-list,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list{
    gap:7px!important;
    margin-top:9px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .clients-list .client-card,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list .client-card{
    min-height:66px!important;
    height:auto!important;
    padding:7px 10px!important;
    border-radius:15px!important;
    grid-template-columns:38px minmax(0,1fr) 15px!important;
    gap:8px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .clients-list .client-avatar,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list .client-avatar{
    width:38px!important;height:38px!important;min-width:38px!important;
    border-radius:12px!important;font-size:12px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .clients-list .client-copy b,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list .client-copy b{font-size:12.5px!important;line-height:1.12!important}
  html.mobile-app-ui:not(.tablet-ui) body .clients-list .client-copy em,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list .client-copy em{font-size:9.5px!important;line-height:1.1!important;margin-top:2px!important}
  html.mobile-app-ui:not(.tablet-ui) body .clients-list .client-copy small,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list .client-copy small{font-size:8.5px!important;padding:3px 5px!important;margin-top:4px!important;border-radius:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .clients-list .client-card>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .clients-list .client-card>.ui-icon{width:15px!important;height:15px!important}

  /* Search field on Clients + Orders + Appointments. */
  html.mobile-app-ui:not(.tablet-ui) body .parity-search,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search{
    height:42px!important;min-height:42px!important;border-radius:15px!important;
    padding:0 11px!important;gap:7px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .parity-search .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search .ui-icon{width:17px!important;height:17px!important;min-width:17px!important}
  html.mobile-app-ui:not(.tablet-ui) body .parity-search input,
  html.phone-shape-ui:not(.tablet-ui) body .parity-search input{font-size:12.5px!important}

  /* ORDERS — smaller title, controls, list cards and FAB. */
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(~ .order-list),
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(~ .order-list){min-height:30px!important;margin-bottom:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(~ .order-list) h1,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(~ .order-list) h1{font-size:16px!important;line-height:1.05!important}
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(~ .order-list) .icon-btn,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(~ .order-list) .icon-btn{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:2px!important}
  html.mobile-app-ui:not(.tablet-ui) body .topbar:has(~ .order-list) .icon-btn .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .topbar:has(~ .order-list) .icon-btn .ui-icon{width:18px!important;height:18px!important}
  html.mobile-app-ui:not(.tablet-ui) body .segmented:has(+ .order-list),
  html.phone-shape-ui:not(.tablet-ui) body .segmented:has(+ .order-list){height:34px!important;margin:7px 0 9px!important;border-radius:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .segmented:has(+ .order-list) button,
  html.phone-shape-ui:not(.tablet-ui) body .segmented:has(+ .order-list) button{font-size:9.5px!important;padding:0 2px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-list,
  html.phone-shape-ui:not(.tablet-ui) body .order-list{gap:6px!important;padding-bottom:58px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card,
  html.phone-shape-ui:not(.tablet-ui) body .order-card{
    min-height:108px!important;padding:9px 10px!important;border-radius:15px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .status-icon,
  html.phone-shape-ui:not(.tablet-ui) body .status-icon{width:34px!important;height:34px!important;min-width:34px!important;border-radius:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .status-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .status-icon .ui-icon{width:18px!important;height:18px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card .grow b,
  html.phone-shape-ui:not(.tablet-ui) body .order-card .grow b{font-size:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card .grow a,
  html.phone-shape-ui:not(.tablet-ui) body .order-card .grow a{font-size:10.5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card .badge,
  html.phone-shape-ui:not(.tablet-ui) body .order-card .badge{font-size:8px!important;padding:4px 6px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card h3,
  html.phone-shape-ui:not(.tablet-ui) body .order-card h3{font-size:11px!important;margin:5px 0 2px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card p,
  html.phone-shape-ui:not(.tablet-ui) body .order-card p{font-size:9.8px!important;line-height:1.2!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-card footer,
  html.phone-shape-ui:not(.tablet-ui) body .order-card footer{font-size:8px!important;margin-top:5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab{
    min-width:120px!important;max-width:136px!important;height:39px!important;min-height:39px!important;
    border-radius:14px!important;padding:0 11px!important;font-size:11px!important;gap:6px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .order-add-fab-plus,
  html.phone-shape-ui:not(.tablet-ui) body .order-add-fab-plus{font-size:21px!important}

  /* INBOX — compact switch, search, filters and actual inquiry/appointment cells. */
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch{width:214px!important;max-width:68vw!important;margin:0 auto 19px!important;border-radius:15px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch button,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch button{height:34px!important;min-height:34px!important;font-size:10px!important;gap:5px!important;padding:0 7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-switch .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-switch .ui-icon{width:15px!important;height:15px!important}
  html.mobile-app-ui:not(.tablet-ui) body .inbox-title h1,
  html.phone-shape-ui:not(.tablet-ui) body .inbox-title h1{font-size:16px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg{height:33px!important;margin:7px 0 8px!important;border-radius:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-seg button,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-seg button{font-size:9px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-list,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-list,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-list,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-list{gap:6px!important;margin-top:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card{
    min-height:82px!important;height:auto!important;padding:9px 34px 9px 11px!important;border-radius:15px!important;
    gap:4px 8px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card b,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card b,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card b,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card b{font-size:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card strong,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card strong,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card strong,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card strong{font-size:10.5px!important;margin-top:2px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card p,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card p{font-size:10px!important;margin:3px 0 1px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card span,
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card small,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card span,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card small,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card span,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card small,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card span,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card small{font-size:9px!important;line-height:1.15!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-card>svg,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-card>svg,
  html.mobile-app-ui:not(.tablet-ui) body .inquiry-card>svg,
  html.phone-shape-ui:not(.tablet-ui) body .inquiry-card>svg{right:10px!important;width:15px!important;height:15px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-fab{min-width:120px!important;height:39px!important;min-height:39px!important;padding:0 11px!important;border-radius:14px!important;font-size:11px!important;gap:6px!important}
  html.mobile-app-ui:not(.tablet-ui) body .appointment-fab-plus,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-fab-plus{font-size:21px!important}

  /* LOCK — remove the old oversized phone treatment. */
  html.mobile-app-ui:not(.tablet-ui) body .lock-page,
  html.phone-shape-ui:not(.tablet-ui) body .lock-page{padding:22px 18px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card{width:min(430px,92vw)!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-hero,
  html.phone-shape-ui:not(.tablet-ui) body .lock-hero{width:94px!important;height:94px!important;margin-bottom:24px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-hero .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .lock-hero .ui-icon{width:44px!important;height:44px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card h1,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card h1{font-size:26px!important;line-height:1.08!important;margin:0 0 10px!important;letter-spacing:-.3px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card>p,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card>p{font-size:15px!important;line-height:1.25!important;margin:0 0 22px!important}
  html.mobile-app-ui:not(.tablet-ui) body .offline-note,
  html.phone-shape-ui:not(.tablet-ui) body .offline-note{font-size:10px!important;padding:6px 9px!important;border-radius:10px!important;margin:-10px 0 14px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-form,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-form{gap:12px!important}
  html.mobile-app-ui:not(.tablet-ui) body .floating-label>span,
  html.phone-shape-ui:not(.tablet-ui) body .floating-label>span{top:-8px!important;left:20px!important;font-size:12px!important;padding:0 5px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field{height:62px!important;border-width:2px!important;border-radius:20px!important;padding:0 15px!important;gap:10px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field>.ui-icon{width:22px!important;height:22px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-input,
  html.phone-shape-ui:not(.tablet-ui) body .pin-input{font-size:21px!important;letter-spacing:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-primary,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-primary{height:64px!important;border-radius:20px!important;font-size:16px!important;gap:9px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-primary .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-primary .ui-icon{width:21px!important;height:21px!important}
  html.mobile-app-ui:not(.tablet-ui) body .secondary-action,
  html.phone-shape-ui:not(.tablet-ui) body .secondary-action{height:60px!important;margin-top:13px!important;border-radius:19px!important;font-size:14px!important;gap:9px!important}
  html.mobile-app-ui:not(.tablet-ui) body .secondary-action .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .secondary-action .ui-icon{width:20px!important;height:20px!important}
  html.mobile-app-ui:not(.tablet-ui) body .logout-action,
  html.phone-shape-ui:not(.tablet-ui) body .logout-action{font-size:13px!important;margin-top:20px!important;gap:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .logout-action .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .logout-action .ui-icon{width:18px!important;height:18px!important}
}
/* TelliApp v1.6.29 — top action icon parity + compact lock screen.
   Deliberately scoped to phone top actions and lock screen only. */
@media (max-width:599px){
  /* Uniform compact top-right controls: Home / Orders / Inbox / Clients / Warehouse / Finance. */
  html.mobile-app-ui:not(.tablet-ui) body .topbar .icon-btn,
  html.phone-shape-ui:not(.tablet-ui) body .topbar .icon-btn,
  html.ios-phone-ui body .topbar .icon-btn,
  body .mobile-homebar .icon-btn{
    width:30px!important;height:30px!important;
    min-width:30px!important;min-height:30px!important;
    padding:3px!important;border-radius:10px!important;
    display:grid!important;place-items:center!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .topbar .icon-btn .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .topbar .icon-btn .ui-icon,
  html.ios-phone-ui body .topbar .icon-btn .ui-icon,
  body .mobile-homebar .icon-btn .ui-icon{
    width:21px!important;height:21px!important;
    min-width:21px!important;min-height:21px!important;
    stroke-width:2!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .top-actions,
  html.phone-shape-ui:not(.tablet-ui) body .top-actions,
  body .mobile-homebar .top-actions{gap:6px!important}
  body .mobile-homebar .message-button .notify-dot{
    width:13px!important;height:13px!important;right:-1px!important;top:-2px!important;
    font-size:7px!important;border-width:1.5px!important;
  }

  /* Orders / inbox heading refresh has the same compact action size. */
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-action,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-action{
    width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;
    padding:3px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-action .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-action .ui-icon{
    width:21px!important;height:21px!important;stroke-width:2!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .appointment-head-add,
  html.phone-shape-ui:not(.tablet-ui) body .appointment-head-add{
    font-size:20px!important;line-height:1!important;font-weight:400!important;
  }

  /* Hard lock-screen compact override: works even before phone classes are attached. */
  body .lock-page{
    min-height:100dvh!important;padding:18px 18px 24px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
  }
  body .lock-card{width:min(360px,92vw)!important;margin:0 auto!important}
  body .lock-hero{
    width:78px!important;height:78px!important;margin:0 auto 16px!important;
    border-radius:50%!important;
  }
  body .lock-hero .ui-icon{width:36px!important;height:36px!important;stroke-width:1.8!important}
  body .lock-card h1{font-size:23px!important;line-height:1.08!important;margin:0 0 8px!important;letter-spacing:-.2px!important}
  body .lock-card>p{font-size:13px!important;line-height:1.3!important;margin:0 0 18px!important}
  body .offline-note{font-size:9.5px!important;padding:5px 8px!important;border-radius:9px!important;margin:-7px 0 12px!important}
  body .unlock-form{gap:10px!important}
  body .floating-label>span{top:-7px!important;left:17px!important;font-size:10.5px!important;padding:0 5px!important}
  body .pin-field{
    height:52px!important;min-height:52px!important;border-width:2px!important;border-radius:17px!important;
    padding:0 13px!important;gap:8px!important;
  }
  body .pin-field>.ui-icon{width:19px!important;height:19px!important}
  body .pin-input{font-size:18px!important;letter-spacing:5px!important}
  body .unlock-primary{
    height:54px!important;min-height:54px!important;border-radius:17px!important;font-size:14px!important;gap:8px!important;
  }
  body .unlock-primary .ui-icon{width:18px!important;height:18px!important}
  body .secondary-action{
    height:51px!important;min-height:51px!important;margin-top:10px!important;border-radius:17px!important;font-size:12.5px!important;gap:7px!important;
  }
  body .secondary-action .ui-icon{width:18px!important;height:18px!important}
  body .logout-action{font-size:11.5px!important;margin-top:15px!important;gap:6px!important}
  body .logout-action .ui-icon{width:16px!important;height:16px!important}
}
/* TelliApp v1.6.30 — compact historical-device strip + true compact PIN */
@media (max-width: 600px){
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-device-list,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-device-list{
    display:block!important;
    margin-top:10px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-devices-title,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-devices-title{
    font-size:14px!important;
    line-height:1.2!important;
    margin:0 0 8px 2px!important;
    font-weight:800!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-strip,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-strip{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-inline:contain!important;
    scroll-snap-type:x proximity!important;
    padding:2px 2px 7px!important;
    margin:0 -2px!important;
    scrollbar-width:none!important;
    touch-action:pan-x!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-strip::-webkit-scrollbar,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-strip::-webkit-scrollbar{display:none!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:126px!important;
    max-width:190px!important;
    min-height:54px!important;
    height:54px!important;
    display:grid!important;
    grid-template-columns:30px minmax(0,1fr)!important;
    align-items:center!important;
    gap:7px!important;
    padding:7px 11px!important;
    border-radius:14px!important;
    border:1px solid var(--ui-field-border)!important;
    scroll-snap-align:start!important;
    white-space:nowrap!important;
    color:var(--ui-text)!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-icon,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-icon{
    width:28px!important;height:28px!important;border-radius:8px!important;font-size:16px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-copy,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device-copy{min-width:0!important;overflow:hidden!important}
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device b,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device b{
    font-size:13px!important;line-height:1.12!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device small,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device small{
    display:block!important;margin-top:2px!important;font-size:10px!important;line-height:1.05!important;color:var(--ui-text)!important;
  }

  /* PIN screen: deliberately about half the previous phone scale. */
  html.mobile-app-ui:not(.tablet-ui) body .lock-page,
  html.phone-shape-ui:not(.tablet-ui) body .lock-page{
    padding:10px 14px 20px!important;align-items:center!important;justify-content:center!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .lock-card,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card{max-width:320px!important;width:88vw!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-hero,
  html.phone-shape-ui:not(.tablet-ui) body .lock-hero{
    width:56px!important;height:56px!important;margin:8px auto 12px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .lock-hero .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .lock-hero .ui-icon{width:27px!important;height:27px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card h1,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card h1{font-size:20px!important;line-height:1.08!important;margin:0 0 6px!important}
  html.mobile-app-ui:not(.tablet-ui) body .lock-card>p,
  html.phone-shape-ui:not(.tablet-ui) body .lock-card>p{font-size:12px!important;line-height:1.2!important;margin:0 0 13px!important}
  html.mobile-app-ui:not(.tablet-ui) body .floating-label>span,
  html.phone-shape-ui:not(.tablet-ui) body .floating-label>span{top:-7px!important;left:14px!important;font-size:9px!important;padding:0 4px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field{height:46px!important;border-width:2px!important;border-radius:15px!important;padding:0 12px!important;gap:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field>.ui-icon{width:17px!important;height:17px!important}
  html.mobile-app-ui:not(.tablet-ui) body .pin-field .pin-input,
  html.phone-shape-ui:not(.tablet-ui) body .pin-field .pin-input{font-size:16px!important;letter-spacing:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-form,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-form{gap:8px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-primary,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-primary{height:48px!important;border-radius:15px!important;font-size:14px!important;gap:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .unlock-primary .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .unlock-primary .ui-icon{width:17px!important;height:17px!important}
  html.mobile-app-ui:not(.tablet-ui) body .secondary-action,
  html.phone-shape-ui:not(.tablet-ui) body .secondary-action{height:46px!important;margin-top:7px!important;border-radius:15px!important;font-size:12px!important;gap:7px!important}
  html.mobile-app-ui:not(.tablet-ui) body .secondary-action .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .secondary-action .ui-icon{width:16px!important;height:16px!important}
  html.mobile-app-ui:not(.tablet-ui) body .logout-action,
  html.phone-shape-ui:not(.tablet-ui) body .logout-action{margin:12px auto 0!important;font-size:11px!important;gap:6px!important}
}


/* TelliApp v1.6.31 — distinct historical devices + intake fixed-button layering */
@media (max-width: 600px){
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device{
    min-width:168px!important;
    max-width:235px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device small,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-existing-device small{
    overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  }

  /* The fixed Create button must always cover form labels while scrolling. */
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-create-btn{
    z-index:10000!important;
    isolation:isolate!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet .intake-field-label{
    z-index:3!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .new-intake-sheet #new-intake-form,
  html.phone-shape-ui:not(.tablet-ui) body .new-intake-sheet #new-intake-form{
    padding-bottom:92px!important;
  }
}

/* Bottom navigation icon optical parity */
.bottom-nav button[data-route="warehouse"] .ui-icon{
  transform:scale(.94);
}
.bottom-nav button[data-route="finance"] .ui-icon{
  transform:scale(.92);
}

/* Mobile heading parity */
@media (max-width:600px){
  html.mobile-app-ui:not(.tablet-ui) body .topbar h1,
  html.phone-shape-ui:not(.tablet-ui) body .topbar h1,
  html.mobile-app-ui:not(.tablet-ui) body .detail-top h1,
  html.phone-shape-ui:not(.tablet-ui) body .detail-top h1,
  html.mobile-app-ui:not(.tablet-ui) body .settings-head h1,
  html.phone-shape-ui:not(.tablet-ui) body .settings-head h1{
    font-size:20px!important;
    line-height:1.1!important;
    letter-spacing:-.2px!important;
  }
}


/* Acceptance act signature */
.acceptance-sheet-copy p{
  margin:0 0 14px;
  color:var(--ui-text);
  line-height:1.4;
}
.od-field-label{
  display:grid;
  gap:7px;
  font-weight:750;
  font-size:14px;
  color:var(--ui-text);
}
.od-sheet-select{
  width:100%;
  height:50px;
  border:1px solid var(--ui-field-border);
  border-radius:15px;
  background:var(--ui-field-bg);
  padding:0 13px;
  font:inherit;
  color:var(--ui-text);
}
.signature-panel{
  margin-top:14px;
  border:1px solid var(--ui-border);
  border-radius:18px;
  background:var(--ui-card-bg);
  padding:12px;
}
.signature-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.signature-panel-head button{
  border:0;
  background:transparent;
  color:var(--ui-brand-dark);
  font-weight:750;
}
.signature-canvas{
  display:block;
  width:100%;
  height:180px;
  border:1px dashed var(--ui-border);
  border-radius:14px;
  background:var(--ui-card-bg);
  touch-action:none;
}
.signature-panel small{
  display:block;
  margin-top:8px;
  color:var(--ui-text);
  font-size:12px;
}
@media(max-width:600px){
  .signature-canvas{height:150px}
}


/* Acceptance act full preview */
.acceptance-act-preview{display:grid;gap:12px}
.acceptance-act-title{display:grid;grid-template-columns:42px 1fr;gap:11px;align-items:center}
.acceptance-act-title>span{width:42px;height:42px;border-radius:13px;background:var(--ui-brand-soft);color:var(--ui-brand-dark);display:grid;place-items:center}
.acceptance-act-title>span .ui-icon{width:22px;height:22px}
.acceptance-act-title b,.acceptance-act-title small{display:block}
.acceptance-act-title b{font-size:17px}
.acceptance-act-title small{font-size:12px;color:var(--ui-text);margin-top:2px;line-height:1.3}
.acceptance-block{border:1px solid var(--ui-border);background:var(--ui-card-bg);border-radius:17px;padding:13px 14px}
.acceptance-block h3{font-size:15px;margin:0 0 10px}
.acceptance-kv{display:grid;grid-template-columns:minmax(95px,.72fr) 1.28fr;gap:7px 11px;align-items:start}
.acceptance-kv span{font-size:11px;color:var(--ui-text-muted)}
.acceptance-kv b{font-size:12.5px;font-weight:750;overflow-wrap:anywhere}
.acceptance-text-row+.acceptance-text-row{margin-top:10px}
.acceptance-text-row small{display:block;color:var(--ui-text-muted);font-size:11px;margin-bottom:3px}
.acceptance-text-row p{margin:0;font-size:12.5px;line-height:1.35;white-space:pre-wrap}
.acceptance-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.acceptance-block-head h3{margin:0}
.acceptance-add-photo{display:flex;align-items:center;gap:5px;color:var(--ui-brand-dark);font-size:12px;font-weight:800;cursor:pointer}
.acceptance-add-photo .ui-icon{width:17px;height:17px}
.acceptance-photo-list{display:grid;gap:8px}
.acceptance-photo{display:grid;grid-template-columns:54px 1fr 28px;gap:9px;align-items:center;border:1px solid var(--ui-border);border-radius:13px;padding:7px}
.acceptance-photo-thumb{width:54px;height:54px;border-radius:10px;background:var(--ui-card-bg);color:var(--ui-brand-dark);overflow:hidden;display:grid;place-items:center}
.acceptance-photo-thumb .ui-icon{width:23px;height:23px}
.acceptance-photo-thumb img{width:100%;height:100%;object-fit:cover}
.acceptance-photo-copy{min-width:0}
.acceptance-photo-copy b,.acceptance-photo-copy small{display:block}
.acceptance-photo-copy b{font-size:12.5px}
.acceptance-photo-copy small{font-size:10.5px;color:var(--ui-text);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acceptance-photo-delete{border:0;background:var(--ui-card-bg);color:var(--ui-text);border-radius:9px;width:28px;height:28px;font-size:19px;line-height:1}
.acceptance-photo-empty{min-height:88px;border:1px dashed var(--ui-border);border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:11px;color:var(--ui-text)}
.acceptance-photo-empty .ui-icon{width:25px;height:25px;margin-bottom:5px}
.acceptance-photo-empty b{font-size:12.5px;color:var(--ui-text)}
.acceptance-photo-empty small{font-size:10.5px;margin-top:2px}
.acceptance-confirmation p{margin:0;font-size:11.5px;line-height:1.4;color:var(--ui-text)}
.acceptance-summary-card{display:grid;gap:3px;border:1px solid var(--ui-border);border-radius:16px;padding:12px 14px;margin-top:10px}
.acceptance-summary-card b{font-size:15px}
.acceptance-summary-card span{font-size:13px}
.acceptance-summary-card small{font-size:11px;color:var(--ui-text-muted)}

/* Compact order workflow on phones */
@media(max-width:600px){
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next{
    min-height:94px!important;
    border-radius:19px!important;
    grid-template-columns:48px 1fr 20px!important;
    gap:10px!important;
    padding:14px 15px!important;
    margin-bottom:11px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next>div,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next>div{
    width:46px!important;height:46px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next>div .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next>div .ui-icon{
    width:25px!important;height:25px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next small,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next small{
    font-size:11px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next b,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next b{
    font-size:17px!important;margin-top:2px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next>.ui-icon{
    width:20px!important;height:20px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-heading,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-heading{
    font-size:19px!important;margin:18px 0 10px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-steps,
  html.phone-shape-ui:not(.tablet-ui) body .od-steps{
    gap:8px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step,
  html.phone-shape-ui:not(.tablet-ui) body .od-step{
    min-height:74px!important;
    border-radius:18px!important;
    grid-template-columns:40px 1fr 24px!important;
    gap:10px!important;
    padding:11px 13px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step>span,
  html.phone-shape-ui:not(.tablet-ui) body .od-step>span{
    width:38px!important;height:38px!important;font-size:16px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step>span .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-step>span .ui-icon{
    width:21px!important;height:21px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step b,
  html.phone-shape-ui:not(.tablet-ui) body .od-step b{
    font-size:15px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step small,
  html.phone-shape-ui:not(.tablet-ui) body .od-step small{
    font-size:11px!important;margin-top:2px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step>em .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-step>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-step>em .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-step>.ui-icon{
    width:21px!important;height:21px!important;
  }
}


/* Continuous intake camera */
.acceptance-add-photo{
  border:0;
  background:transparent;
  padding:4px 0;
}
.intake-camera-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  background:#05070a;
  color:#fff;
  display:grid;
  grid-template-rows:auto 1fr auto;
}
.intake-camera-top{
  min-height:64px;
  display:grid;
  grid-template-columns:48px 1fr auto;
  gap:10px;
  align-items:center;
  padding:10px 12px calc(8px + env(safe-area-inset-top));
  background:rgba(5,7,10,.94);
}
.intake-camera-top b,.intake-camera-top small{display:block}
.intake-camera-top b{font-size:16px}
.intake-camera-top small{font-size:11px;opacity:.72;margin-top:2px}
.intake-camera-close,.intake-camera-done{
  border:0;
  color:#fff;
  background:rgba(255,255,255,.1);
  border-radius:12px;
  min-height:40px;
  padding:0 12px;
  font:inherit;
  font-weight:750;
}
.intake-camera-close{
  width:40px;
  padding:0;
  font-size:26px;
  font-weight:400;
}
.intake-camera-done{background:var(--ui-brand)}
.intake-camera-stage{
  position:relative;
  overflow:hidden;
  display:grid;
  place-items:center;
  min-height:0;
}
.intake-camera-video{
  width:100%;
  height:100%;
  object-fit:cover;
  background:#000;
}
.intake-camera-flash{
  position:absolute;
  inset:0;
  background:var(--ui-card-bg);
  opacity:0;
  pointer-events:none;
}
.intake-camera-flash.show{animation:intakeCameraFlash .18s ease-out}
@keyframes intakeCameraFlash{
  0%{opacity:.75}
  100%{opacity:0}
}
.intake-camera-bottom{
  min-height:118px;
  display:grid;
  grid-template-columns:1fr 92px 1fr;
  align-items:center;
  gap:10px;
  padding:14px 18px calc(14px + env(safe-area-inset-bottom));
  background:rgba(5,7,10,.96);
}
.intake-camera-shutter{
  width:76px;
  height:76px;
  border-radius:50%;
  border:4px solid var(--ui-border);
  background:transparent;
  display:grid;
  place-items:center;
  margin:auto;
  padding:5px;
}
.intake-camera-shutter span{
  width:58px;
  height:58px;
  border-radius:50%;
  background:var(--ui-card-bg);
  display:block;
}
.intake-camera-shutter:active span{transform:scale(.92)}
.intake-camera-count,.intake-camera-upload{text-align:center}
.intake-camera-count b,.intake-camera-count small{display:block}
.intake-camera-count b{font-size:22px}
.intake-camera-count small,.intake-camera-upload small{font-size:10.5px;opacity:.75}
/* QR scanner viewfinder — same overlay shell as the intake camera, just a
   centered guide square instead of a shutter/bottom bar. */
.qr-scan-frame{
  position:absolute;
  inset:0;
  margin:auto;
  width:min(68vw,300px);
  height:min(68vw,300px);
  border:3px solid rgba(255,255,255,.85);
  border-radius:24px;
  box-shadow:0 0 0 2000px rgba(5,7,10,.45);
  pointer-events:none;
}


/* Draggable bottom sheets */
.od-sheet-handle{
  touch-action:none;
  cursor:grab;
}
.od-sheet-handle:active{cursor:grabbing}


/* Compact order detail parity */
@media(max-width:600px){
  html.mobile-app-ui:not(.tablet-ui) body .od-hero,
  html.phone-shape-ui:not(.tablet-ui) body .od-hero{
    min-height:auto!important;
    padding:10px 12px!important;
    border-radius:17px!important;
    gap:10px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-icon{
    width:40px!important;height:40px!important;min-width:40px!important;flex-basis:40px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-icon .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-icon .ui-icon{
    width:22px!important;height:22px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-copy>b,
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-copy>b{
    font-size:16px!important;line-height:1.05!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-hero-copy>span,
  html.phone-shape-ui:not(.tablet-ui) body .od-hero-copy>span{
    font-size:12px!important;margin-top:2px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-pills,
  html.phone-shape-ui:not(.tablet-ui) body .od-pills{
    gap:4px!important;margin-top:5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-pill,
  html.phone-shape-ui:not(.tablet-ui) body .od-pill{
    font-size:9px!important;padding:4px 7px!important;border-radius:10px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions,
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions{
    margin:8px 0 7px!important;
    gap:2px!important;
    padding:0 0 2px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions>.od-rail-track,
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions>.od-rail-track{
    gap:2px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions>.od-rail-track>button,
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions>.od-rail-track>button{
    width:56px!important;min-width:56px!important;flex:0 0 56px!important;gap:3px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions button .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions button .ui-icon{
    width:40px!important;height:40px!important;padding:9px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-quick-actions button span,
  html.phone-shape-ui:not(.tablet-ui) body .od-quick-actions button span{
    font-size:9px!important;line-height:1.05!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-tabs,
  html.phone-shape-ui:not(.tablet-ui) body .od-tabs{
    gap:4px!important;margin:4px 0 7px!important;padding:0 0 2px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-tabs>.od-rail-track,
  html.phone-shape-ui:not(.tablet-ui) body .od-tabs>.od-rail-track{
    gap:4px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-tabs>.od-rail-track>button,
  html.phone-shape-ui:not(.tablet-ui) body .od-tabs>.od-rail-track>button{
    height:34px!important;min-width:78px!important;width:auto!important;padding:0 9px!important;
    border-radius:11px!important;font-size:10.5px!important;gap:4px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-tabs button .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-tabs button .ui-icon{
    width:13px!important;height:13px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-tab-content,
  html.phone-shape-ui:not(.tablet-ui) body .od-tab-content{
    margin-top:5px!important;
  }
}

/* Reliable sheet grab area */
.od-sheet-handle{
  width:100%!important;
  height:24px!important;
  margin:0 auto 2px!important;
  background:transparent!important;
  position:relative;
  touch-action:none!important;
  user-select:none;
  -webkit-user-select:none;
}
.od-sheet-handle::after{
  content:"";
  position:absolute;
  left:50%;top:7px;
  width:46px;height:5px;
  transform:translateX(-50%);
  border-radius:999px;
  background:var(--ui-card-bg);
}

/* Full-screen intake photo preview */
.acceptance-photo{cursor:pointer}
.acceptance-photo-viewer{
  position:fixed;
  inset:0;
  z-index:12000;
  background:rgba(0,0,0,.94);
  display:grid;
  place-items:center;
  padding:18px;
}
.acceptance-photo-viewer img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  border-radius:12px;
}
.acceptance-photo-viewer button{
  position:absolute;
  top:calc(12px + env(safe-area-inset-top));
  right:14px;
  width:42px;height:42px;
  border:0;border-radius:50%;
  background:rgba(255,255,255,.16);
  color:#fff;font-size:28px;line-height:1;
}


/* Google Drive settings */
.drive-settings-screen{display:grid;gap:12px}
.drive-settings-intro{
  display:grid;grid-template-columns:44px 1fr;gap:11px;align-items:center;
  padding:12px 13px;border:1px solid var(--ui-border);border-radius:17px;background:var(--ui-card-bg);
}
.drive-settings-intro>span{
  width:44px;height:44px;border-radius:13px;display:grid;place-items:center;
  background:var(--ui-brand-soft);color:var(--ui-brand-dark);
}
.drive-settings-intro>span .ui-icon{width:23px;height:23px}
.drive-settings-intro b,.drive-settings-intro small{display:block}
.drive-settings-intro b{font-size:15px}
.drive-settings-intro small{font-size:11.5px;color:var(--ui-text);margin-top:2px}
.drive-settings-loading{
  min-height:78px;display:grid;place-items:center;border:1px solid var(--ui-border);
  border-radius:16px;background:var(--ui-card-bg);color:var(--ui-text);font-size:13px;
}
.drive-settings-status{
  display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:center;
  padding:12px 13px;border-radius:16px;border:1px solid var(--ui-border);background:var(--ui-card-bg);
}
.drive-settings-status-icon{
  width:40px;height:40px;border-radius:12px;display:grid;place-items:center;
}
.drive-settings-status-icon .ui-icon{width:21px;height:21px}
.drive-settings-status b,.drive-settings-status small{display:block}
.drive-settings-status b{font-size:14px}
.drive-settings-status small{font-size:11px;line-height:1.35;color:var(--ui-text);margin-top:3px}
.drive-settings-status.ok .drive-settings-status-icon{background:var(--ui-card-bg);color:var(--ui-text)}
.drive-settings-status.warn .drive-settings-status-icon{background:var(--ui-card-bg);color:var(--ui-text)}
.drive-settings-status.bad .drive-settings-status-icon{background:var(--ui-danger-soft);color:var(--ui-danger)}
.drive-settings-root{
  padding:11px 13px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-card-bg);
}
.drive-settings-root small,.drive-settings-root b{display:block}
.drive-settings-root small{font-size:10.5px;color:var(--ui-text)}
.drive-settings-root b{font-size:12.5px;margin-top:2px;overflow-wrap:anywhere}
.drive-settings-note{
  font-size:11.5px;line-height:1.45;color:var(--ui-text);padding:10px 12px;
  border-radius:13px;background:var(--ui-card-bg);
}
.drive-settings-screen .od-primary-wide,
.drive-settings-screen .od-secondary-wide{
  min-height:52px!important;border-radius:16px!important;font-size:14px!important;margin-top:0!important;
}


/* Order detail compact content parity */
.inline-spinner{
  width:17px;height:17px;display:inline-block;flex:0 0 17px;
  border:2px solid currentColor;border-right-color:transparent;border-radius:50%;
  animation:telliSpin .75s linear infinite;
}
@keyframes telliSpin{to{transform:rotate(360deg)}}
.od-primary-wide.is-busy{opacity:.88}

.agreement-form{display:grid;gap:11px}
.agreement-form label{display:grid;gap:6px;font-size:12px;font-weight:750;color:var(--ui-text)}
.agreement-form textarea,.agreement-form input,.agreement-form select{
  width:100%;box-sizing:border-box;border:1.5px solid var(--ui-field-border);border-radius:14px;
  background:var(--ui-field-bg);color:var(--ui-text);padding:11px 12px;font:inherit;font-size:13px;
}
.agreement-form textarea:focus,.agreement-form input:focus,.agreement-form select:focus{
  outline:none;border-color:var(--ui-brand);
}
.agreement-form textarea{resize:vertical;min-height:78px;line-height:1.35}
.agreement-form input,.agreement-form select{height:44px}
.agreement-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.agreement-card{display:grid;gap:11px}
.agreement-state{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center}
.agreement-state>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--ui-card-bg);color:var(--ui-text)}
.agreement-state>span .ui-icon{width:20px;height:20px}
.agreement-state small,.agreement-state b{display:block}
.agreement-state small{font-size:10.5px;color:var(--ui-text)}.agreement-state b{font-size:14px}
.agreement-kv{display:grid;grid-template-columns:96px 1fr;gap:7px 10px;border:1px solid var(--ui-border);border-radius:15px;padding:11px 12px}
.agreement-kv span{font-size:10.5px;color:var(--ui-text-muted)}
.agreement-kv b{font-size:12px;line-height:1.3;overflow-wrap:anywhere}

@media(max-width:600px){
  html.mobile-app-ui:not(.tablet-ui) body .od-tab-content,
  html.phone-shape-ui:not(.tablet-ui) body .od-tab-content{
    font-size:12px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-primary-wide,
  html.phone-shape-ui:not(.tablet-ui) body .od-primary-wide,
  html.mobile-app-ui:not(.tablet-ui) body .od-secondary-wide,
  html.phone-shape-ui:not(.tablet-ui) body .od-secondary-wide{
    min-height:44px!important;
    height:auto!important;
    padding:10px 12px!important;
    border-radius:14px!important;
    font-size:12.5px!important;
    line-height:1.15!important;
    gap:7px!important;
    margin:7px 0!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-primary-wide .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-primary-wide .ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-secondary-wide .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-secondary-wide .ui-icon{
    width:17px!important;height:17px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-section,
  html.phone-shape-ui:not(.tablet-ui) body .od-section{
    border-radius:15px!important;
    margin:7px 0!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-section-title,
  html.phone-shape-ui:not(.tablet-ui) body .od-section-title{
    min-height:43px!important;
    padding:9px 11px!important;
    gap:8px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-section-title>b,
  html.phone-shape-ui:not(.tablet-ui) body .od-section-title>b{
    font-size:12.5px!important;
    line-height:1.15!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-section-title>.ui-icon:not(.od-section-chevron),
  html.phone-shape-ui:not(.tablet-ui) body .od-section-title>.ui-icon:not(.od-section-chevron){
    width:17px!important;height:17px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-section-body,
  html.phone-shape-ui:not(.tablet-ui) body .od-section-body{
    padding:9px 11px 11px!important;
    font-size:12px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-kv,
  html.phone-shape-ui:not(.tablet-ui) body .od-kv{
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:6px 10px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-kv>span,
  html.phone-shape-ui:not(.tablet-ui) body .od-kv>span{
    font-size:10.5px!important;
    line-height:1.25!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-kv>b,
  html.phone-shape-ui:not(.tablet-ui) body .od-kv>b{
    font-size:12px!important;
    line-height:1.25!important;
    font-weight:700!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-subheading,
  html.phone-shape-ui:not(.tablet-ui) body .od-subheading{
    font-size:10.5px!important;
    margin:12px 2px 6px!important;
    letter-spacing:.45px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-muted,
  html.phone-shape-ui:not(.tablet-ui) body .od-muted{
    font-size:11px!important;
    line-height:1.35!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-task,
  html.phone-shape-ui:not(.tablet-ui) body .od-task{
    min-height:0!important;
    padding:9px 8px!important;
    gap:9px!important;
    border-radius:13px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-task-ring,
  html.phone-shape-ui:not(.tablet-ui) body .od-task-ring{
    width:25px!important;height:25px!important;min-width:25px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-task b,
  html.phone-shape-ui:not(.tablet-ui) body .od-task b{
    font-size:12.5px!important;
    line-height:1.25!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-task p,
  html.phone-shape-ui:not(.tablet-ui) body .od-task p{
    font-size:10.5px!important;line-height:1.3!important;margin-top:3px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats,
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats{
    gap:7px!important;margin:8px 0!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats>div,
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats>div{
    min-height:72px!important;padding:9px!important;border-radius:14px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats .ui-icon{
    width:18px!important;height:18px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats b,
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats b{
    font-size:14px!important;margin-top:3px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-mini-stats small,
  html.phone-shape-ui:not(.tablet-ui) body .od-mini-stats small{
    font-size:10px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-price-card,
  html.phone-shape-ui:not(.tablet-ui) body .od-price-card,
  html.mobile-app-ui:not(.tablet-ui) body .od-info-card,
  html.phone-shape-ui:not(.tablet-ui) body .od-info-card,
  html.mobile-app-ui:not(.tablet-ui) body .od-empty-card,
  html.phone-shape-ui:not(.tablet-ui) body .od-empty-card{
    min-height:0!important;
    padding:10px 11px!important;
    border-radius:14px!important;
    margin:7px 0!important;
    font-size:11.5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-price-card>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-price-card>.ui-icon,
  html.mobile-app-ui:not(.tablet-ui) body .od-info-card>.ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-info-card>.ui-icon{
    width:19px!important;height:19px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-price-card b,
  html.phone-shape-ui:not(.tablet-ui) body .od-price-card b,
  html.mobile-app-ui:not(.tablet-ui) body .od-info-card span,
  html.phone-shape-ui:not(.tablet-ui) body .od-info-card span{
    font-size:11.5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-price-card strong,
  html.phone-shape-ui:not(.tablet-ui) body .od-price-card strong{
    font-size:15px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-price-card small,
  html.phone-shape-ui:not(.tablet-ui) body .od-price-card small,
  html.mobile-app-ui:not(.tablet-ui) body .od-price-card em,
  html.phone-shape-ui:not(.tablet-ui) body .od-price-card em,
  html.mobile-app-ui:not(.tablet-ui) body .od-info-card small,
  html.phone-shape-ui:not(.tablet-ui) body .od-info-card small{
    font-size:9.8px!important;line-height:1.3!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-finance-head,
  html.phone-shape-ui:not(.tablet-ui) body .od-finance-head{
    margin:0 0 5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-inline-back,
  html.phone-shape-ui:not(.tablet-ui) body .od-inline-back{
    min-height:34px!important;font-size:12px!important;gap:5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-inline-back .ui-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-inline-back .ui-icon{
    width:16px!important;height:16px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-work-top,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-top{
    min-height:42px!important;
    margin-bottom:7px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-top h1,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-top h1{
    font-size:18px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next{
    min-height:72px!important;
    grid-template-columns:40px 1fr 18px!important;
    padding:10px 11px!important;
    border-radius:16px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next>div,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next>div{
    width:38px!important;height:38px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next b,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next b{
    font-size:14px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-next small,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-next small{
    font-size:9.8px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-card.work-price,
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-card.work-price{
    padding:10px 11px!important;border-radius:15px!important;margin:7px 0!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-card.work-price h3,
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-card.work-price h3{
    font-size:12.5px!important;margin:5px 0!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-summary-card.work-price p,
  html.phone-shape-ui:not(.tablet-ui) body .od-summary-card.work-price p{
    font-size:10.5px!important;line-height:1.3!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-work-heading,
  html.phone-shape-ui:not(.tablet-ui) body .od-work-heading{
    font-size:14px!important;margin:12px 0 7px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step,
  html.phone-shape-ui:not(.tablet-ui) body .od-step{
    min-height:58px!important;
    grid-template-columns:31px 1fr 20px!important;
    gap:8px!important;
    padding:8px 10px!important;
    border-radius:14px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step>span,
  html.phone-shape-ui:not(.tablet-ui) body .od-step>span{
    width:29px!important;height:29px!important;font-size:12px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step b,
  html.phone-shape-ui:not(.tablet-ui) body .od-step b{
    font-size:12px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-step small,
  html.phone-shape-ui:not(.tablet-ui) body .od-step small{
    font-size:9.5px!important;
  }

  html.mobile-app-ui:not(.tablet-ui) body .od-status-readonly,
  html.phone-shape-ui:not(.tablet-ui) body .od-status-readonly{
    min-height:58px!important;padding:9px 10px!important;border-radius:14px!important;gap:9px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-status-readonly-icon,
  html.phone-shape-ui:not(.tablet-ui) body .od-status-readonly-icon{
    width:36px!important;height:36px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-status-readonly small,
  html.phone-shape-ui:not(.tablet-ui) body .od-status-readonly small{
    font-size:9.5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .od-status-readonly strong,
  html.phone-shape-ui:not(.tablet-ui) body .od-status-readonly strong{
    font-size:12.5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .acceptance-summary-card,
  html.phone-shape-ui:not(.tablet-ui) body .acceptance-summary-card{
    padding:9px 11px!important;border-radius:14px!important;margin-top:7px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .acceptance-summary-card b,
  html.phone-shape-ui:not(.tablet-ui) body .acceptance-summary-card b{
    font-size:13px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .acceptance-summary-card span,
  html.phone-shape-ui:not(.tablet-ui) body .acceptance-summary-card span{
    font-size:11.5px!important;
  }
  html.mobile-app-ui:not(.tablet-ui) body .acceptance-summary-card small,
  html.phone-shape-ui:not(.tablet-ui) body .acceptance-summary-card small{
    font-size:9.8px!important;
  }
}


/* Prepayment workflow */
.prepayment-summary{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;
}
.prepayment-summary>div{
  min-width:0;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-card-bg);
  padding:10px 8px;text-align:center;
}
.prepayment-summary small,.prepayment-summary b{display:block}
.prepayment-summary small{font-size:9.8px;color:var(--ui-text)}
.prepayment-summary b{font-size:13px;margin-top:3px}
.prepayment-list{display:grid;gap:8px;margin:9px 0}
.prepayment-invoice-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;
  padding:10px 11px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-card-bg);
}
.prepayment-invoice-row b,.prepayment-invoice-row small{display:block}
.prepayment-invoice-row b{font-size:12.5px}
.prepayment-invoice-row small{font-size:10px;color:var(--ui-text);margin-top:2px}
.prepayment-invoice-actions{display:flex;gap:5px}
.prepayment-invoice-actions button{
  width:34px;height:34px;border:0;border-radius:10px;background:var(--ui-card-bg);color:var(--ui-brand-dark);
  display:grid;place-items:center;padding:0;
}
.prepayment-invoice-actions .ui-icon{width:17px;height:17px}
.prepayment-check{
  display:flex!important;grid-template-columns:none!important;align-items:center!important;
  gap:8px!important;font-size:11.5px!important;font-weight:650!important;
}
.prepayment-check input{width:22px!important;height:22px!important;min-height:0!important;margin:2px 0 0!important;padding:0!important;accent-color:var(--ui-brand)!important;flex:0 0 auto!important}
.prepayment-check:has(#appearance-reduce-motion){margin-bottom:18px}
.prepayment-check:has(input:disabled){opacity:.55}

/* Настройки → «Внешний вид» */
.appearance-section{margin:0 0 20px}
.appearance-section h3{font-size:12.5px;font-weight:750;color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0 0 9px}
.appearance-row{display:flex;flex-wrap:wrap;gap:8px}
.appearance-choice{border:1.5px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-text);border-radius:14px;padding:10px 15px;font-weight:650;font-size:14px}
.appearance-choice.active{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.appearance-swatches{display:flex;flex-wrap:wrap;gap:11px}
.appearance-swatch{width:40px;height:40px;flex:0 0 40px;border-radius:50%;border:2px solid transparent;display:grid;place-items:center;color:#fff;padding:0}
.appearance-swatch .ui-icon{width:18px;height:18px}
.appearance-swatch.active{border-color:var(--ui-text)}
/* Bare native <select> (only "Стартовый экран" today) had no colour of its own,
   so it fell back to the browser's own light control instead of our palette. */
#appearance-start-screen{display:block;width:100%;margin-top:6px;min-height:44px;border:1.5px solid var(--ui-field-border);border-radius:12px;padding:0 10px;font-size:15px;font-weight:600;background:var(--ui-field-bg);color:var(--ui-text)}


.prepayment-invoice-actions button.danger{
  background:var(--ui-danger-soft);color:var(--ui-danger);font-size:20px;line-height:1;
}




.document-language-audit-result{
  border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-card-bg);padding:10px 11px;
}
.document-language-audit-result>b,.document-language-audit-result>small{display:block}
.document-language-audit-result>b{font-size:12.5px}
.document-language-audit-result>small{font-size:10.5px;color:var(--ui-text);margin-top:3px}
.document-language-audit-list{display:grid;gap:6px;margin-top:8px}
.document-language-audit-list>div{
  display:grid;grid-template-columns:minmax(0,1fr);gap:2px;padding:7px 8px;
  border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-card-bg);
}
.document-language-audit-list strong{font-size:10.5px}
.document-language-audit-list span{font-size:9.5px;color:var(--ui-text);overflow-wrap:anywhere}


.prepayment-repair-price span b,
.prepayment-repair-price span em{
  display:block;
}
.prepayment-repair-price span b{
  font-size:15px;
  margin-top:2px;
}
.prepayment-repair-price span em{
  font-size:10.5px;
  color:var(--ui-text);
  margin-top:2px;
  font-style:normal;
}
.payment-paid-mark{
  width:34px;height:34px;border-radius:10px;background:var(--ui-card-bg);color:var(--ui-text);
  display:grid;place-items:center;
}
.payment-paid-mark .ui-icon{width:17px;height:17px}
.payment-history-list{display:grid;gap:7px}
.payment-history-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;
  padding:9px 10px;border:1px solid var(--ui-border);border-radius:13px;background:var(--ui-card-bg);
}
.payment-history-row b,.payment-history-row small{display:block}
.payment-history-row b{font-size:12.5px}
.payment-history-row small{font-size:9.8px;color:var(--ui-text);margin-top:2px}
.payment-history-row button{
  width:32px;height:32px;border:0;border-radius:10px;background:var(--ui-danger-soft);color:var(--ui-danger);
  font-size:20px;line-height:1;display:grid;place-items:center;
}


.payment-covered-mark{
  min-width:34px;height:34px;padding:0 7px;border-radius:10px;
  background:var(--ui-card-bg);color:var(--ui-text);
  display:grid;place-items:center;
  font-size:10px;font-weight:800;white-space:nowrap;
}
.od-step.locked[aria-disabled="true"]{
  cursor:default!important;
  pointer-events:auto;
}


.work-items-total{
  display:grid;gap:4px;padding:12px 13px;margin-bottom:10px;
  border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-card-bg);
}
.work-items-total span{display:flex;justify-content:space-between;align-items:end;gap:12px}
.work-items-total small,.work-items-total b,.work-items-total em{display:block}
.work-items-total small{font-size:10px;color:var(--ui-text)}
.work-items-total b{font-size:18px}
.work-items-total em{font-size:10px;color:var(--ui-text);font-style:normal}
.work-items-list{display:grid;gap:7px;margin-bottom:12px}
.work-item-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center;
  padding:10px 11px;border:1px solid var(--ui-border);border-radius:13px;background:var(--ui-card-bg);
}
.work-item-row.is-main{background:var(--ui-card-bg)}
.work-item-copy small,.work-item-copy b,.work-item-copy span{display:block}
.work-item-copy small{font-size:9.5px;color:var(--ui-text);margin-bottom:2px}
.work-item-copy b{font-size:12.5px}
.work-item-copy span{font-size:10px;color:var(--ui-text);margin-top:2px}
.work-item-row>strong{font-size:12.5px;white-space:nowrap}
.work-item-delete{
  width:30px;height:30px;border:0;border-radius:9px;background:var(--ui-danger-soft);color:var(--ui-danger);
  display:grid;place-items:center;font-size:18px;line-height:1;
}


/* TelliApp v1.6.46 — additional-services category picker */
.work-items-sheet .work-items-loading{
  display:flex;align-items:center;gap:12px;padding:16px 14px;
  border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-card-bg);
}
.work-items-sheet .work-items-loading>div{display:grid;gap:3px}
.work-items-sheet .work-items-loading b{font-size:14px}
.work-items-sheet .work-items-loading small{font-size:11px;color:var(--ui-text)}

.work-item-form .work-service-hint{
  margin:-2px 0 4px;color:var(--ui-text);font-size:11px;line-height:1.35;
}
.work-service-groups{display:grid;gap:9px;margin-bottom:4px}
.work-service-group{display:block}
.work-service-group-toggle{
  width:100%;min-height:72px;padding:12px 14px;
  display:grid;grid-template-columns:44px minmax(0,1fr) 28px;align-items:center;gap:11px;
  border:1px solid var(--ui-field-border);border-radius:18px;background:var(--ui-field-bg);color:var(--ui-text);
  text-align:left;cursor:pointer;box-sizing:border-box;
}
.work-service-group-icon{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:var(--ui-brand-soft);font-size:21px;
}
.work-service-group-copy{display:grid;gap:3px;min-width:0}
.work-service-group-copy b{font-size:13.5px;line-height:1.2}
.work-service-group-copy small{font-size:10.5px;color:var(--ui-text)}
.work-service-group-chevron{
  justify-self:end;font-size:31px;line-height:1;color:var(--ui-text);transition:transform .16s ease;
}
.work-service-group.open .work-service-group-chevron{transform:rotate(90deg)}
.work-service-options[hidden]{display:none!important}
.work-service-options:not([hidden]){display:grid;gap:7px;margin-top:7px}
.work-service-option{
  width:100%;min-height:56px;padding:10px 12px;
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;
  border:1px solid var(--ui-field-border);border-radius:15px;background:var(--ui-field-bg);color:var(--ui-text);
  text-align:left;cursor:pointer;
}
.work-service-option>span{display:grid;gap:3px}
.work-service-option b{font-size:12.5px;line-height:1.25}
.work-service-option small{font-size:10px;color:var(--ui-text)}
.work-service-option em{
  font-size:10px;font-style:normal;font-weight:800;color:var(--ui-brand-dark);
  background:var(--ui-brand-soft);border-radius:10px;padding:6px 8px;
}
.work-service-option.active{
  border-color:var(--ui-brand);background:var(--ui-brand-soft);box-shadow:0 0 0 2px rgba(52,152,232,.10);
}
.work-service-selected{
  display:grid;gap:2px;padding:10px 12px;border-radius:13px;background:var(--ui-brand-soft);color:var(--ui-text);
}
.work-service-selected[hidden]{display:none!important}
.work-service-selected small{font-size:9.5px;color:var(--ui-text)}
.work-service-selected b{font-size:12px}
.work-item-form button[type="submit"]:disabled{opacity:.5;cursor:default}

@media (max-width:700px){
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .od-sheet,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .od-sheet{
    width:100vw!important;max-width:none!important;max-height:100dvh!important;height:100dvh!important;
    border-radius:0!important;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .od-sheet-body,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .od-sheet-body{
    padding-left:18px!important;padding-right:18px!important;padding-bottom:calc(36px + env(safe-area-inset-bottom))!important;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-service-group-toggle,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-service-group-toggle{
    min-height:82px;padding:13px 16px;grid-template-columns:50px minmax(0,1fr) 30px;border-radius:20px;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-service-group-icon,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-service-group-icon{
    width:48px;height:48px;font-size:23px;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-service-group-copy b,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-service-group-copy b{font-size:16px}
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-service-group-copy small,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-service-group-copy small{font-size:12px}
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-service-option,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-service-option{
    min-height:68px;padding:12px 14px;border-radius:17px;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-service-option b,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-service-option b{font-size:15px}
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-service-option small,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-service-option small{font-size:12px}
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-item-row,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-item-row{
    padding:13px 14px;border-radius:16px;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-item-copy b,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-item-copy b{font-size:15px}
  html.mobile-app-ui:not(.tablet-ui) .work-items-sheet .work-item-copy span,
  html.phone-shape-ui:not(.tablet-ui) .work-items-sheet .work-item-copy span{font-size:12px}
}


/* TelliApp v1.6.47 — workflow tasks, stage loading and stable sheet drag */
.od-work-items-shortcut{margin:10px 0 14px}

.workflow-sheet-loading{
  min-height:78px;display:flex;align-items:center;gap:12px;
  padding:16px 14px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-card-bg);
}
.workflow-sheet-loading>div{display:grid;gap:3px}
.workflow-sheet-loading b{font-size:14px}
.workflow-sheet-loading small{font-size:11px;color:var(--ui-text)}

.od-task.workflow-auto{
  cursor:default;
}
.od-task.workflow-auto[aria-disabled="true"]{
  opacity:1;
}
.od-auto-task{
  display:block;margin-top:4px;color:var(--ui-text);font-size:10px;font-weight:600;
}
.od-task.workflow-auto.done .od-auto-task{color:var(--ui-text)}

.od-sheet-handle{
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.od-sheet.dragging{
  will-change:transform;
}
.od-sheet-backdrop{
  overscroll-behavior:contain;
}

@media (max-width:700px){
  html.mobile-app-ui:not(.tablet-ui) .workflow-sheet-loading,
  html.phone-shape-ui:not(.tablet-ui) .workflow-sheet-loading{
    min-height:94px;padding:18px 16px;border-radius:20px;
  }
  html.mobile-app-ui:not(.tablet-ui) .workflow-sheet-loading b,
  html.phone-shape-ui:not(.tablet-ui) .workflow-sheet-loading b{font-size:17px}
  html.mobile-app-ui:not(.tablet-ui) .workflow-sheet-loading small,
  html.phone-shape-ui:not(.tablet-ui) .workflow-sheet-loading small{font-size:13px}
  html.mobile-app-ui:not(.tablet-ui) .od-work-items-shortcut,
  html.phone-shape-ui:not(.tablet-ui) .od-work-items-shortcut{margin:14px 0 20px}
}


/* TelliApp v1.6.48 — custom work item entry */
.work-service-mode-head{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
}
.work-service-mode-head .work-service-hint{margin:0;flex:1}
.work-service-manual{
  border:0;border-radius:12px;background:var(--ui-brand-soft);color:var(--ui-brand-dark);
  padding:8px 10px;font:inherit;font-size:10.5px;font-weight:800;white-space:nowrap;
}
.work-custom-description{margin-top:2px}
.work-custom-description>small{
  display:block;margin-top:5px;color:var(--ui-text);font-size:10px;font-weight:500;line-height:1.35;
}
@media(max-width:700px){
  html.mobile-app-ui:not(.tablet-ui) .work-service-mode-head,
  html.phone-shape-ui:not(.tablet-ui) .work-service-mode-head{
    align-items:flex-start;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-service-manual,
  html.phone-shape-ui:not(.tablet-ui) .work-service-manual{
    font-size:12px;padding:10px 12px;border-radius:14px;
  }
  html.mobile-app-ui:not(.tablet-ui) .work-custom-description>small,
  html.phone-shape-ui:not(.tablet-ui) .work-custom-description>small{
    font-size:11.5px;
  }
}


/* TelliApp v1.6.49 — stale workflow revision banners */
.workflow-stale-banner{
  display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;
  margin:0 0 12px;padding:12px 13px;border:1px solid var(--ui-warning-border);border-radius:15px;
  background:var(--ui-card-bg);color:var(--ui-text);
}
.workflow-stale-banner>span{
  width:34px;height:34px;border-radius:11px;display:grid;place-items:center;
  background:var(--ui-warning-soft);color:var(--ui-warning);font-size:20px;font-weight:900;
}
.workflow-stale-banner>div{display:grid;gap:2px}
.workflow-stale-banner b{font-size:12.5px}
.workflow-stale-banner small{font-size:10.5px;line-height:1.35;color:var(--ui-text)}

@media(max-width:700px){
  html.mobile-app-ui:not(.tablet-ui) .workflow-stale-banner,
  html.phone-shape-ui:not(.tablet-ui) .workflow-stale-banner{
    grid-template-columns:44px minmax(0,1fr);gap:13px;
    padding:15px 16px;border-radius:19px;margin-bottom:16px;
  }
  html.mobile-app-ui:not(.tablet-ui) .workflow-stale-banner>span,
  html.phone-shape-ui:not(.tablet-ui) .workflow-stale-banner>span{
    width:42px;height:42px;border-radius:13px;font-size:23px;
  }
  html.mobile-app-ui:not(.tablet-ui) .workflow-stale-banner b,
  html.phone-shape-ui:not(.tablet-ui) .workflow-stale-banner b{font-size:15px}
  html.mobile-app-ui:not(.tablet-ui) .workflow-stale-banner small,
  html.phone-shape-ui:not(.tablet-ui) .workflow-stale-banner small{font-size:12.5px}
}


/* TelliApp v1.6.51 — agreement/payment consistency and easier sheet drag */
.od-sheet-handle{
  position:relative;
  min-height:26px;
  cursor:grab;
}
.od-sheet-handle::after{
  content:"";
  position:absolute;
  left:50%;
  top:9px;
  transform:translateX(-50%);
  width:48px;
  height:5px;
  border-radius:999px;
  background:currentColor;
  opacity:.28;
}
.od-sheet.dragging .od-sheet-handle{cursor:grabbing}

.payment-history-lock{
  width:30px;height:30px;border-radius:10px;
  display:grid;place-items:center;
  background:var(--ui-card-bg);color:var(--ui-text);flex:0 0 auto;
}
.payment-history-lock svg{width:15px;height:15px}

.prepayment-repair-price em{
  white-space:pre-line;
  line-height:1.35;
}

@media(max-width:700px){
  html.mobile-app-ui:not(.tablet-ui) .od-sheet-handle,
  html.phone-shape-ui:not(.tablet-ui) .od-sheet-handle{
    min-height:38px;
  }
  html.mobile-app-ui:not(.tablet-ui) .od-sheet-handle::after,
  html.phone-shape-ui:not(.tablet-ui) .od-sheet-handle::after{
    top:13px;width:58px;height:6px;
  }
  html.mobile-app-ui:not(.tablet-ui) .od-sheet-head,
  html.phone-shape-ui:not(.tablet-ui) .od-sheet-head{
    min-height:58px;
    touch-action:none;
  }
}

/* ==== Stage 1 (2.0.0): sync status, toasts, "in development" markers ==== */
button.sync-pill{border:0;color:inherit;font:inherit;font-weight:750;cursor:pointer}
.identity-card .sync-pill.sync-pending{background:rgba(255,196,64,.32)}
.identity-card .sync-pill.sync-error{background:rgba(220,38,38,.55)}
.identity-card .sync-pill.sync-offline{background:rgba(15,23,42,.30)}
.topbar .sync-pill.compact{margin-left:0;padding:8px 12px!important;font-size:13px!important;border-radius:18px!important;background:var(--ui-success-soft);color:var(--ui-success)}
.topbar .sync-pill.compact .ui-icon{width:18px!important;height:18px!important}
.topbar .sync-pill.compact.sync-pending{background:var(--ui-warning-soft);color:var(--ui-warning)}
.topbar .sync-pill.compact.sync-error{background:var(--ui-danger-soft);color:var(--ui-danger)}
.topbar .sync-pill.compact.sync-offline{background:var(--ui-card-bg);color:var(--ui-text)}
.topbar .top-actions{display:flex;align-items:center;gap:8px}

.dev-badge{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:10px;background:var(--ui-card-bg);color:var(--ui-text-muted);font-size:12px;font-weight:700;letter-spacing:.2px;vertical-align:middle;white-space:nowrap}
.is-dev{opacity:.62}
.is-dev .dev-badge{margin-left:0}
.od-row.is-dev{cursor:default}
.od-mini-stats .is-dev .dev-badge{margin-top:4px}
.od-dev-card{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:20px;background:var(--ui-card-bg);border:1px dashed var(--ui-border);margin-bottom:14px}
.od-dev-card>.ui-icon{width:28px;height:28px;flex:0 0 28px;color:var(--ui-text-muted)}
.od-dev-card b{display:block;font-size:17px;margin-bottom:6px}
.od-dev-card p{margin:0;color:var(--ui-text);font-size:15px;line-height:1.45}
.finance-methods{margin:0 0 8px}

#toast-stack{position:fixed;left:12px;right:12px;bottom:calc(var(--ui-nav-h,58px) + 16px + env(safe-area-inset-bottom,0px));z-index:9999;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}
.app-toast{pointer-events:auto;max-width:560px;width:100%;display:flex;align-items:center;gap:10px;padding:14px 14px 14px 18px;border-radius:16px;background:#1f2937;color:#fff;font-size:15px;line-height:1.35;box-shadow:0 8px 24px rgba(0,0,0,.22);animation:toast-in .18s ease-out}
.app-toast span{flex:1}
.app-toast button{border:0;background:rgba(255,255,255,.16);color:#fff;font-weight:750;border-radius:10px;padding:9px 12px;font-size:14px}
.app-toast .app-toast-close{background:transparent;font-size:20px;padding:4px 8px}
/* Fixed (not themed): the toast itself is always a solid dark panel with white
   text in both themes (like a snackbar) — --ui-success/warning/danger are the
   light, pastel "text-on-soft-card" shades in dark mode and would leave white
   toast text nearly unreadable on top of them. */
.app-toast-ok{background:#146c43}.app-toast-warn{background:#8a5a00}.app-toast-error{background:#b42318}
@keyframes toast-in{from{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}
html.desktop-ui #toast-stack{bottom:24px}

.sync-summary{display:flex;gap:14px;align-items:center;padding:16px;border-radius:18px;background:var(--ui-success-soft);color:var(--ui-success);margin-bottom:8px}
.sync-summary .ui-icon{width:28px;height:28px;flex:0 0 28px}
.sync-summary b{display:block;font-size:18px}.sync-summary small{display:block;font-size:14px;opacity:.85;margin-top:3px}
.sync-summary.sync-pending{background:var(--ui-warning-soft);color:var(--ui-warning)}.sync-summary.sync-error{background:var(--ui-danger-soft);color:var(--ui-danger)}.sync-summary.sync-offline{background:var(--ui-card-bg);color:var(--ui-text)}
.sync-heading{font-size:16px;margin:20px 0 8px;color:var(--ui-text)}
.sync-list{display:flex;flex-direction:column;gap:8px}
.sync-item{padding:12px 14px;border-radius:14px;background:var(--ui-card-bg);border:1px solid var(--ui-border)}
.sync-item b{display:block;font-size:15px}.sync-item small{display:block;color:var(--ui-text-muted);margin-top:3px}
.sync-item em{display:block;font-style:normal;color:var(--ui-danger);font-size:13px;margin-top:6px}
.sync-item.is-failed{border-color:var(--ui-danger-border);background:var(--ui-card-bg)}
.sync-note{color:var(--ui-text);font-size:14px;line-height:1.45;margin:4px 0}
.sync-actions{display:flex;flex-direction:column;gap:10px;margin-top:14px}

/* ==== 2.0.1 — единые размеры телефона (эталон: «Финансы», «Склад», Android) ====
   Все размеры задаются здесь переменными. Меняйте переменные, а не отдельные правила.
   #app в селекторе нужен, чтобы перекрыть старые слои правил с !important. */
:root{
  --ui-h1:20px;              /* заголовок экрана — как «Финансы»/«Склад» */
  --ui-title:17px;           /* главная строка карточки (клиент) */
  --ui-accent:15px;          /* номер заказа, телефон, устройство */
  --ui-body:14.5px;          /* описание */
  --ui-meta:12.5px;          /* подписи, дата, статус синхронизации */
  --ui-chip:12.5px;          /* бейджи статуса, счётчики */
  --ui-card-pad:16px;
  --ui-card-radius:20px;
  --ui-card-gap:12px;
  --ui-icon-box:48px;        /* иконка статуса / аватар клиента */
  --ui-control-h:52px;       /* поиск, переключатели */
  --ui-nav-h:58px;           /* нижняя панель над полоской Home; зона Home добавляется сверху */
  --ui-safe-top:env(safe-area-inset-top,0px);
  --ui-safe-bottom:env(safe-area-inset-bottom,0px);
  --ui-safe-left:env(safe-area-inset-left,0px);
  --ui-safe-right:env(safe-area-inset-right,0px);
  --ui-nav-icon:26px;
  --ui-nav-label:11px;       /* 6 вкладок: «Входящие» должно помещаться на iPhone SE */
}

/* ==== 2.7.2 — Внешний вид: тема, акцент, плотность, форма карточек, размер ====
   Настройки → «Внешний вид» (appearance:<username> в IndexedDB, per-profile).
   Значения по умолчанию здесь — ровно те цвета, что были зашиты в код раньше:
   меняются только когда сотрудник реально открывает настройки. background:var(--ui-card-bg),
   #667085 и т.п. по всему файлу заменены на эти переменные — это и даёт тёмной
   теме и акценту реальный охват, а не только несколько отдельных карточек. */
:root{
  --ui-bg:#f4f7fd;
  --ui-card-bg:#fff;
  --ui-text:#171b23;
  /* 2.9.33: #667085 → #5d6679 — #667085 was 4.2–4.4:1 on the soft tints (brand/danger/violet/graphite), below AA. */
  --ui-text-muted:#5d6679;
  --ui-border:#dbe2ec;
  /* 2.9.2: dedicated field colours — form fields need to actually stand out
     against a sheet, unlike --ui-border (subtle, used for card outlines
     against the page). Bug found 2026-09-28: an earlier automated sweep
     (see CLAUDE.md) accidentally rewrote the --ui-border/--ui-warning-border/
     --ui-danger-border DEFINITIONS above into self-references
     (--ui-border:var(--ui-border)) — an invalid, circular custom property,
     so every border using them silently vanished app-wide. Fixed here; the
     field variables below are new and separate from that bug. */
  --ui-field-bg:var(--ui-bg);
  --ui-field-border:#7688a0;
  --ui-brand:#3499e8;
  --ui-brand-dark:#1f6fb8;
  --ui-brand-soft:#e7f3ff;
  /* Status colours (badges, banners, checklists) — text-on-soft pairs verified
     at ≥4.5:1 (WCAG AA) with a proper gamma-corrected contrast formula. */
  --ui-success:#18794e;
  --ui-success-soft:#e7f8ee;
  --ui-success-border:#a7e3c1;
  --ui-warning:#8a5a00;
  --ui-warning-soft:#fff4d6;
  --ui-warning-border:#f0d59a;
  --ui-danger:#b42318;
  --ui-danger-fill:#b42318;        /* сплошная красная заливка под белый значок (стоп, запись) */
  --ui-danger-soft:#fdeceb;
  --ui-danger-border:#fecdca;
}
html[data-theme="dark"]{
  --ui-bg:#0e1420;
  --ui-card-bg:#1a2233;
  --ui-text:#e8ecf4;
  --ui-text-muted:#9aa5b8;
  --ui-border:#2c3548;
  --ui-field-bg:var(--ui-bg);
  --ui-field-border:#6577a0;
  /* Lighter than the light-theme value on purpose: #1f6fb8 only reaches 2.72:1
     against --ui-brand-soft here (fails AA). These three match the "telegram"
     entry of APPEARANCE_ACCENTS_DARK in app.js (same algorithm, all 8 accents) —
     JS overrides them per profile on unlock, this is just the pre-JS default. */
  --ui-brand:#359ae8;
  --ui-brand-dark:#51a8eb;
  --ui-brand-soft:#172b3b;
  --ui-success:#4ade80;
  --ui-success-soft:#14291d;
  --ui-success-border:#1f4a30;
  --ui-warning:#fbbf24;
  --ui-warning-soft:#2e2410;
  --ui-warning-border:#4a3915;
  --ui-danger:#f87171;
  --ui-danger-fill:#991b1b;        /* в тёмной теме --ui-danger светлый (текст), заливка кнопки — тёмно-красная */
  --ui-danger-soft:#341c1c;
  --ui-danger-border:#5a2626;
  color-scheme:dark;
}
/* Photos/QR/PDF/pdf.js canvases keep their real colours — a client photo or a
   printed document must look the same regardless of the app's own theme.
   The logo wordmark is excluded: it is themed separately in JS (light "Telli"
   text on dark background instead of a white box, see app.js applyAppearance). */
html[data-theme="dark"] img:not(.telli-logo),
html[data-theme="dark"] .pdf-pages canvas,
html[data-theme="dark"] .doc-frame,
html[data-theme="dark"] .qr svg,
html[data-theme="dark"] .qr-col svg,
html[data-theme="dark"] .qr-sign svg{background:#fff}
/* 2.9.33: the line above was rewritten to var(--ui-card-bg) by the 2.8.5 colour sweep — transparent PNGs (signature,
   company logo) and QR codes (black modules on transparent) then lay on the DARK card: invisible / unscannable.
   Same «paper» for the signature pads: the ink is dark (#111827 / #0f172a) in both themes, the saved PNG unchanged. */
.signature-canvas,.client-sign-canvas{background:#fff!important}

/* ==== 2.9.2 — общие переменные полей ввода (владелец, 2026-09-28) ====
   Раньше поля/списки/невыбранные кнопки-варианты почти везде красились
   фоном = фону подложки окна (--ui-card-bg на --ui-card-bg) и рамкой
   --ui-border (задумана для тонкой обводки карточек, не для заметной рамки
   поля — у неё было ~1.3:1 к белому, поле сливалось с окном). Новые
   переменные --ui-field-bg/--ui-field-border — специально для полей,
   рамка подобрана ≥3:1 к --ui-field-bg и к --ui-card-bg в обеих темах.
   Кодex переносит это на все окна (Согласование/Предоплата/Финальный счёт/
   Оплата/Акт выдачи/Настройки) через уже общие классы (.agreement-form,
   .od-part-form, .ui-select, .appearance-choice, .od-choice) — сюда новых
   правил добавлять не нужно, только переопределять сами переменные. */
input:not([type=checkbox]):not([type=radio]):focus,
textarea:focus,select:focus{outline:none;border-color:var(--ui-brand)!important}
input[type=checkbox],input[type=radio]{
  outline:1.5px solid var(--ui-field-border);outline-offset:1px;
}
/* 2.9.33: placeholders in both themes — the browser default (#757575) was 4.0:1 on the dark background. */
::placeholder{color:var(--ui-text-muted);opacity:1}
input[type=checkbox]:checked,input[type=radio]:checked{outline-color:var(--ui-brand)}

/* ---- density (2 presets; the rest of the app keeps using --ui-card-* already) ---- */
html.density-compact{--ui-card-pad:12px;--ui-card-gap:8px;--ui-control-h:46px}
/* ---- card shape (Android reference: 14/22/30px) ---- */
html.card-square{--ui-card-radius:14px}
html.card-soft{--ui-card-radius:22px}
html.card-round{--ui-card-radius:30px}
/* ---- text / icon size presets ---- */
html.text-small{--ui-h1:18px;--ui-title:15.5px;--ui-accent:13.5px;--ui-body:13px;--ui-meta:11.5px;--ui-chip:11.5px}
html.text-large{--ui-h1:23px;--ui-title:19px;--ui-accent:17px;--ui-body:16.5px;--ui-meta:14px;--ui-chip:14px}
html.icons-small{--ui-icon-box:40px;--ui-nav-icon:22px}
html.icons-large{--ui-icon-box:56px;--ui-nav-icon:30px}
/* ---- reduce motion: near-zero duration, not "none" — code waiting on
   transitionend/animationend (e.g. the photo-capture flash) still fires ---- */
html.reduce-motion *,html.reduce-motion *::before,html.reduce-motion *::after{
  animation-duration:0.001ms!important;animation-iteration-count:1!important;
  transition-duration:0.001ms!important;scroll-behavior:auto!important;
}

/* нижняя панель */
/* Фон панели идёт до самого края экрана, кнопки — ровно над полоской Home (без второго отступа). */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .bottom-nav{bottom:0!important;height:calc(var(--ui-nav-h) + var(--ui-safe-bottom))!important;padding:0 max(2px,var(--ui-safe-right)) var(--ui-safe-bottom) max(2px,var(--ui-safe-left))!important;align-items:stretch!important;box-sizing:border-box!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .bottom-nav button{gap:4px!important;padding:0!important;height:var(--ui-nav-h)!important;min-height:0!important;justify-content:center!important;align-self:start!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .bottom-nav .ui-icon{width:var(--ui-nav-icon)!important;height:var(--ui-nav-icon)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .bottom-nav small{font-size:var(--ui-nav-label)!important;line-height:1.15!important;font-weight:650!important;letter-spacing:-.2px!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
/* Вырез / Dynamic Island сверху и боковые вырезы в горизонтальном положении. */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .main{padding-top:calc(12px + var(--ui-safe-top))!important;padding-left:max(12px,var(--ui-safe-left))!important;padding-right:max(12px,var(--ui-safe-right))!important;padding-bottom:calc(var(--ui-nav-h) + 24px + var(--ui-safe-bottom))!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-add-fab,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-fab{bottom:calc(var(--ui-nav-h) + 16px + var(--ui-safe-bottom))!important;right:max(16px,var(--ui-safe-right))!important}

/* заголовки и поиск на списочных экранах */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .topbar h1{font-size:var(--ui-h1)!important;line-height:1.2!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .search,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .search.parity-search{height:var(--ui-control-h)!important;min-height:var(--ui-control-h)!important;max-height:var(--ui-control-h)!important;border-radius:16px!important;padding:0 14px!important;gap:10px!important;margin-bottom:var(--ui-card-gap)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .search input{font-size:16px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .search span,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .search .ui-icon{font-size:20px!important;width:22px!important;height:22px!important}

/* карточки заказов */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-list{gap:var(--ui-card-gap)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card{padding:var(--ui-card-pad)!important;border-radius:var(--ui-card-radius)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .order-row{gap:12px!important;align-items:center!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .status-icon{width:var(--ui-icon-box)!important;height:var(--ui-icon-box)!important;border-radius:14px!important;font-size:0!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .status-icon .ui-icon{width:24px!important;height:24px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .status-icon.blue{color:var(--ui-brand-dark)}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .status-icon.amber{color:var(--ui-warning)}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .status-icon.green{color:var(--ui-success)}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .grow b{font-size:var(--ui-title)!important;line-height:1.25!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .grow a{font-size:var(--ui-accent)!important;margin-top:3px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card .badge{font-size:var(--ui-chip)!important;padding:6px 10px!important;border-radius:12px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card h3{font-size:var(--ui-accent)!important;margin:14px 0 4px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card p{font-size:var(--ui-body)!important;line-height:1.4!important;margin:0!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .order-card footer{font-size:var(--ui-meta)!important;margin-top:12px!important}

/* клиенты */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .clients-list{display:grid!important;gap:var(--ui-card-gap)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .client-card{min-height:88px!important;padding:14px var(--ui-card-pad)!important;border-radius:var(--ui-card-radius)!important;gap:14px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .client-card .client-avatar{width:var(--ui-avatar,var(--ui-icon-box))!important;height:var(--ui-icon-box)!important;flex:0 0 var(--ui-icon-box)!important;border-radius:14px!important;font-size:16px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .client-card b{font-size:var(--ui-title)!important;line-height:1.25!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .client-card em{font-size:var(--ui-accent)!important;margin-top:2px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .client-card small{font-size:var(--ui-chip)!important;padding:4px 9px!important;border-radius:10px!important;margin-top:6px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .client-card>.ui-icon{width:22px!important;height:22px!important}

/* входящие */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inbox-switch{width:min(100%,380px)!important;margin:0 auto 16px!important;border-radius:24px!important;border-width:1.5px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inbox-switch button{min-height:46px!important;font-size:15px!important;gap:8px!important;padding:0 10px!important;white-space:nowrap!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inbox-switch .ui-icon{width:20px!important;height:20px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .segmented{margin:0 0 var(--ui-card-gap)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .segmented button{min-height:44px!important;font-size:14.5px!important;padding:8px 6px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-list,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-list{display:grid!important;gap:var(--ui-card-gap)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-card{padding:var(--ui-card-pad)!important;border-radius:var(--ui-card-radius)!important;min-height:84px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card b,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-card b{font-size:var(--ui-title)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card span,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-card span{font-size:var(--ui-meta)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card strong,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-card strong{font-size:var(--ui-accent)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card small,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-card small,html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-card p{font-size:var(--ui-body)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .appointment-empty{font-size:16px!important}

/* статус синхронизации рядом с кнопкой обновления */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .topbar .top-actions{gap:10px!important;flex-shrink:0!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .topbar .sync-pill.compact{position:static!important;white-space:nowrap!important;width:auto!important;min-width:0!important;max-width:none!important;flex:0 0 auto!important;overflow:visible!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .topbar .sync-pill.compact span{overflow:visible!important;max-width:none!important}

html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card{display:block!important;width:100%!important;position:relative!important;padding-right:44px!important;text-align:left!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card div{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:baseline!important;gap:10px!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card time{font-size:var(--ui-meta)!important;color:var(--ui-text)!important;white-space:nowrap!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card span{display:block!important;margin-top:3px!important;color:var(--ui-text)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card strong{display:block!important;margin-top:8px!important;font-weight:600!important;color:var(--ui-text)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card strong em{font-style:normal!important;color:var(--ui-text)!important;font-weight:500!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-card>.ui-icon{position:absolute!important;right:16px!important;top:50%!important;width:20px!important;height:20px!important;transform:translateY(-50%)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body #app .inquiry-unread{position:absolute!important;right:40px!important;bottom:16px!important;min-width:22px!important;height:22px!important;padding:0 6px!important;border-radius:11px!important;background:var(--ui-brand)!important;color:#fff!important;font-style:normal!important;font-size:12px!important;font-weight:750!important;display:grid!important;place-items:center!important}
.sync-item-head{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}
.sync-item-head .ui-icon{width:20px;height:20px;flex:0 0 20px;color:var(--ui-text-muted)}
.sync-item-details{margin-top:12px;padding-top:12px;border-top:1px solid var(--ui-border)}
.sync-item-details dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0 0 10px;font-size:14px}
.sync-item-details dt{color:var(--ui-text-muted)}.sync-item-details dd{margin:0;font-weight:600;word-break:break-word}
.sync-item-error{margin:0 0 12px;font-size:14px;line-height:1.45;color:var(--ui-danger)}
.sync-item-actions{display:flex;flex-direction:column;gap:8px}
.sync-item-actions .danger{color:var(--ui-danger)!important;border-color:var(--ui-danger-border)!important}
.sync-item-actions .danger[data-armed="1"]{background:var(--ui-danger)!important;color:#fff!important;border-color:#b42318!important}
/* Нижние панели (sheets) не заходят под вырез сверху, содержимое не прячется под полоску Home. */
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body .od-sheet{max-height:calc(100dvh - var(--ui-safe-top) - 8px)!important}
html:is(.mobile-app-ui,.phone-shape-ui):not(.tablet-ui) body .od-sheet-body{padding-bottom:calc(20px + var(--ui-safe-bottom))!important}

/* ==== 2.1.0 — приёмка без интернета: акт, фото, подпись клиента ==== */
.od-pending-banner{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;margin:10px 0 12px;padding:12px 14px;border-radius:16px;background:var(--ui-warning-soft);color:var(--ui-warning);cursor:pointer}
.od-pending-banner.is-failed{background:var(--ui-danger-soft);color:var(--ui-danger)}
.od-pending-banner>.ui-icon{width:24px;height:24px;flex:0 0 24px}
.od-pending-banner span{flex:1;min-width:0}.od-pending-banner b{display:block;font-size:15px}.od-pending-banner small{display:block;font-size:13px;opacity:.9;margin-top:2px}
.od-pending-banner>.ui-icon:last-child{width:18px;height:18px;flex-basis:18px}

.intake-chips{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 14px}
.intake-chips button{border:1px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-text);border-radius:18px;padding:8px 12px;font-size:14px;font-weight:600}
.intake-chips button.active{background:var(--ui-brand-soft);border-color:var(--ui-brand);color:var(--ui-brand-dark)}

.acceptance-sheet .od-sheet{height:calc(100dvh - env(safe-area-inset-top,0px) - 8px)!important;max-height:none!important}
.acc-loading{display:flex;align-items:center;gap:12px;padding:32px 8px;font-size:16px}
.acc-wrap{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:14px;padding-bottom:12px}
.acc-card{background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:20px;padding:16px}
.acc-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.acc-card-head h3{display:flex;align-items:center;gap:8px;margin:0;font-size:17px}
.acc-card-head h3 .ui-icon{width:22px;height:22px;color:var(--ui-brand-dark)}
.acc-count{min-width:28px;height:28px;border-radius:14px;background:var(--ui-brand-soft);color:var(--ui-brand-dark);font-weight:800;display:grid;place-items:center;font-size:14px}
.acc-muted{color:var(--ui-text-muted);font-size:14.5px;margin:0 0 12px}
.acc-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-bottom:12px}
.acc-photo{position:relative;aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--ui-card-bg);display:grid;place-items:center}
.acc-photo img{width:100%;height:100%;object-fit:cover;display:block}
.acc-photo>span .ui-icon{width:26px;height:26px;color:var(--ui-text-muted)}
.acc-photo em{position:absolute;left:6px;bottom:6px;font-style:normal;font-size:12px;font-weight:800;background:rgba(255,255,255,.92);border-radius:9px;padding:2px 6px;color:var(--ui-warning)}
.acc-photo em.ok{color:var(--ui-success)}
.acc-photo button{position:absolute;top:6px;right:6px;width:30px;height:30px;border-radius:15px;border:0;background:rgba(15,23,42,.72);color:#fff;font-size:18px;line-height:1}
.acc-photo-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.acc-photo-actions .od-primary-wide,.acc-photo-actions .od-secondary-wide{margin:0!important}
.acc-langs,.client-sign-langs{display:flex;flex-wrap:wrap;gap:8px}
.acc-langs button,.client-sign-langs button{border:1px solid var(--ui-field-border);background:var(--ui-field-bg);border-radius:14px;padding:10px 16px;font-size:15px;font-weight:700;color:var(--ui-text);min-height:44px}
.acc-langs button.active,.client-sign-langs button.active{background:var(--ui-brand);border-color:var(--ui-brand);color:#fff}
.acc-hand-btn{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:14px;padding:18px;border-radius:18px;background:linear-gradient(90deg,var(--ui-brand),var(--ui-brand));color:#fff;cursor:pointer;margin-bottom:12px}
.acc-hand-btn .ui-icon{width:32px;height:32px;flex:0 0 32px}
.acc-hand-btn b{display:block;font-size:19px}.acc-hand-btn small{display:block;font-size:14px;opacity:.9;margin-top:3px}
.acc-sign-done{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border-radius:16px;background:var(--ui-success-soft);color:var(--ui-success);margin-bottom:12px}
.acc-sign-done>.ui-icon{width:28px;height:28px}
.acc-sign-done span{flex:1;min-width:160px}.acc-sign-done b{display:block;font-size:16px}.acc-sign-done small{display:block;color:var(--ui-text)}
.acc-sign-done .od-secondary-wide{width:auto!important;margin:0!important;padding:0 16px!important;min-height:42px!important}
.acc-check{display:flex;gap:12px;align-items:flex-start;padding:10px 2px 14px;font-size:15px;font-weight:600;color:var(--ui-text)}
.acc-check input{width:22px;height:22px;margin:2px 0 0;flex:0 0 22px}
.acc-check small{display:block;font-weight:400;color:var(--ui-text-muted);font-size:13px;margin-top:3px}
.acc-save:disabled{opacity:.45}
.acc-status{display:flex;align-items:center;gap:12px;padding:16px;border-radius:18px}
.acc-status.is-done{background:var(--ui-success-soft);color:var(--ui-success)}.acc-status.is-pending{background:var(--ui-warning-soft);color:var(--ui-warning)}
.acc-status>.ui-icon{width:30px;height:30px;flex:0 0 30px}.acc-status b{display:block;font-size:17px}.acc-status small{display:block;font-size:14px;margin-top:3px}

/* the act document (sheet preview and client mode) */
.acc-doc{color:var(--ui-text);font-size:15px;line-height:1.45}
.acc-doc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;border-bottom:2px solid var(--ui-text);margin-bottom:6px}
.acc-doc-head small{display:block;color:var(--ui-text-muted);font-size:12.5px;text-transform:uppercase;letter-spacing:.3px}
.acc-doc-head h2{margin:2px 0 0;font-size:20px;line-height:1.2}
.acc-doc-date{text-align:right;white-space:nowrap}.acc-doc-date b{font-size:15px}
.acc-doc section{padding:12px 0;border-bottom:1px solid var(--ui-border)}
.acc-doc section:last-child{border-bottom:0}
.acc-doc h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.4px;color:var(--ui-brand-dark)}
.acc-kv{display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:10px;padding:3px 0}
.acc-kv span,.acc-text span{color:var(--ui-text-muted)}
.acc-kv b{font-weight:650;word-break:break-word}
.acc-text{padding:3px 0}.acc-text span{display:block;font-size:13.5px}.acc-text p{margin:2px 0 0;white-space:pre-line;font-weight:600}
.acc-doc-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:6px}
.acc-doc-photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;display:block}
.acc-confirm p{margin:0;color:var(--ui-text)}
.acc-signature-img{display:block;max-width:100%;height:120px;object-fit:contain;background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:12px}
.acc-signed small{display:block;margin-top:6px;color:var(--ui-text-muted)}

/* client mode: full screen, large text, only language + signature */
html.client-sign-open,html.client-sign-open body{overflow:hidden}
.client-sign-overlay{position:fixed;inset:0;z-index:10050;background:var(--ui-bg);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px)}
.client-sign-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px max(14px,env(safe-area-inset-right,0px)) 10px max(14px,env(safe-area-inset-left,0px));background:var(--ui-card-bg);border-bottom:1px solid var(--ui-border)}
.client-sign-back{border:0;background:transparent;color:var(--ui-text-muted);font-size:15px;font-weight:600;padding:8px 4px}
.client-sign-langs button{min-height:40px;padding:8px 12px;font-size:14px}
.client-sign-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}
.client-sign-inner{max-width:820px;margin:0 auto;padding:16px max(16px,env(safe-area-inset-left,0px)) calc(24px + env(safe-area-inset-bottom,0px))}
.client-sign-inner .acc-doc{background:var(--ui-card-bg);border-radius:20px;padding:20px;font-size:18px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.client-sign-inner .acc-doc-head h2{font-size:24px}
.client-sign-inner .acc-doc h3{font-size:15px}
.client-sign-inner .acc-text span{font-size:15px}
.client-sign-pad{margin-top:16px;background:var(--ui-card-bg);border-radius:20px;padding:16px}
.client-sign-pad-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.client-sign-pad-head b{font-size:20px}
.client-sign-clear{border:1px solid var(--ui-border);background:var(--ui-card-bg);border-radius:12px;padding:10px 16px;font-size:16px;font-weight:600}
.client-sign-canvas{display:block;width:100%;height:min(42vh,320px);border:2px dashed var(--ui-field-border);border-radius:16px;background:var(--ui-card-bg);touch-action:none}
.client-sign-submit{display:block;width:100%;margin-top:16px;min-height:62px;border:0;border-radius:18px;background:var(--ui-success);color:#fff;font-size:21px;font-weight:800}
.client-sign-submit:disabled{background:var(--ui-card-bg);color:var(--ui-text-muted);border:1px solid var(--ui-border)}
.client-sign-thanks{margin:auto;max-width:520px;padding:32px 24px;text-align:center}
.client-sign-thanks .ui-icon{width:72px;height:72px;color:var(--ui-success);margin:0 auto 16px}
.client-sign-thanks h2{font-size:26px;margin:0 0 10px}.client-sign-thanks p{font-size:19px;color:var(--ui-text);margin:0 0 24px}
@media (min-width:700px){
  .client-sign-inner .acc-doc{padding:28px 32px;font-size:19px}
  .acc-photo-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
  .acceptance-sheet .od-sheet{max-width:900px;margin:0 auto}
}
.client-sign-top{flex-wrap:nowrap}
.client-sign-back{font-size:30px!important;line-height:1;padding:4px 10px!important;color:var(--ui-text-muted)!important}
.client-sign-langs{flex-wrap:nowrap;overflow-x:auto;gap:6px}
.client-sign-langs button{white-space:nowrap;min-height:38px;padding:6px 11px;font-size:14px}
.reserve-db-banner{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:var(--ui-warning-soft);color:var(--ui-warning);margin:0 0 14px}
.reserve-db-banner .ui-icon{width:24px;height:24px;flex:0 0 24px}
.reserve-db-banner b{display:block;font-size:15px}.reserve-db-banner small{display:block;font-size:13px;margin-top:3px;line-height:1.4}
.acc-price p strong{font-size:1.15em}
.acc-price small{display:block;color:var(--ui-text-muted);font-size:12.5px;margin-top:4px;line-height:1.4}

/* ==== 2.3.0 — карточка заказа с реальными данными, PDF и фото офлайн ==== */
.od-warnings{display:flex;flex-direction:column;gap:8px;margin:0 0 var(--ui-card-gap,12px)}
.od-warning{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;font-size:14.5px;font-weight:600;background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.od-warning .ui-icon{width:20px;height:20px;flex:0 0 20px;margin-top:1px}
.od-warning.is-warn{background:var(--ui-warning-soft);color:var(--ui-warning)}.od-warning.is-ok{background:var(--ui-success-soft);color:var(--ui-success)}
.od-facts{background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:var(--ui-card-radius,20px);padding:6px 16px;margin:0 0 var(--ui-card-gap,12px)}
.od-fact{display:grid;grid-template-columns:minmax(96px,34%) 1fr;gap:10px;padding:11px 0;border-bottom:1px solid var(--ui-border);font-size:15px}
.od-fact:last-child{border-bottom:0}
.od-fact span{color:var(--ui-text-muted)}.od-fact b{font-weight:650;word-break:break-word}.od-fact b small{display:block;font-weight:400;color:var(--ui-text-muted);font-size:13px;margin-top:2px}
.od-fresh{font-size:12.5px;text-align:center;margin:14px 0 4px}
.ok-text{color:var(--ui-success)}.warn-text{color:var(--ui-warning)}
.lang-badge{display:inline-block;padding:1px 7px;border-radius:8px;background:var(--ui-brand-soft);color:var(--ui-brand-dark);font-size:12px;font-weight:800;vertical-align:1px}
.fin-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
.fin-tile{background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:18px;padding:14px 16px}
.fin-tile small{display:block;color:var(--ui-text-muted);font-size:13px;font-weight:600}.fin-tile b{display:block;font-size:21px;margin-top:4px}
.fin-tile.ok b{color:var(--ui-success)}.fin-tile.warn b{color:var(--ui-warning)}
.fin-invoice{background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:var(--ui-card-radius,20px);padding:16px;margin:0 0 12px}
.fin-invoice-head{display:flex;gap:12px;align-items:center}
.fin-invoice-icon{width:44px;height:44px;flex:0 0 44px;border-radius:14px;background:var(--ui-brand-soft);color:var(--ui-brand-dark);display:grid;place-items:center}
.fin-invoice-icon .ui-icon{width:22px;height:22px}
.fin-invoice-head div{flex:1;min-width:0}.fin-invoice-head b{display:block;font-size:16px}.fin-invoice-head small{display:block;color:var(--ui-text-muted);font-size:13px;margin-top:2px}
.fin-invoice-head strong{font-size:18px;white-space:nowrap}
.fin-progress{height:8px;border-radius:4px;background:var(--ui-card-bg);margin:14px 0 8px;overflow:hidden}.fin-progress span{display:block;height:100%;background:var(--ui-success);border-radius:4px}
.fin-invoice-sums{display:flex;justify-content:space-between;font-size:14px;color:var(--ui-text)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chip{padding:4px 10px;border-radius:10px;background:var(--ui-card-bg);color:var(--ui-brand-dark);font-size:12.5px;font-weight:700}
.chip.ok{background:var(--ui-success-soft);color:var(--ui-success)}.chip.warn{background:var(--ui-warning-soft);color:var(--ui-warning)}.chip.muted{background:var(--ui-card-bg);color:var(--ui-text-muted)}
.fin-payments{background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:var(--ui-card-radius,20px);padding:4px 16px;margin:0 0 14px}
.fin-payment{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--ui-border)}
.fin-payment:last-child{border-bottom:0}
.fin-payment>span{width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:var(--ui-success-soft);color:var(--ui-success);display:grid;place-items:center}
.fin-payment>span .ui-icon{width:20px;height:20px}
.fin-payment div{flex:1}.fin-payment b{display:block;font-size:16px}.fin-payment small{display:block;color:var(--ui-text-muted);font-size:13px}
.fin-payment time{color:var(--ui-text-muted);font-size:13px;text-align:right}
.doc-list{display:flex;flex-direction:column;gap:12px;margin:0 0 14px}
.doc-row{display:flex;gap:12px;background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:var(--ui-card-radius,20px);padding:16px}
.doc-icon{width:44px;height:44px;flex:0 0 44px;border-radius:14px;display:grid;place-items:center;background:var(--ui-success-soft);color:var(--ui-success)}
.doc-icon.warn,.doc-icon.pending{background:var(--ui-warning-soft);color:var(--ui-warning)}
.doc-icon .ui-icon{width:22px;height:22px}
.doc-row>div{flex:1;min-width:0}.doc-row b{display:block;font-size:16px}.doc-row small{display:block;color:var(--ui-text-muted);font-size:13.5px;margin-top:3px;line-height:1.4}
.doc-offline{color:var(--ui-success)!important}
.doc-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.doc-actions .od-primary-wide,.doc-actions .od-secondary-wide{margin:0!important;min-height:46px!important;font-size:15px!important}
.od-media-block{background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:var(--ui-card-radius,20px);padding:16px;margin:0 0 12px}
.od-media-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.od-media-head h3{margin:0;font-size:17px}
button.acc-photo{border:0;padding:0;cursor:pointer}
.pdf-viewer,.photo-viewer{position:fixed;inset:0;z-index:10060;display:flex;flex-direction:column;background:#1f2430;padding-top:env(safe-area-inset-top,0px)}
.pdf-top{display:flex;align-items:center;gap:12px;padding:10px max(12px,env(safe-area-inset-right,0px)) 10px max(12px,env(safe-area-inset-left,0px));background:#111827;color:#fff}
.pdf-top>div{flex:1;min-width:0}.pdf-top b{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-top small{display:block;color:var(--ui-text-muted);font-size:12.5px}
.pdf-close{border:0;background:rgba(255,255,255,.12);color:#fff;width:40px;height:40px;border-radius:20px;font-size:24px;line-height:1}
.pdf-share{display:flex;align-items:center;gap:6px;border:0;background:var(--ui-brand);color:#fff;border-radius:12px;padding:9px 12px;font-weight:700}
.pdf-share .ui-icon{width:18px;height:18px}
.pdf-pages{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:12px 8px calc(16px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:12px}
.pdf-pages canvas{background:var(--ui-card-bg);border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.35);max-width:100%;height:auto}
.pdf-pages .acc-loading{color:#fff}
.photo-stage{flex:1;overflow:hidden;display:grid;place-items:center;touch-action:none}
.photo-stage img{max-width:100%;max-height:100%;transform-origin:center;transition:transform .05s linear;user-select:none;-webkit-user-drag:none}

/* ==== 2.4.0 — документы по общему шаблону ==== */
.doc-frame{display:block;width:100%;border:0;border-radius:12px;background:var(--ui-card-bg);min-height:420px}
.acc-preview{padding:8px!important}
.acc-preview .od-secondary-wide{margin-top:10px!important}
.client-doc .doc-frame{border-radius:20px}
.company-logo{display:grid;place-items:center;min-height:90px;border:1px dashed var(--ui-border);border-radius:14px;margin-bottom:12px;padding:10px;color:var(--ui-text-muted)}
.company-logo img{max-height:80px;max-width:100%}
.company-form{display:flex;flex-direction:column;gap:14px}
.company-field{display:block;margin:0 0 12px}
.company-field span{display:block;font-size:13px;color:var(--ui-text-muted);margin-bottom:4px}
.company-field input{width:100%;min-height:46px;border:1px solid var(--ui-field-border);border-radius:12px;padding:0 12px;font-size:16px;background:var(--ui-field-bg);color:var(--ui-text);}
.company-field select{width:100%;min-height:46px;border:1.5px solid var(--ui-field-border);border-radius:12px;padding:0 10px;font-size:15px;background:var(--ui-field-bg);color:var(--ui-text)}

/* ==== 2.5.0 — логотип ==== */
.brand-wordmark{display:block;height:44px;width:auto;max-width:78%;margin:0 auto 18px}
.lock-card .brand-wordmark{margin-bottom:26px}
.home-wordmark{margin:0;line-height:0}
.home-wordmark img{height:30px;width:auto;display:block}
.sidebar .brand img{height:30px;width:auto;display:block}

/* ==== 2.5.1 — свайп между разделами ==== */

/* ===== 2.5.2 — native-like scroll on phones/tablets =====
   The page itself never scrolls or bounces. Header and bottom bar stay put;
   only .main scrolls, and only when its content is taller than the screen.
   Desktop keeps the normal window scroll. */
html.touch-ui{--main-pt:24px}
html.touch-ui.mobile-app-ui:not(.tablet-ui),html.touch-ui.phone-shape-ui:not(.tablet-ui){--main-pt:12px}
html.touch-ui,html.touch-ui body{height:100%!important;min-height:0!important;overflow:hidden!important;overscroll-behavior:none!important}
html.touch-ui #app{height:100%}
html.touch-ui .app-shell{position:fixed!important;inset:0!important;min-height:0!important;overflow:hidden!important}
html.touch-ui body #app .main{position:absolute!important;inset:0!important;margin:0!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:none!important;scrollbar-width:none}
html.touch-ui .main::-webkit-scrollbar{display:none}
/* screens whose first element is a header: header sticks, notch padding moves into it */
html.touch-ui body #app .main:has(> .topbar:first-child, > .detail-top:first-child, > .order-app-screen > .od-topbar:first-child){padding-top:0!important}
html.touch-ui body #app .main > .topbar:first-child,
html.touch-ui body #app .main > .detail-top:first-child,
html.touch-ui body #app .main > .order-app-screen > .od-topbar:first-child{
  position:sticky!important;top:0!important;z-index:30!important;
  padding-top:calc(var(--main-pt) + env(safe-area-inset-top,0px))!important;
  background:var(--bg,#f4f7fd)!important;
  /* paint the header background edge to edge without changing layout */
  box-shadow:0 0 0 100vmax var(--bg,#f4f7fd)!important;clip-path:inset(0 -100vmax)!important;
}
/* status-bar cover for screens without a sticky header */
html.touch-ui body #app .app-shell::before{content:'';position:fixed;left:0;right:0;top:0;height:env(safe-area-inset-top,0px);background:var(--bg,#f4f7fd);z-index:31;pointer-events:none}
/* no artificial extra height: short screens must not scroll */
html.touch-ui body #app .main .order-app-screen{min-height:0!important;padding-bottom:0!important}

/* ===== 2.5.3 — own pull-to-refresh indicator (Google-style round button) ===== */
.ptr-indicator{position:fixed;left:50%;top:0;z-index:40;width:44px;height:44px;border-radius:50%;background:var(--ui-card-bg);color:var(--ui-brand-dark);display:grid;place-items:center;box-shadow:0 2px 10px rgba(16,24,40,.18);opacity:0;pointer-events:none;transform:translate3d(-50%,-60px,0)}
.ptr-indicator .ui-icon{width:24px;height:24px;opacity:.55;transition:opacity .15s}
.ptr-indicator.ready .ui-icon,.ptr-indicator.spinning .ui-icon{opacity:1}
.ptr-indicator.spinning .ui-icon{animation:ptr-spin .8s linear infinite}
@keyframes ptr-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion: reduce){.ptr-indicator.spinning .ui-icon{animation-duration:2s}}

/* ===== 2.5.4 — one icon set (Lucide): sizes for places that used emoji/glyphs ===== */
.card-sync-state{display:inline-flex;align-items:center;gap:5px}
.card-sync-state .ui-icon{width:1.15em;height:1.15em;flex:0 0 auto}
.acc-photo em{display:grid;place-items:center}
.acc-photo em .ui-icon{width:14px;height:14px}
.photo-legend .ui-icon,.doc-offline .ui-icon{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.2em;margin-right:4px}
.intake-create-btn{display:flex!important;align-items:center;justify-content:center;gap:10px}
.intake-create-btn .ui-icon{width:1.1em;height:1.1em}
.intake-problem-group-icon .ui-icon,.work-service-group-icon .ui-icon{width:24px;height:24px}
.intake-problem-group-chevron .ui-icon,.work-service-group-chevron .ui-icon,.intake-suggest-arrow .ui-icon{width:22px;height:22px}
.intake-problem-group-chevron,.work-service-group-chevron,.intake-suggest-arrow{display:grid;place-items:center}
.intake-suggest-avatar .ui-icon,.intake-existing-device-icon .ui-icon{width:22px;height:22px}
.pdf-close,.intake-camera-close,.app-toast-close{display:grid;place-items:center}
.pdf-close .ui-icon,.intake-camera-close .ui-icon{width:22px;height:22px}
.app-toast-close .ui-icon{width:18px;height:18px}
.client-sign-back .ui-icon{width:26px;height:26px}
.work-item-delete .ui-icon,[data-final-delete] .ui-icon,[data-pre-delete] .ui-icon{width:20px;height:20px}
html body .new-intake-sheet .od-sheet-close::before{content:none!important;display:none!important}
html body .new-intake-sheet .od-sheet-close .ui-icon{width:30px;height:30px}
.od-sheet-close{display:grid;place-items:center}
.od-sheet-close .ui-icon{width:22px;height:22px}

/* ===== 2.5.5 — section pager: neighbour page drawn next to the current one ===== */
/* 2.5.6: every section page is its own layer all the time, so neighbours are painted before a flick brings them in */
html.touch-ui body #app .main{will-change:transform;backface-visibility:hidden;contain:paint}
html.touch-ui body #app .main.swipe-ghost{pointer-events:none}

/* ===== 2.5.7 — floating buttons outside the moving page ===== */
/* .main is a transformed layer (swipes), where position:fixed acts like absolute and scrolls away.
   The buttons now live in .fab-layer next to .main and stay above the bottom bar. */
.fab-layer{transition:opacity .15s ease-out}
html body #app .fab-layer :is(.order-add-fab,.appointment-fab){position:fixed!important;left:auto!important;top:auto!important;right:max(16px,var(--ui-safe-right,0px))!important;bottom:calc(var(--ui-nav-h,58px) + var(--ui-safe-bottom,0px) + 14px)!important;z-index:25!important;transform:none!important;margin:0!important}
html.desktop-ui body #app .fab-layer :is(.order-add-fab,.appointment-fab){bottom:28px!important;right:32px!important}
html body #app .fab-layer :is(.order-add-fab-plus,.appointment-fab-plus) .ui-icon{width:1em;height:1em}
.fab-spacer{height:88px}
html.desktop-ui .fab-spacer{height:72px}

/* ===== 2.5.7 — appointment sheet (bottom sheet on phones, dialog on desktop) ===== */
.appt-sheet .od-sheet{max-height:calc(100dvh - var(--ui-safe-top,0px) - 12px)!important;display:flex!important;flex-direction:column!important}
.appt-sheet .od-sheet-head{flex:0 0 auto}
.appt-sheet .od-sheet-head h2{font-size:22px!important;line-height:1.2!important;margin:0!important}
.appt-sheet .od-sheet-body{flex:1 1 auto;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:4px 16px calc(20px + var(--ui-safe-bottom,0px))!important}
html.desktop-ui .appt-sheet .od-sheet{max-width:680px!important;margin:0 auto!important}
.appt-form{display:flex;flex-direction:column;gap:12px;max-width:720px;margin:0 auto}
.link-btn{align-self:flex-start;background:none;border:none;padding:0;margin:-4px 0 0;font-size:14px;font-weight:700;color:var(--ui-brand-dark);cursor:pointer}
.link-btn:active{opacity:.7}
.appt-card{background:var(--ui-card-bg);border:1px solid var(--line,var(--ui-border));border-radius:var(--ui-card-radius,20px);padding:14px var(--ui-card-pad,16px) 16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.appt-card h3{display:flex;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:800;color:var(--ui-text)}
.appt-card h3 .ui-icon{width:20px;height:20px;color:var(--ui-brand-dark);flex:0 0 auto}
.appt-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.appt-field>span{font-size:13px;font-weight:700;color:var(--ui-text)}
.appt-field input,.appt-field textarea{width:100%;box-sizing:border-box;min-height:var(--ui-control-h,52px);border:1px solid var(--ui-field-border);border-radius:14px;background:var(--ui-field-bg);padding:12px 14px;font-size:16px;color:var(--ui-text);outline:none}
.appt-field textarea{min-height:0;resize:vertical;line-height:1.35}
.appt-field input:focus,.appt-field textarea:focus{border-color:var(--ui-brand);background:var(--ui-field-bg);box-shadow:0 0 0 3px rgba(52,153,232,.16)}
.appt-search{display:flex;align-items:center;gap:10px;min-height:var(--ui-control-h,52px);border:1px solid var(--ui-field-border);border-radius:14px;background:var(--ui-field-bg);padding:0 14px;color:var(--ui-text);}
.appt-search:focus-within{border-color:var(--ui-brand);background:var(--ui-field-bg);box-shadow:0 0 0 3px rgba(52,153,232,.16)}
.appt-search .ui-icon{width:20px;height:20px;color:var(--ui-text-muted);flex:0 0 auto}
.appt-search input{flex:1;min-width:0;border:0;background:transparent;font-size:16px;outline:none;padding:12px 0}
.appt-suggest{display:flex;flex-direction:column;gap:6px}
.appt-suggest:empty{display:none}
.appt-suggest-row{display:grid;grid-template-columns:40px 1fr 20px;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);border-radius:14px;padding:8px 10px;color:inherit}
.appt-suggest-row b,.appt-suggest-row small{display:block}.appt-suggest-row b{font-size:15px}.appt-suggest-row small{font-size:13px;color:var(--ui-text-muted);margin-top:2px}
.appt-suggest-row>.ui-icon{width:18px;height:18px;color:var(--ui-text-muted)}
.appt-avatar{width:40px;height:40px;border-radius:50%;background:var(--ui-brand-soft);color:var(--ui-brand-dark);display:grid;place-items:center;font-weight:800;font-size:14px;flex:0 0 auto}
.appt-picked{display:flex;align-items:center;gap:12px;background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:14px;padding:10px 12px}
.appt-picked-copy{flex:1;min-width:0}.appt-picked-copy b,.appt-picked-copy small{display:block}.appt-picked-copy b{font-size:16px}.appt-picked-copy small{font-size:13.5px;color:var(--ui-text);margin-top:2px}
.appt-link{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--ui-brand-dark);font-weight:700;font-size:15px;padding:6px 2px;cursor:pointer}
.appt-link .ui-icon{width:18px;height:18px}
.appt-new{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.appt-empty{font-size:14px;color:var(--ui-text-muted);padding:4px 2px}
.appt-chips{display:flex;flex-wrap:wrap;gap:8px}
.appt-chips[hidden]{display:none}
.appt-chips button{display:inline-flex;align-items:center;gap:6px;min-height:40px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-text);border-radius:20px;padding:8px 13px;font-size:14px;font-weight:650;text-align:left}
.appt-chips button .ui-icon{width:16px;height:16px}
.appt-chips button em{font-style:normal;font-weight:800;color:var(--ui-brand-dark);font-size:13px}
.appt-chips button.active{background:var(--ui-brand-soft);border-color:var(--ui-brand);color:var(--ui-brand-dark)}
.appt-days{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 2px 4px;margin:0 -2px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}
.appt-days::-webkit-scrollbar{display:none}
.appt-days button{flex:0 0 64px;min-height:66px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--ui-text);scroll-snap-align:start;padding:6px 2px}
.appt-days button small{font-size:12px;font-weight:700;color:var(--ui-text-muted)}
.appt-days button b{font-size:16px}
.appt-days button em{font-style:normal;font-size:10.5px;color:var(--ui-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px}
.appt-days button.off{background:var(--ui-field-bg);color:var(--ui-text-muted)}
.appt-days button.active{background:var(--ui-brand);border-color:var(--ui-brand);color:#fff}
.appt-days button.active small,.appt-days button.active em{color:#fff}
.appt-loading{font-size:14px;color:var(--ui-text-muted);padding:12px 4px}
.appt-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}
.appt-slots button{min-height:48px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px;color:var(--ui-text);min-width:0}
.appt-slots button b{font-size:16px;font-variant-numeric:tabular-nums}
.appt-slots button small{font-size:10.5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ui-danger)}
.appt-slots button.busy{background:var(--ui-card-bg);border-color:var(--ui-border);color:var(--ui-text-muted)}
.appt-slots button.busy b{text-decoration:line-through;text-decoration-color:#e5a3a0}
.appt-slots button.active{background:var(--ui-brand);border-color:var(--ui-brand);color:#fff}
.appt-slots button.active small{color:#fff}
.appt-note-off{grid-column:1/-1;display:flex;gap:8px;align-items:flex-start;background:var(--ui-warning-soft);border:1px solid var(--ui-warning-border);color:var(--ui-warning);border-radius:12px;padding:10px 12px;font-size:13.5px}
.appt-note-off .ui-icon{width:18px;height:18px;flex:0 0 auto;margin-top:1px}
.appt-row{display:grid;grid-template-columns:minmax(0,150px) 1fr;gap:12px;align-items:end}
.appt-duration{display:flex;flex-direction:column;gap:5px;min-width:0}
.appt-duration>span{font-size:13px;font-weight:700;color:var(--ui-text)}
.appt-seg{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--ui-field-border);border-radius:14px;overflow:hidden;background:var(--ui-field-bg);color:var(--ui-text);}
.appt-seg button{min-height:var(--ui-control-h,52px);border:0;border-right:1px solid var(--ui-field-border);background:transparent;font-size:13.5px;font-weight:700;color:var(--ui-text);padding:0 2px}
.appt-seg button:last-child{border-right:0}
.appt-seg button.active{background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.appt-summary{display:flex;align-items:center;gap:10px;background:var(--ui-card-bg);border-radius:16px;padding:12px 14px;color:var(--ui-text-muted);font-size:15px}
.appt-summary .ui-icon{width:22px;height:22px;flex:0 0 auto}
.appt-summary.ready{background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.appt-summary b,.appt-summary small{display:block}.appt-summary b{font-size:16px;color:var(--ui-text)}.appt-summary small{font-size:13.5px;margin-top:2px}
.appt-error{margin:0;background:var(--ui-danger-soft);border:1px solid var(--ui-danger-border);color:var(--ui-danger);border-radius:12px;padding:10px 12px;font-size:14px}
.appt-error[hidden]{display:none}
.appt-actions{display:grid;gap:10px}
.appt-actions .od-primary-wide,.appt-actions .od-secondary-wide{margin:0!important;min-height:56px!important;font-size:17px!important;border-radius:16px!important;display:flex;align-items:center;justify-content:center;gap:10px}
.appt-actions .ui-icon{width:22px;height:22px}
@media (max-width:420px){.appt-row{grid-template-columns:1fr}.appt-new{grid-template-columns:1fr}}
.appt-form input,.appt-form textarea,.appt-form button{font-family:inherit}
.appt-chips .appt-more{border-style:dashed;color:var(--ui-brand-dark);background:var(--ui-field-bg)}
.appt-form [hidden]{display:none!important}
.appt-chips button em{white-space:nowrap;margin-left:auto;padding-left:6px}

/* ===== 2.5.8 — order list card: long names, compact status ===== */
html body #app .order-card .order-row{display:flex!important;align-items:flex-start!important;gap:12px!important}
html body #app .order-card .status-icon{flex:0 0 auto!important}
html body #app .order-card .grow{flex:1 1 auto!important;min-width:0!important}
html body #app .order-card .grow b{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;overflow-wrap:anywhere;line-height:1.2!important}
html body #app .order-card .grow a{white-space:nowrap!important}
html body #app .order-card .badge{flex:0 1 auto!important;max-width:42%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:12px!important;line-height:1.2!important;padding:5px 10px!important;border-radius:12px!important;margin-top:2px!important}
/* conversation: photos, system lines, own messages on the right */
.message-thread .message-bubble.out{align-self:flex-end;background:var(--ui-brand-soft);border-color:var(--ui-border)}
.message-thread .message-bubble.in{align-self:flex-start}
.message-bubble.has-photo{padding:6px 6px 10px}
.message-bubble.has-photo>p,.message-bubble.has-photo>small{padding:0 10px}
.message-photo{display:block;border:0;padding:0;background:var(--ui-card-bg);border-radius:16px;overflow:hidden;width:min(240px,62vw);cursor:zoom-in}
.message-photo img{display:block;width:100%;max-height:320px;object-fit:cover}
.message-photo.is-loading,div.message-photo{display:flex;align-items:center;gap:8px;min-height:120px;justify-content:center;color:var(--ui-text-muted);font-size:13.5px;padding:12px;cursor:default;text-align:center}
.message-photo .ui-icon{width:22px;height:22px;flex:0 0 auto}
.message-other{display:flex;align-items:center;gap:8px;color:var(--ui-text);margin:0}
.message-other .ui-icon{width:18px;height:18px}
.message-system{align-self:center;max-width:90%;text-align:center;font-size:13px;color:var(--ui-text-muted);background:var(--ui-card-bg);border-radius:12px;padding:6px 12px}
.message-system small{display:block;font-size:11.5px;margin-top:2px;opacity:.8}
html body #app .order-list{grid-template-columns:minmax(0,1fr)!important}
html.desktop-ui body #app .order-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body #app .order-card{min-width:0!important;max-width:100%!important;box-sizing:border-box}
html body #app .order-card .badge{min-width:0!important}
/* finance: an amount never splits; it shrinks a little to fit the card */
html body #app .finance-metrics b{white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important;font-size:clamp(17px,5.4vw,28px)!important;letter-spacing:-.3px}
html body #app .finance-methods b{white-space:nowrap}
html body #app .order-card .badge{white-space:normal!important;text-align:center!important;max-width:36%!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;text-overflow:clip!important;overflow-wrap:normal!important;hyphens:none}
html body #app .order-card .badge{max-width:40%!important;padding:5px 9px!important}
html body #app .order-card .badge{flex:0 0 auto!important}

/* ===== 2.5.9 — own confirmation window (instead of browser confirm) and toast icons ===== */
.ui-dialog-backdrop{position:fixed;inset:0;z-index:10100;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) 16px max(16px,env(safe-area-inset-bottom,0px));background:rgba(15,23,42,0);transition:background .18s ease-out}
.ui-dialog-backdrop.open{background:rgba(15,23,42,.45)}
.ui-dialog{width:100%;max-width:420px;background:var(--ui-card-bg);border-radius:24px;padding:22px 20px 18px;box-shadow:0 20px 50px rgba(15,23,42,.28);display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;transform:translateY(12px) scale(.97);opacity:0;transition:transform .18s ease-out,opacity .18s ease-out}
.ui-dialog-backdrop.open .ui-dialog{transform:none;opacity:1}
.ui-dialog-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--ui-brand-soft);color:var(--ui-brand-dark);margin-bottom:4px}
.ui-dialog-icon .ui-icon{width:28px;height:28px}
.ui-dialog.is-danger .ui-dialog-icon{background:var(--ui-danger-soft);color:var(--ui-danger)}
.ui-dialog h2{margin:0;font-size:19px;line-height:1.3;color:var(--ui-text);text-wrap:balance}
.ui-dialog p{margin:0;font-size:15px;line-height:1.45;color:var(--ui-text);white-space:pre-line}
.ui-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:12px}
.ui-dialog-actions button{min-height:52px;border-radius:16px;font:inherit;font-size:16px;font-weight:750;cursor:pointer}
.ui-dialog-cancel{border:1px solid var(--ui-border);background:var(--ui-card-bg);color:var(--ui-text)}
.ui-dialog-ok{border:0;background:var(--ui-brand);color:#fff}
.ui-dialog.is-danger .ui-dialog-ok{background:var(--ui-danger)}
.ui-dialog-actions button:focus-visible{outline:3px solid rgba(52,153,232,.45);outline-offset:2px}
@media (max-width:360px){.ui-dialog-actions{grid-template-columns:1fr}.ui-dialog-ok{order:-1}}
@media (prefers-reduced-motion:reduce){.ui-dialog,.ui-dialog-backdrop{transition:none}}
.app-toast .app-toast-icon{width:20px;height:20px;flex:0 0 auto;opacity:.9}
.app-toast-info{background:#1f2937}

/* ===== 2.6.0 — own dropdown + one look for the order's work windows (like «Новая запись») ===== */
.ui-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;margin:0!important;padding:0!important;border:0!important}
.ui-select{display:flex;align-items:center;gap:10px;width:100%;min-height:var(--ui-control-h,52px);box-sizing:border-box;border:1.5px solid var(--ui-field-border);border-radius:14px;background:var(--ui-field-bg);padding:10px 14px;font:inherit;font-size:16px;color:var(--ui-text);text-align:left;cursor:pointer}
.ui-select span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ui-select .ui-icon{width:20px;height:20px;color:var(--ui-text-muted);flex:0 0 auto}
.ui-select:focus-visible{outline:none;border-color:var(--ui-brand);box-shadow:0 0 0 3px rgba(52,153,232,.16)}
.ui-select:disabled{opacity:.55;cursor:default}
.ui-pick-backdrop{align-items:flex-end;padding:0}
.ui-pick{width:100%;max-width:560px;max-height:min(70dvh,560px);background:var(--ui-card-bg);border-radius:24px 24px 0 0;display:flex;flex-direction:column;box-shadow:0 -10px 40px rgba(15,23,42,.25);transform:translateY(24px);opacity:0;transition:transform .2s ease-out,opacity .2s ease-out;padding-bottom:env(safe-area-inset-bottom,0px)}
.ui-pick-backdrop.open .ui-pick{transform:none;opacity:1}
html.desktop-ui .ui-pick-backdrop{align-items:center;padding:16px}
html.desktop-ui .ui-pick{border-radius:24px}
.ui-pick-head{display:flex;align-items:center;gap:10px;padding:16px 16px 8px 20px}
.ui-pick-head b{flex:1;font-size:18px}
.ui-pick-close{width:40px;height:40px;border:0;border-radius:20px;background:var(--ui-card-bg);display:grid;place-items:center;cursor:pointer}
.ui-pick-close .ui-icon{width:20px;height:20px}
.ui-pick-list{overflow-y:auto;overscroll-behavior:contain;padding:4px 12px 14px;display:flex;flex-direction:column;gap:6px}
.ui-pick-list button{display:flex;align-items:center;gap:10px;min-height:54px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);border-radius:14px;padding:10px 14px;font:inherit;font-size:16px;text-align:left;color:var(--ui-text);cursor:pointer}
.ui-pick-list button span{flex:1}
.ui-pick-list button.active{background:var(--ui-brand-soft);border-color:var(--ui-brand);color:var(--ui-brand-dark);font-weight:700}
.ui-pick-list button .ui-icon{width:20px;height:20px}
.ui-pick-list button:disabled{opacity:.45}

/* work windows */
html:root body .od-sheet-backdrop.wf-sheet .od-sheet{display:flex!important;flex-direction:column!important;max-height:calc(100dvh - var(--ui-safe-top,0px) - 12px)!important}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-head h2{font-size:22px!important;line-height:1.2!important;margin:0!important}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body{flex:1 1 auto;overflow-y:auto!important;overscroll-behavior:contain;padding:4px 16px calc(20px + var(--ui-safe-bottom,0px))!important;display:flex;flex-direction:column;gap:12px}
html.desktop-ui:root body .od-sheet-backdrop.wf-sheet .od-sheet{max-width:680px!important;margin:0 auto!important}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body form{display:flex;flex-direction:column;gap:12px}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body label{display:flex!important;flex-direction:column!important;gap:6px!important;font-size:13px!important;font-weight:700!important;color:var(--ui-text)!important;margin:0!important;min-width:0}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body label:has(> input[type=checkbox]){flex-direction:row!important;align-items:center!important;gap:12px!important;font-size:15px!important;font-weight:600!important;color:var(--ui-text)!important;min-height:44px}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body input:not([type=checkbox]):not([type=radio]):not([type=file]),html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body textarea{width:100%!important;box-sizing:border-box!important;min-height:var(--ui-control-h,52px)!important;border:1px solid var(--ui-field-border)!important;border-radius:14px!important;background:var(--ui-field-bg)!important;padding:12px 14px!important;font:inherit!important;font-size:16px!important;font-weight:500!important;color:var(--ui-text)!important;outline:none}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body textarea{min-height:0!important;line-height:1.4!important}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body input:focus,html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body textarea:focus{border-color:var(--ui-brand)!important;background:var(--ui-field-bg)!important;box-shadow:0 0 0 3px rgba(52,153,232,.16)!important}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body input[type=checkbox]{width:24px!important;height:24px!important;accent-color:var(--ui-brand);flex:0 0 auto;margin:0}
html:root body .od-sheet-backdrop.wf-sheet .agreement-grid,html:root body .od-sheet-backdrop.wf-sheet .od-part-form-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}
html:root body .od-sheet-backdrop.wf-sheet .od-primary-wide,html:root body .od-sheet-backdrop.wf-sheet .od-secondary-wide{min-height:56px!important;font-size:17px!important;border-radius:16px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;padding:0 16px!important}
html:root body .od-sheet-backdrop.wf-sheet .od-primary-wide .ui-icon,html:root body .od-sheet-backdrop.wf-sheet .od-secondary-wide .ui-icon{width:22px!important;height:22px!important}
/* big totals */
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0!important}
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary>div{background:var(--ui-card-bg)!important;border:1px solid var(--line,var(--ui-border))!important;border-radius:18px!important;padding:12px 10px!important;display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0}
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary small{font-size:12.5px!important;color:var(--ui-text-muted)!important;font-weight:600!important;line-height:1.2}
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary b{font-size:clamp(17px,5vw,22px)!important;white-space:nowrap!important;color:var(--ui-text)!important;font-variant-numeric:tabular-nums}
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary>div:last-child{background:var(--ui-brand-soft)!important;border-color:var(--ui-border)!important}
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary>div:last-child b{color:var(--ui-brand-dark)!important}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card,html:root body .od-sheet-backdrop.wf-sheet .prepayment-invoice-row,html:root body .od-sheet-backdrop.wf-sheet .payment-history-row,html:root body .od-sheet-backdrop.wf-sheet .signature-panel,html:root body .od-sheet-backdrop.wf-sheet .od-empty-card{border-radius:var(--ui-card-radius,20px)!important;border:1px solid var(--line,var(--ui-border))!important;background:var(--ui-card-bg)!important;margin:0!important;padding:14px var(--ui-card-pad,16px)!important;font-size:15px!important}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card span{font-size:15px!important}
html:root body .od-sheet-backdrop.wf-sheet .od-subheading{margin:6px 2px 0!important;font-size:15px!important;font-weight:800!important;color:var(--ui-text)!important}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-note{font-size:13.5px!important;color:var(--ui-text-muted)!important;margin:0!important}
html:root body .od-sheet-backdrop.wf-sheet .workflow-stale-banner{border-radius:16px!important;margin:0!important}
html:root body .od-sheet-backdrop.wf-sheet .signature-canvas{border-radius:14px!important;min-height:180px}
@media (max-width:380px){.wf-sheet .agreement-grid,html:root body .od-sheet-backdrop.wf-sheet .od-part-form-grid{grid-template-columns:1fr!important}}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;height:auto!important;min-height:0!important}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card>.ui-icon{width:24px!important;height:24px!important;margin-top:2px;color:var(--ui-brand-dark)}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card>span{display:block!important;min-width:0;font-size:15.5px!important;line-height:1.4!important;color:var(--ui-text);font-weight:650}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card>span small{display:block!important;font-size:12.5px!important;font-weight:600!important;color:var(--ui-text-muted)!important;margin:0 0 2px!important}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card>span em{display:block!important;font-style:normal!important;font-size:13.5px!important;font-weight:500!important;color:var(--ui-text)!important;margin-top:4px!important}
html:root body .od-sheet-backdrop.wf-sheet .od-info-card>span b,html:root body .od-sheet-backdrop.wf-sheet .od-info-card>span strong{font-size:16px!important}
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary>div{justify-content:space-between!important}
html:root body .od-sheet-backdrop.wf-sheet .prepayment-summary b{font-size:clamp(15px,4.4vw,20px)!important;letter-spacing:-.2px}
html:root body .od-sheet-backdrop.wf-sheet .agreement-grid,html:root body .od-sheet-backdrop.wf-sheet .od-part-form-grid{align-items:end!important}
html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body>*,html:root body .od-sheet-backdrop.wf-sheet .od-sheet-body form>*{flex-shrink:0!important}
.appt-form>*{flex-shrink:0}

/* ===== 2.6.1 — offline repair / hand-over ===== */
.wi-pending{font-style:normal;color:var(--ui-warning);font-weight:700}
.wi-pending.is-failed{color:var(--ui-danger)}
.wi-queue-note{display:flex;gap:10px;align-items:flex-start;background:var(--ui-warning-soft);border:1px solid var(--ui-warning-border);color:var(--ui-warning);border-radius:16px;padding:12px 14px;font-size:14px;line-height:1.4}
.wi-queue-note b{display:block;margin-bottom:2px}
.wi-queue-note .ui-icon{width:20px;height:20px;flex:0 0 auto;margin-top:1px}
.wi-queue-note.is-failed{background:var(--ui-danger-soft);border-color:var(--ui-danger-border);color:var(--ui-danger)}
.handover-sign-preview{display:block;max-width:100%;height:90px;object-fit:contain;background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:12px;margin-top:8px}

/* ===== 2.6.2 — client conversation as a messenger ===== */
html body #app .main:has(> .chat-thread){display:flex!important;flex-direction:column!important;padding-bottom:0!important}
html body #app .main:has(> .chat-thread)>*{flex-shrink:0}
html body #app .main > .topbar.chat-head{display:flex!important;align-items:center!important;gap:10px!important;min-height:0!important;margin:0 0 6px!important;padding-bottom:10px!important;border-bottom:1px solid var(--line,var(--ui-border))}
.chat-icon-btn{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border:0;border-radius:20px;background:transparent;color:var(--ui-text);text-decoration:none;cursor:pointer;padding:0}
.chat-icon-btn .ui-icon{width:22px;height:22px}
.chat-actions .chat-icon-btn{background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.chat-actions{display:flex;gap:6px;margin-left:auto}
.chat-avatar{width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:var(--ui-brand-soft);color:var(--ui-brand-dark);display:grid;place-items:center;font-weight:800;font-size:14px}
.chat-title{min-width:0;flex:1 1 auto}
.chat-title b{display:block;font-size:16px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ui-text)}
.chat-title small{display:block;font-size:12.5px;color:var(--ui-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.chat-subject{font-size:13px;color:var(--ui-text);background:var(--ui-card-bg);border-radius:10px;padding:6px 10px;margin:0 0 6px;align-self:flex-start}
html body #app .chat-thread{display:flex!important;flex-direction:column!important;gap:4px!important;padding:4px 0 12px!important;margin:0!important}
.chat-day{display:flex;justify-content:center;margin:10px 0 6px}
.chat-day span{font-size:12px;font-weight:600;color:var(--ui-text-muted);background:var(--ui-card-bg);border-radius:10px;padding:3px 10px}
.chat-empty{text-align:center;color:var(--ui-text-muted);font-size:14px;padding:30px 0}
html body #app .chat-thread .message-bubble{max-width:78%!important;padding:7px 11px 5px!important;border-radius:16px!important;border:1px solid var(--ui-border)!important;background:var(--ui-card-bg)!important;box-shadow:none!important;margin:0!important}
html body #app .chat-thread .message-bubble.in{align-self:flex-start!important;border-bottom-left-radius:5px!important}
html body #app .chat-thread .message-bubble.out{align-self:flex-end!important;margin-left:auto!important;background:var(--ui-brand-soft)!important;border-color:var(--ui-border)!important;border-bottom-right-radius:5px!important}
html body #app .chat-thread .message-bubble p{margin:0!important;font-size:15px!important;line-height:1.38!important;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ui-text)}
/* Staff chat is one shared room (not a 1:1 thread), so incoming bubbles are
   labelled with who sent them, unlike the customer-inquiry chat this is modelled on. */
.chat-thread .message-sender{display:block;font-size:11.5px;font-weight:700;color:var(--ui-brand-dark);margin:0 0 2px}
.chat-thread .message-time{display:block;text-align:right;font-size:11px!important;color:var(--ui-text-muted)!important;margin-top:2px;line-height:1.2}
.chat-thread .message-bubble.pending{opacity:.75}
.chat-thread .message-bubble.has-photo{padding:4px 4px 5px!important}
.chat-thread .message-bubble.has-photo p{padding:4px 7px 0}
.chat-thread .message-bubble.has-photo .message-time{padding:0 7px}
.chat-thread .message-photo{width:min(220px,58vw)!important;border-radius:12px!important}
.chat-thread .message-photo img{max-height:220px!important;width:100%;object-fit:cover}
.chat-thread div.message-photo{min-height:90px!important;font-size:12.5px!important}
.chat-thread .message-system{font-size:12px!important;padding:4px 10px!important;margin:6px auto!important}
.chat-reply{position:sticky;bottom:0;margin-top:auto!important;display:flex;align-items:flex-end;gap:8px;background:var(--bg,#f4f7fd);padding:8px 0 calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line,var(--ui-border));box-shadow:0 0 0 100vmax var(--bg,#f4f7fd);clip-path:inset(0 -100vmax -100vmax -100vmax);z-index:5}
.chat-reply textarea{flex:1;min-width:0;min-height:44px;max-height:120px;resize:none;border:1px solid var(--ui-field-border);border-radius:22px;background:var(--ui-field-bg);padding:11px 16px;font:inherit;font-size:15.5px;line-height:1.35;outline:none;box-sizing:border-box;overflow-y:auto;color:var(--ui-text);}
.chat-reply textarea:focus{border-color:var(--ui-brand);box-shadow:0 0 0 3px rgba(52,153,232,.16)}
.chat-reply button{width:44px;height:44px;flex:0 0 44px;border:0;border-radius:22px;background:var(--ui-brand);color:#fff;display:grid;place-items:center;cursor:pointer}
.chat-reply button .ui-icon{width:22px;height:22px}
html.desktop-ui .chat-reply{bottom:0}

/* ===== 2.6.2 — bottom bar icons ~15% smaller, same bar height and tap area ===== */
:root{--ui-nav-icon:22px}
/* the chat takes the whole screen: no bottom bar, reply bar at the very bottom */
html:has(#app .main > .chat-thread) body #app .bottom-nav{display:none!important}
html:has(#app .main > .chat-thread) body #app .main.main{padding-bottom:0!important}

/* ===== 2.7.0 — roles: lock screen tiles, role home, staff, journal ===== */
html body #app .bottom-nav{grid-template-columns:repeat(var(--nav-count,6),minmax(0,1fr))!important}
.staff-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;width:100%;margin:6px 0 4px}
.staff-tile{display:flex;align-items:center;gap:10px;border:1px solid var(--ui-border);background:var(--ui-card-bg);border-radius:16px;padding:10px 12px;text-align:left;min-height:64px;cursor:pointer;font:inherit;color:inherit}
.staff-tile.active{border-color:var(--ui-brand);background:var(--ui-brand-soft)}
.staff-tile-avatar{width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:var(--ui-brand-soft);color:var(--ui-brand-dark);display:grid;place-items:center;font-weight:800;font-size:15px}
.staff-tile-copy{min-width:0}.staff-tile-copy b{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-tile-copy small{display:block;font-size:12.5px;color:var(--ui-text-muted);margin-top:2px}
.lock-avatar{font-size:38px;font-weight:800;color:var(--ui-brand-dark)}
.home-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.home-tiles>div,.home-tiles>button{background:var(--ui-card-bg);border:1px solid var(--line,var(--ui-border));border-radius:18px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;min-width:0}
.home-tiles>button{font:inherit;text-align:left;cursor:pointer}
.home-tiles>button[data-home-tile]{cursor:pointer}
.home-tiles>button:not([data-home-tile]){cursor:default}
.home-tiles small{font-size:12.5px;color:var(--ui-text-muted);font-weight:600}.home-tiles b{font-size:22px;color:var(--ui-text);white-space:nowrap;font-variant-numeric:tabular-nums}
.home-tiles>div.warn,.home-tiles>button.warn{background:var(--ui-warning-soft);border-color:var(--ui-warning-border)}.home-tiles>div.warn b,.home-tiles>button.warn b{color:var(--ui-warning)}
.home-group{background:var(--ui-card-bg);border:1px solid var(--line,var(--ui-border));border-radius:var(--ui-card-radius,20px);padding:12px 14px;margin:0 0 10px}
.home-group header{display:flex;align-items:center;gap:10px}
.home-group header .metric-icon{width:34px!important;height:34px!important;border-radius:11px!important;flex:0 0 34px}
.home-group header .metric-icon .ui-icon{width:19px!important;height:19px!important}
.home-group header b{flex:1;font-size:15.5px}.home-group header strong{font-size:17px;color:var(--ui-brand-dark);font-variant-numeric:tabular-nums}
.home-list{display:flex;flex-direction:column;margin-top:8px;border-top:1px solid var(--ui-border)}
.home-order{display:flex;align-items:center;gap:8px;border:0;border-bottom:1px solid var(--ui-border);background:transparent;padding:9px 2px;text-align:left;font:inherit;color:inherit;cursor:pointer}
.home-order:last-child{border-bottom:0}
.home-order>span{flex:1;min-width:0}.home-order b{display:block;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-order small{display:block;font-size:12.5px;color:var(--ui-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-order em{font-style:normal;font-size:12px;color:var(--ui-text);background:var(--ui-card-bg);border-radius:10px;padding:3px 8px;white-space:nowrap;max-width:40%;overflow:hidden;text-overflow:ellipsis}
.home-order>.ui-icon{width:16px;height:16px;color:var(--ui-text-muted);flex:0 0 auto}
.home-empty{margin:8px 0 0;font-size:13.5px;color:var(--ui-text-muted)}
.home-more{display:block;padding:6px 2px 0;font-size:12.5px;color:var(--ui-text-muted)}
.settings-switch{display:flex;align-items:center;gap:12px;width:100%;border:1px solid var(--ui-border);background:var(--ui-brand-soft);border-radius:18px;padding:12px 14px;margin:0 0 14px;text-align:left;font:inherit;color:inherit;cursor:pointer}
.settings-switch>.ui-icon:first-child{width:24px;height:24px;color:var(--ui-brand-dark)}.settings-switch>span{flex:1}.settings-switch b{display:block;font-size:15.5px}.settings-switch small{display:block;font-size:12.5px;color:var(--ui-text-muted);margin-top:2px}
.settings-switch>.ui-icon:last-child{width:18px;height:18px;color:var(--ui-text-muted)}
.settings-profile-avatar{font-weight:800;font-size:18px;color:var(--ui-brand-dark)}
.staff-row{display:flex;align-items:center;gap:12px;width:100%;border:0;border-top:1px solid var(--ui-border);background:transparent;padding:10px 2px;text-align:left;font:inherit;color:inherit;cursor:pointer}
.staff-row:disabled{cursor:default}.staff-row.is-off{opacity:.55}
.staff-row-copy{flex:1;min-width:0}.staff-row-copy b{display:block;font-size:15px}.staff-row-copy small{display:block;font-size:12.5px;color:var(--ui-text-muted);margin-top:3px}
.staff-roles{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.staff-roles em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--ui-brand-dark);background:var(--ui-brand-soft);border-radius:8px;padding:2px 7px}
.staff-row>.ui-icon{width:18px;height:18px;color:var(--ui-text-muted)}
.staff-sub{font-weight:600;font-size:12.5px;color:var(--ui-text-muted);margin-left:4px}
.staff-role-list{display:flex;flex-direction:column;gap:8px}
.staff-role{display:flex;gap:12px;align-items:flex-start;width:100%;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);border-radius:14px;padding:11px 12px;text-align:left;font:inherit;color:inherit;cursor:pointer}
.staff-role b{display:block;font-size:15px}.staff-role small{display:block;font-size:12.5px;color:var(--ui-text-muted);margin-top:2px;line-height:1.35}
.staff-role-check{width:24px;height:24px;flex:0 0 24px;border-radius:7px;border:2px solid var(--ui-field-border);display:grid;place-items:center;color:transparent;margin-top:1px}
.staff-role-check .ui-icon{width:16px;height:16px}
.staff-role.active{border-color:var(--ui-brand);background:var(--ui-brand-soft)}.staff-role.active .staff-role-check{background:var(--ui-brand);border-color:var(--ui-brand);color:#fff}
.staff-switch{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.staff-switch input{width:22px;height:22px;accent-color:var(--ui-brand);margin:2px 0 0;flex:0 0 auto}
.staff-switch b{display:block;font-size:15px}.staff-switch small{display:block;font-size:12.5px;color:var(--ui-text-muted);margin-top:2px}
.od-row.danger-row b{color:var(--ui-danger)}.od-row.danger-row>.ui-icon:first-child{color:var(--ui-danger)!important}
.od-row.danger-row small{display:block;font-size:12.5px;color:var(--ui-text-muted);font-weight:500;margin-top:2px}
.od-primary-wide.danger-fill{background:var(--ui-danger)!important}
.od-secondary-wide.danger{color:var(--ui-danger)!important;border-color:var(--ui-danger-border)!important}
.audit-row{background:var(--ui-card-bg);border:1px solid var(--line,var(--ui-border));border-left:4px solid var(--ui-brand);border-radius:14px;padding:10px 12px;margin:0 0 8px}
.audit-row.is-delete{border-left-color:var(--ui-danger)}
.audit-row>div{display:flex;justify-content:space-between;gap:10px}.audit-row b{font-size:14.5px}.audit-row time{font-size:12px;color:var(--ui-text-muted);font-variant-numeric:tabular-nums}
.audit-row p{margin:4px 0 0;font-size:13.5px;color:var(--ui-text);overflow-wrap:anywhere}.audit-row .audit-reason{color:var(--ui-text)}
.audit-row small{display:block;margin-top:5px;font-size:12px;color:var(--ui-text-muted)}
/* lock screen tiles: full width of the card, readable on phone and tablet */
html body .lock-card .staff-tiles{width:100%!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))!important;gap:10px!important;margin:4px 0 10px!important}
html body .lock-card .staff-tile{width:100%!important;height:auto!important;min-height:66px!important;margin:0!important;padding:10px 14px!important;border-radius:18px!important;font-size:16px!important;justify-content:flex-start!important;box-shadow:none!important}
html body .lock-card .staff-tile-copy b{font-size:16px!important}
html body .lock-card .staff-tile-copy small{font-size:13px!important}
html body .lock-card .lock-avatar{display:grid!important;place-items:center!important}

/* Field wrappers and inline-styled search inputs share the field palette. */
.search input,.appt-search input{color:var(--ui-text)}
#stock-part-search,#order-search-input{
  border-color:var(--ui-field-border)!important;
  background:var(--ui-field-bg)!important;
  color:var(--ui-text)!important;
}
#stock-part-search:focus,#order-search-input:focus,
.search:focus-within,.pin-field:focus-within{border-color:var(--ui-brand)!important}
:is(.intake-device-list button,.intake-problem-option,.intake-problem-group-toggle,
.intake-existing-device,.intake-suggest-card,.work-service-option,.work-service-group-toggle,
.intake-chips button,.acc-langs button,.client-sign-langs button,.appt-suggest-row,
.appt-chips button,.appt-days button,.appt-slots button,.appt-seg button,
.ui-pick-list button,.staff-role,.finance-period button,.period-btn,
.segmented button,.inbox-switch button,.od-tabs button):focus-visible{
  border-color:var(--ui-brand)!important;
}

/* Warehouse sheets: compact heading and actions, matching work windows. */
html:root body .warehouse-part-sheet .od-sheet-head h2{
  font-size:22px!important;
  line-height:1.2!important;
  white-space:nowrap;
}
html:root body .warehouse-part-sheet .od-sheet-close{flex-shrink:0}
html:root body .warehouse-part-sheet .od-primary-wide{
  min-height:56px!important;
  font-size:17px!important;
  border-radius:16px!important;
  margin:0!important;
  padding:0 16px!important;
  white-space:nowrap;
}
@media(max-width:380px){
  html:root body .warehouse-part-sheet .od-sheet-head h2{font-size:20px!important}
}

/* «Входящие»: one sticky header row (switch + actions) instead of a switch block
   followed by its own separate «Записи · N» / «Обращения · N» topbar. */
html:root body .topbar.inbox-head{gap:10px!important}
html:root body .topbar.inbox-head .inbox-switch{
  width:auto!important;max-width:none!important;margin:0!important;flex:1 1 auto!important;min-width:0!important;
  border-radius:16px!important;
}
html:root body .topbar.inbox-head .inbox-switch button{
  min-height:40px!important;height:40px!important;font-size:13px!important;padding:0 10px!important;gap:6px!important;white-space:nowrap!important;
}
html:root body .topbar.inbox-head .inbox-switch .ui-icon{width:16px!important;height:16px!important}
html:root body .topbar.inbox-head .top-actions{flex:0 0 auto!important;width:auto!important}

/* ===== 2.9.22 — cancelled order with installed warehouse parts: return / write off (no default) ===== */
.parts-decision-dialog{max-height:calc(100dvh - 32px);overflow:auto}
.parts-decision-list{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:6px;text-align:left}
.parts-decision-row{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-bg)}
.parts-decision-row b{font-size:15px;color:var(--ui-text)}
.parts-decision-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.parts-decision-choice{display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 10px;border-radius:14px;border:1px solid var(--ui-field-border,var(--ui-border));background:var(--ui-field-bg,var(--ui-card-bg));color:var(--ui-text);font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.parts-decision-choice .ui-icon{width:18px;height:18px;flex:0 0 auto}
.parts-decision-choice.is-selected{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.parts-decision-choice[data-choice="writeoff"].is-selected{border-color:var(--ui-danger);background:var(--ui-danger-soft);color:var(--ui-danger)}
.ui-dialog-ok:disabled{opacity:.45;cursor:not-allowed}
@media (max-width:360px){.parts-decision-choices{grid-template-columns:1fr}}

/* ===== 2.9.23 — warehouse receipts ===== */
.wh-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
.wh-actions .od-primary-wide,.wh-actions .od-secondary-wide{margin:0!important;min-height:52px;display:flex;align-items:center;justify-content:center;gap:8px}
.wh-actions:has(>:only-child){grid-template-columns:1fr}
.wh-search{display:flex;align-items:center;gap:10px;height:52px;padding:0 14px;border:1.5px solid var(--ui-field-border);border-radius:16px;background:var(--ui-field-bg);color:var(--ui-text-muted);margin-bottom:10px}
.wh-search .ui-icon{width:20px;height:20px;flex:0 0 auto}
.wh-search input{flex:1;min-width:0;height:100%!important;border:0!important;background:transparent!important;padding:0!important;color:var(--ui-text);font-size:16px;outline:none}
.wh-list{display:grid;gap:8px}
.wh-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-card-bg);color:var(--ui-text);font:inherit}
.wh-row .ui-icon{width:18px;height:18px;flex:0 0 auto;color:var(--ui-text-muted)}
.wh-row-main{flex:1;min-width:0;display:grid;gap:3px}
.wh-row-main b{font-size:16px;overflow-wrap:anywhere}
.wh-row-main small{font-size:13px;color:var(--ui-text-muted)}
.wh-low{display:inline-flex;align-items:center;gap:4px;color:var(--ui-warning);font-size:12px;font-weight:700}
.wh-low em{font-style:normal}
.wh-low .ui-icon{color:var(--ui-warning)}
.wh-tiles{display:flex;gap:8px;margin:12px 0}
.wh-tiles>div{flex:1 1 0;display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 10px;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-card-bg)}
.wh-tiles small{font-size:12.5px;color:var(--ui-text-muted);font-weight:600;line-height:1.2}
.wh-tiles b{font-size:clamp(16px,4.6vw,21px);color:var(--ui-text);font-variant-numeric:tabular-nums;white-space:nowrap}
.wh-tiles>div.is-accent{background:var(--ui-brand-soft)}
.wh-tiles>div.is-accent b{color:var(--ui-brand-dark)}
.wh-btns{display:grid;gap:10px;margin-top:14px}
.wh-btns .od-secondary-wide{margin:0!important}
.wh-danger{color:var(--ui-danger)!important;border-color:var(--ui-danger)!important}
.rc-chips{display:flex;flex-wrap:wrap;gap:6px}
.rc-chip{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.rc-chip.is-posted{background:var(--ui-success-soft);color:var(--ui-success)}
.rc-chip.is-cancelled{background:var(--ui-danger-soft);color:var(--ui-danger)}
.rc-chip.is-wait{background:var(--ui-warning-soft);color:var(--ui-warning)}
.rc-line{display:grid;gap:10px;padding:12px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-card-bg);margin-bottom:8px}
.rc-line-head{display:flex;align-items:center;gap:8px}
.rc-line-head b{flex:1;min-width:0;overflow-wrap:anywhere}
.rc-line small{color:var(--ui-text-muted);font-size:13px}
.rc-line .od-part-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}

/* 2.9.27 — «Добавить запчасть» (выбор, со склада, вручную): окно не выше ~85% экрана, внутри прокрутка;
   при экранной клавиатуре высота следует за видимой областью (--sheet-vvh ставит bindSheetKeyboard) */
html:root body .od-sheet-backdrop.wf-sheet.parts-sheet .od-sheet{max-height:min(85dvh,calc(var(--sheet-vvh,100dvh) - var(--ui-safe-top,0px) - 12px))!important}
html:root body .od-sheet-backdrop.wf-sheet.parts-sheet .od-sheet-body{overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:calc(24px + var(--ui-safe-bottom,0px))!important}

/* 2.9.28 — barcode scanner: scan buttons, viewfinder, manual entry */
.scan-field{display:flex;align-items:center;gap:8px;margin-top:6px}
.scan-field input{flex:1;min-width:0;margin-top:0!important}
.scan-btn{flex:0 0 auto;width:48px;height:48px;display:grid;place-items:center;padding:0;border:1.5px solid var(--ui-field-border);border-radius:14px;background:var(--ui-field-bg);color:var(--ui-text);cursor:pointer}
.scan-btn .ui-icon{width:24px;height:24px}
.scan-btn-lg{width:52px;height:52px;border-radius:16px}
.wh-search-row{display:flex;align-items:flex-start;gap:8px}
.wh-search-row .wh-search{flex:1;min-width:0}
button.intake-scan-btn{border:0;background:transparent;padding:0;cursor:pointer;color:var(--ui-text)}
/* 2.9.32: the camera windows (scanner, photo series) over EVERYTHING. On a phone «Новая приёмка» is a full-screen
   layer with z-index 99999 (styles.css v1.4.1) — the scanner with 9999 opened under it: invisible, the camera on,
   each further tap on the still-visible button one more hidden window. Toasts likewise were hidden under the form. */
.intake-camera-overlay{z-index:100200}
#toast-stack{z-index:100300}
.scan-frame{position:absolute;inset:0;margin:auto;width:min(86vw,420px);height:min(46vw,200px);border:3px solid rgba(255,255,255,.85);border-radius:20px;box-shadow:0 0 0 2000px rgba(5,7,10,.45);pointer-events:none}
.scan-error{position:absolute;left:16px;right:16px;bottom:16px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.12);color:#fff;font-size:15px;line-height:1.35;text-align:center}
.scan-manual{display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(5,7,10,.94)}
.scan-manual input{flex:1;min-width:0;height:48px;border-radius:14px;border:1.5px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;padding:0 14px;font-size:16px}
.scan-manual button{height:48px;min-width:64px;border:0;border-radius:14px;background:#fff;color:#05070a;font-weight:700;font-size:16px}
.scan-overlay [data-scan-hint][data-tone=warn]{color:#ffd37a}
.scan-overlay [data-scan-hint][data-tone=ok]{color:#8be0a4}

/* 2.9.29 — scanner: a question panel inside the window (the camera keeps running) + a persistent note line */
.scan-note{position:absolute;left:16px;right:16px;top:12px;padding:8px 12px;border-radius:12px;background:rgba(5,7,10,.7);color:#ffd37a;font-size:14px;line-height:1.3;text-align:center;pointer-events:none}
.scan-ask{position:absolute;left:0;right:0;bottom:0;max-height:78%;display:flex;flex-direction:column;z-index:3}
.scan-ask[hidden]{display:none}
.scan-ask-box{display:flex;flex-direction:column;gap:8px;min-height:0;padding:16px 14px 14px;border-radius:20px 20px 0 0;background:var(--ui-card-bg);color:var(--ui-text);border:1px solid var(--ui-border);box-shadow:0 -8px 28px rgba(0,0,0,.35)}
.scan-ask-box>b{font-size:18px;line-height:1.25}
.scan-ask-box>p{margin:0;font-size:14px;line-height:1.35;color:var(--ui-text-muted)}
.scan-ask-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:0}
.scan-ask-opt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:52px;padding:10px 14px;border-radius:14px;border:1.5px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-text);font-size:16px;font-weight:600;text-align:left}
.scan-ask-opt small{font-size:13px;font-weight:400;color:var(--ui-text-muted)}
.scan-ask-opt.is-primary{border-color:var(--ui-brand);background:var(--ui-brand-soft)}
.scan-ask-opt.is-danger{border-color:var(--ui-danger-border);background:var(--ui-danger-soft);color:var(--ui-danger)}
.scan-ask-cancel{min-height:52px;border-radius:14px;border:0;background:transparent;color:var(--ui-text-muted);font-size:16px;font-weight:600}

/* 2.9.29 — intake: second IMEI / serial field and the device history under it */
.intake-serial2{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.intake-serial2[hidden]{display:none}
.intake-serial2-add,.intake-serial2-remove{align-self:flex-start;min-height:44px;padding:0 14px;border:0;border-radius:12px;background:transparent;color:var(--ui-brand-dark);font-size:15px;font-weight:600}
.intake-serial2-add[hidden]{display:none}
.intake-devhist-box:empty{display:none}
.intake-devhist-box{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.intake-devhist{padding:10px 12px;border-radius:14px;border:1px solid var(--ui-border);background:var(--ui-card-bg);color:var(--ui-text);font-size:14px;line-height:1.4}
.intake-devhist b{font-weight:700}
.intake-devhist ul{margin:6px 0 0;padding:0 0 0 18px}
.intake-devhist.is-info{border-color:var(--ui-brand);background:var(--ui-brand-soft)}
.intake-devhist.is-warn{border-color:var(--ui-warning-border);background:var(--ui-warning-soft);color:var(--ui-warning)}
.intake-imei-warn{padding:8px 12px;border-radius:12px;background:var(--ui-warning-soft);border:1px solid var(--ui-warning-border);color:var(--ui-warning);font-size:14px;line-height:1.35}
.intake-devhist-note{font-size:13px;color:var(--ui-text-muted)}

/* 2.9.38 — «Редактировать заказ»: обязательное поле без значения (причина изменения) */
.agreement-form label.is-invalid input,.agreement-form label.is-invalid textarea{border-color:var(--ui-danger)!important;box-shadow:0 0 0 2px var(--ui-danger-soft)}
/* 2.9.40 — «Акт выдачи» как «Акт приёмки»: факты под итогами, предложение отправить, отказ сервера */
.ho-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ho-facts>div{background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:var(--ui-card-radius,16px);padding:10px 12px;min-width:0;line-height:1.35}
.ho-facts small{display:block;font-size:12.5px;font-weight:600;color:var(--ui-text-muted)}
.ho-facts b{display:block;font-size:15.5px;margin-top:2px;color:var(--ui-text);overflow-wrap:anywhere}
.ho-photo-warn{margin:0 0 12px}
.ho-offer{margin:0;font-size:15px;font-weight:650;color:var(--ui-text)}
.acc-status.is-failed{background:var(--ui-danger-soft);color:var(--ui-danger)}

/* ===== 2.10.5 — каналы клиента: окно «Отправить клиенту», вкладка «Клиент» (макет docs/mockups/comm-center) ===== */
.ch-layer{z-index:100100}
.ch-sub{margin:0 2px 12px;color:var(--ui-text);font-size:15px}
.ch-card{border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-card-bg);padding:12px 14px;margin:0 0 10px}
.ch-row{display:flex;align-items:center;gap:12px}
.ch-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--ui-brand-soft);color:var(--ui-brand-dark);flex:0 0 40px}
.ch-ico .ui-icon,.ch-ico svg{width:22px;height:22px}
.ch-main{flex:1;min-width:0}
.ch-main b{display:block;font-size:16px;color:var(--ui-text)}
.ch-main small{display:block;font-size:13.5px;color:var(--ui-text-muted);line-height:1.3;overflow-wrap:anywhere}
.ch-main small a{color:var(--ui-brand-dark)}
.ch-state{display:inline-block;margin-left:4px;vertical-align:1px;font-size:12.5px;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}
.ch-ok{background:var(--ui-success-soft);color:var(--ui-success);border:1px solid var(--ui-success-border)}
.ch-no{background:var(--ui-warning-soft);color:var(--ui-warning);border:1px solid var(--ui-warning-border)}
.ch-box{width:28px;height:28px;border-radius:8px;border:2px solid var(--ui-field-border,var(--ui-border));background:var(--ui-field-bg,var(--ui-card-bg));display:grid;place-items:center;flex:0 0 28px;padding:0;color:#fff}
.ch-box.on{background:var(--ui-brand);border-color:var(--ui-brand)}
.ch-box.on svg{width:18px;height:18px}
.ch-box.off{opacity:.45}
.ch-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.ch-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--ui-border);background:var(--ui-field-bg,var(--ui-card-bg));color:var(--ui-brand-dark);font-weight:600;font-size:14.5px}
.ch-btn svg{width:18px;height:18px}
.ch-btn.primary-soft{background:var(--ui-brand-soft)}
.ch-btn[disabled]{opacity:.55}
.ch-hint{display:block;margin-top:6px;font-size:13px;color:var(--ui-text-muted)}
.ch-qr{display:flex;gap:12px;align-items:center;margin-top:12px;padding:10px;border-radius:12px;background:var(--ui-bg);border:1px dashed var(--ui-border)}
.ch-qr-img{width:112px;height:112px;flex:0 0 112px;background:#fff;border-radius:8px;padding:6px;box-sizing:border-box;display:block}
.ch-qr-img svg{width:100%;height:100%;display:block}
.ch-qr small{display:block;color:var(--ui-text-muted);font-size:13px;line-height:1.35}
.ch-link{font-family:ui-monospace,monospace;font-size:12px;color:var(--ui-text);word-break:break-all;margin-top:6px}
.ch-input{display:flex;gap:8px;margin-top:10px}
.ch-input input{flex:1;min-width:0;min-height:46px;border-radius:12px;border:1px solid var(--ui-field-border,var(--ui-border));background:var(--ui-field-bg,var(--ui-card-bg));color:var(--ui-text);padding:0 12px;font-size:16px}
.ch-input .ch-btn{flex:0 0 auto}
.ch-note{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;color:var(--ui-text-muted);margin:4px 2px 12px}
.ch-note svg{width:18px;height:18px;flex:0 0 18px;color:var(--ui-warning)}
.ch-send{width:100%;min-height:56px;border-radius:14px;border:0;background:var(--ui-brand);color:#fff;font-weight:700;font-size:17px;display:flex;align-items:center;justify-content:center;gap:8px}
.ch-send svg{width:20px;height:20px}
.ch-send[disabled]{background:var(--ui-border);color:var(--ui-text)}
.ch-secondary{width:100%;min-height:50px;border-radius:14px;border:1px solid var(--ui-border);background:transparent;color:var(--ui-text);font-weight:600;font-size:15.5px;margin-top:8px}
.ch-panel{padding:14px}
.ch-panel .od-subheading{margin:0 0 10px}

/* ===== 2.10.6 — лента клиента и чат заказа (центр общения) ===== */
html body #app .main:has(> .chat-thread) > .cc-chips{position:sticky;top:0;z-index:3;background:var(--ui-bg);margin:0 0 4px}
.cc-chips{display:flex;gap:8px;overflow-x:auto;padding:6px 0 8px;scrollbar-width:none}
.cc-chips::-webkit-scrollbar{display:none}
.cc-chip{flex:0 0 auto;border:1px solid var(--ui-border);border-radius:12px;padding:6px 10px;background:var(--ui-card-bg);color:var(--ui-text);font-size:13px;line-height:1.25;text-align:left}
.cc-chip b{display:block;font-size:13.5px}
.cc-chip span{color:var(--ui-text-muted)}
.cc-chip.on{border-color:var(--ui-brand);background:var(--ui-brand-soft)}
.cc-chip.on b{color:var(--ui-brand-dark)}
html body #app .chat-thread .cc-tag{display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--ui-text-muted);margin:0 0 3px}
.cc-tag svg{width:13px;height:13px}
.cc-tag em{font-style:normal;border:1px solid var(--ui-border);border-radius:6px;padding:0 5px}
html body #app .chat-thread .cc-doc{display:flex;align-items:center;gap:8px;border:1px solid var(--ui-border);border-radius:10px;padding:8px;background:var(--ui-card-bg);margin:4px 0 2px}
.cc-doc svg{width:20px;height:20px;color:var(--ui-brand-dark);flex:0 0 20px}
.cc-doc b{font-size:14px;color:var(--ui-text)}
.cc-head-sub{font-size:12.5px;color:var(--ui-text-muted)}
.cc-status{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--ui-text-muted)}
.cc-status svg{width:14px;height:14px}
.cc-status.bad{color:var(--ui-danger)}
.cc-status.bad button{border:0;background:none;color:var(--ui-brand-dark);font-weight:700;font-size:12px;padding:0 0 0 6px}
.cc-time{margin-left:6px}
html body #app .chat-thread .message-bubble.note{background:var(--ui-warning-soft)!important;border-color:var(--ui-warning-border)!important;border-style:dashed!important}
html body #app .main > .cc-compose{position:sticky;bottom:0;z-index:3;background:var(--ui-bg);padding:8px 0 calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--ui-border);margin-top:auto}
.cc-compose-top{display:flex;gap:8px;align-items:center;margin-bottom:8px;flex-wrap:wrap}
.cc-pill{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid var(--ui-border);border-radius:999px;padding:4px 12px;font-size:13.5px;color:var(--ui-text);background:var(--ui-card-bg)}
.cc-pill.on{border-color:var(--ui-brand);color:var(--ui-brand-dark);background:var(--ui-brand-soft);font-weight:600}
.cc-pill[disabled]{opacity:.45}
.cc-pill svg{width:16px;height:16px}
.cc-pill.off{color:var(--ui-text-muted);background:var(--ui-bg);border-style:dashed}
.cc-pill.off[aria-disabled="true"]{opacity:.7}
.st-langs{display:flex;gap:8px;margin:4px 0 10px}
.st-lang{flex:1;min-height:44px;border:1px solid var(--ui-field-border,var(--ui-border));border-radius:12px;background:var(--ui-card-bg);color:var(--ui-text);font-size:15px;font-weight:600}
.st-lang.on{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.cc-order-pick select{min-height:36px;border-radius:999px;border:1px solid var(--ui-border);background:var(--ui-card-bg);color:var(--ui-text);padding:0 10px;font-size:13.5px;max-width:220px}
.cc-row{display:flex;gap:8px;align-items:flex-end}
.cc-row textarea{flex:1;min-height:46px;max-height:140px;border-radius:14px;border:1px solid var(--ui-field-border,var(--ui-border));background:var(--ui-field-bg,var(--ui-card-bg));color:var(--ui-text);padding:11px 12px;font-size:16px;resize:none;font-family:inherit}
.cc-send{width:46px;height:46px;border-radius:14px;border:0;background:var(--ui-brand);color:#fff;display:grid;place-items:center;flex:0 0 46px}
.cc-send svg{width:20px;height:20px}
.cc-send[disabled]{background:var(--ui-border);color:var(--ui-text)}
.cc-hint{display:block;margin-top:6px;font-size:12.5px;color:var(--ui-text-muted);line-height:1.35}
.conv-filters{padding:4px 16px 8px}
.conv-list{display:flex;flex-direction:column;gap:8px;padding:0 16px 16px}
.conv-row{display:flex;align-items:center;gap:12px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-card-bg);padding:10px 12px;text-align:left;color:var(--ui-text);width:100%}
.conv-row-main{flex:1;min-width:0}
.conv-row-main b{display:block;font-size:15.5px;color:var(--ui-text)}
.conv-row-main b em{font-style:normal;font-weight:600;font-size:12px;color:var(--ui-text-muted);border:1px solid var(--ui-border);border-radius:6px;padding:0 5px;margin-left:4px}
.conv-row-main small{display:flex;align-items:center;gap:4px;font-size:13.5px;color:var(--ui-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conv-row-main small svg{width:14px;height:14px;flex:0 0 14px}
.conv-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.conv-row-side small{font-size:12px;color:var(--ui-text-muted)}
.conv-unread{font-style:normal;min-width:22px;height:22px;border-radius:11px;background:var(--ui-brand);color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;padding:0 6px}
.od-chat-btn{position:relative}
.client-write-btn{margin:12px 16px 4px;width:calc(100% - 32px)}
/* три вкладки «Входящих» (Переписка / Обращения / Записи) в одну строку */
html:root body .topbar.inbox-head .inbox-switch{display:flex!important;flex-wrap:nowrap!important;flex:1 1 auto!important;min-width:0!important}
html:root body .topbar.inbox-head .inbox-switch button{flex:1 1 0!important;min-width:0!important;padding:0 6px!important;gap:5px!important;font-size:13.5px!important;position:relative}
html:root body .topbar.inbox-head .inbox-switch button span{overflow:hidden;text-overflow:ellipsis}
html:root body .topbar.inbox-head .inbox-switch button .notify-dot{position:absolute;top:2px;right:4px;font-style:normal;min-width:18px;height:18px;border-radius:9px;background:var(--ui-brand);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;padding:0 4px}
html:root body .topbar.inbox-head .inbox-switch button .ui-icon{display:none!important}
html:root body .topbar.inbox-head .inbox-switch button{font-size:13px!important;padding:0 4px!important}
html:is(.mobile-app-ui,.phone-shape-ui) body #app .topbar.inbox-head .inbox-switch button{font-size:13px!important;padding:0 4px!important;gap:4px!important;min-width:0!important}
html:is(.mobile-app-ui,.phone-shape-ui) body #app .topbar.inbox-head .inbox-switch .ui-icon{display:none!important}
.conv-row-main b em{white-space:nowrap}

/* ===== 2.10.8 — «Сообщить этап» (центр общения, шаг 9) ===== */
.st-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 14px}
.st-stage{min-height:46px;border-radius:12px;border:1px solid var(--ui-border);background:var(--ui-field-bg,var(--ui-card-bg));color:var(--ui-text);font-weight:600;font-size:14.5px;padding:4px 8px}
.st-stage.on{border-color:var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.st-label{display:block;margin:0 2px 6px;font-size:13px;font-weight:600;color:var(--ui-text-muted)}
.st-preview{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.45;color:var(--ui-text);background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:14px;padding:12px 14px;margin:0 0 10px}
.st-head{display:block;color:var(--ui-text-muted);font-size:13.5px;margin-bottom:8px}
.st-extra{width:100%;box-sizing:border-box;min-height:64px;border-radius:12px;border:1px solid var(--ui-field-border,var(--ui-border));background:var(--ui-field-bg,var(--ui-card-bg));color:var(--ui-text);padding:10px 12px;font-size:16px;margin:0 0 12px;resize:vertical;font-family:inherit}
@media (max-width:380px){ .st-stages{grid-template-columns:repeat(2,minmax(0,1fr))} }

/* ===== 2.10.10 — входящая почта в ленте (центр общения, этап 2) ===== */
html body #app .chat-thread .cc-subj{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ui-text);margin:0 0 4px}
.cc-subj svg{width:14px;height:14px;color:var(--ui-text-muted);flex:0 0 14px}
html body #app .chat-thread .cc-warn{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--ui-warning-border);background:var(--ui-warning-soft);color:var(--ui-text);border-radius:10px;padding:8px 10px;margin:2px 0 6px;font-size:13px;line-height:1.35}
.cc-warn svg{width:16px;height:16px;flex:0 0 16px;color:var(--ui-warning);margin-top:1px}
.cc-warn b{color:var(--ui-text)}
html body #app .chat-thread .cc-quoted{display:block;font-size:11.5px;color:var(--ui-text-muted);margin:2px 0 0;font-style:italic}
html body #app .chat-thread button.cc-file{width:100%;text-align:left;font:inherit;cursor:pointer}
.mail-status .mail-check{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-card-bg);margin:0 0 8px}
.mail-status .mail-check svg{width:18px;height:18px;flex:0 0 18px;margin-top:2px}
.mail-status .mail-check.ok svg{color:var(--ui-success)}
.mail-status .mail-check.bad svg{color:var(--ui-warning)}
.mail-status .mail-check.danger{border-color:var(--ui-danger-border);background:var(--ui-danger-soft)}
.mail-status .mail-check.danger svg{color:var(--ui-danger)}
.mail-status .mail-check b{display:block;font-size:15px;color:var(--ui-text)}
.mail-status .mail-check small{display:block;font-size:12.5px;color:var(--ui-text-muted)}
.mail-counts{list-style:none;margin:0 0 8px;padding:0;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-card-bg)}
.mail-counts li{display:flex;justify-content:space-between;padding:9px 12px;border-top:1px solid var(--ui-border);font-size:14.5px;color:var(--ui-text)}
.mail-counts li:first-child{border-top:0}

/* ===== 2.10.12 — «Уведомления»: подсказка под выключенной категорией ===== */
.push-cat .push-cat-off{display:flex;gap:6px;align-items:flex-start;margin:-2px 0 8px 32px;font-size:13px;line-height:1.35;color:var(--ui-text)}
.push-cat .push-cat-off[hidden]{display:none}
.push-cat .push-cat-off svg{width:15px;height:15px;flex:0 0 15px;color:var(--ui-warning);margin-top:1px}

/* ===== 2.10.14 — непрочитанные сообщения клиентов: цифра на «Входящих», плашка на главном ===== */
.bottom-nav [data-route=inbox], .sidebar [data-route=inbox]{position:relative}
.bottom-nav .nav-dot{position:absolute;top:4px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;
  background:#c62828;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center;font-style:normal;box-sizing:border-box}
/* кружок — всегда тёмно-красный с белой цифрой (5.6:1 в обеих темах), как тосты: --ui-danger в тёмной теме светлый */
.sidebar .nav-dot{position:static;margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#c62828;
  color:#fff;font-size:12px;font-weight:700;line-height:20px;text-align:center;font-style:normal}
.home-unread-banner{display:flex;align-items:center;gap:10px;width:100%;margin:0 0 12px;padding:12px 14px;border-radius:var(--ui-card-radius,16px);
  border:1px solid var(--ui-brand);background:var(--ui-brand-soft);color:var(--ui-text);font-size:15.5px;text-align:left;cursor:pointer}
.home-unread-banner svg{width:20px;height:20px;flex:0 0 20px;color:var(--ui-brand-dark)}
.home-unread-banner span{flex:1}
.home-unread-banner b{color:var(--ui-brand-dark)}
/* ---- 2.11.0 — этикетки (PDF точного размера): окно печати, настройки, счётчик копий ----
   Только переменные темы. Превью этикетки — белая «бумага» в обеих темах (#fff осознанно, как у QR и PDF). */
.wh-actions>:last-child:nth-child(3){grid-column:1/-1}
.label-sheet .lbl-preview{display:flex;justify-content:center;align-items:center;min-height:96px;margin:4px 0 6px}
.label-sheet .lbl-canvas{display:block;background:#fff;border:1px solid var(--ui-border);border-radius:10px;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.label-sheet .lbl-count{margin:0 0 8px;text-align:center;font-size:14px;color:var(--ui-text-muted)}
.label-sheet .lbl-count:empty{display:none}
.lbl-size{display:flex;align-items:center;gap:12px;width:100%;min-height:var(--ui-control-h);padding:10px 14px;margin:0 0 12px;border:1.5px solid var(--ui-field-border);border-radius:16px;background:var(--ui-field-bg);color:var(--ui-text);text-align:left}
.lbl-size>span{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.lbl-size b{font-size:16px;font-weight:700;color:var(--ui-text)}
.lbl-size small{font-size:13px;color:var(--ui-text-muted)}
.lbl-size .ui-icon{width:20px;height:20px;flex:0 0 auto;color:var(--ui-brand-dark)}
.lbl-copies{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;font-size:16px;font-weight:650;color:var(--ui-text)}
.lbl-stepper{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}
.lbl-stepper button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--ui-field-border);border-radius:12px;background:var(--ui-field-bg);color:var(--ui-text);padding:0}
.lbl-stepper button .ui-icon{width:20px;height:20px}
.lbl-stepper input{width:64px!important;height:44px!important;min-height:44px!important;text-align:center;font-size:17px!important;font-weight:700;border:1.5px solid var(--ui-field-border)!important;border-radius:12px!important;background:var(--ui-field-bg)!important;color:var(--ui-text)!important;padding:0 4px!important;-moz-appearance:textfield}
.lbl-stepper input::-webkit-outer-spin-button,.lbl-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.lbl-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--ui-border)}
.lbl-row:last-child{border-bottom:0}
.lbl-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.lbl-row-main b{font-size:15.5px;font-weight:650;color:var(--ui-text);overflow-wrap:anywhere}
.lbl-row-main small{font-size:13px;color:var(--ui-text-muted);overflow-wrap:anywhere}
[data-lbl-stock]{margin:0 0 12px}
.lbl-nocode{margin-top:10px}
.lbl-nocode>span{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.lbl-nocode small{font-weight:500;font-size:13.5px}
.lbl-nocode .od-secondary-wide{margin:4px 0 0!important}
.lbl-pick{max-height:52vh;overflow-y:auto;margin:0 0 12px;-webkit-overflow-scrolling:touch}
.lbl-gen-code{display:inline-flex;align-items:center;gap:6px;margin:-4px 0 4px;align-self:flex-start}
.lbl-gen-code[hidden]{display:none}
.lbl-gen-code .ui-icon{width:18px;height:18px}
.lbl-samples{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 0}
.lbl-samples figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.lbl-samples figcaption{font-size:13px;color:var(--ui-text-muted)}
.label-sheet [data-lbl-error]{margin:0 0 12px}
.label-sheet [data-lbl-error][hidden]{display:none}

/* ===== 2.11.2 — маркетинговое согласие в режиме подписи акта приёмки и в карточке клиента =====
   Отдельная карточка между актом и подписью: необязательная галочка (выключена), «уже получаете» + «Больше не присылать».
   Только переменные темы; галочка 30 px — нажимается пальцем. */
.client-consent{margin-top:16px;background:var(--ui-card-bg);border:1px solid var(--ui-border);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:10px}
.client-consent-k{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ui-text-muted)}
.client-consent-row{display:flex;gap:14px;align-items:flex-start;cursor:pointer;position:relative}
.client-consent-row input{position:absolute;opacity:0;width:30px;height:30px;margin:0;left:0;top:0;cursor:pointer}
.client-consent-box{flex:0 0 30px;height:30px;border:2px solid var(--ui-field-border);border-radius:8px;background:var(--ui-field-bg);position:relative}
.client-consent-row input:checked+.client-consent-box{background:var(--ui-brand);border-color:var(--ui-brand)}
.client-consent-row input:checked+.client-consent-box::after{content:"";position:absolute;left:8px;top:2px;width:8px;height:16px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg)}
.client-consent-row input:focus-visible+.client-consent-box{outline:3px solid var(--ui-brand);outline-offset:2px}
.client-consent-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.client-consent-copy b{font-size:18px;line-height:1.35;color:var(--ui-text);font-weight:700}
.client-consent-copy small{font-size:15px;line-height:1.45;color:var(--ui-text-muted)}
.client-consent .alt{display:block;margin-top:4px;opacity:.85}
.client-consent-chips{display:flex;gap:8px;flex-wrap:wrap;padding-left:44px}
.client-consent-chips span{font-size:13px;font-weight:600;background:var(--ui-brand-soft);color:var(--ui-brand-dark);border-radius:999px;padding:4px 10px}
.client-consent-state{display:flex;gap:10px;align-items:flex-start;font-size:17px;line-height:1.4;color:var(--ui-text)}
.client-consent-state>i{flex:0 0 12px;height:12px;margin-top:6px;border-radius:50%;background:var(--ui-success)}
.client-consent-state .ui-icon{flex:0 0 22px;width:22px;height:22px;color:var(--ui-success)}
.client-consent-stop{align-self:flex-start;min-height:48px;padding:10px 18px;border-radius:14px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-brand-dark);font-size:16px;font-weight:700}
.client-mkt{margin:12px 16px 0;display:flex;flex-direction:column;gap:8px}
.client-mkt[hidden]{display:none}

/* 2.11.4 — чат сотрудников: голосовые, запись, неотправленное */
.chat-reply [hidden]{display:none!important}
.chat-reply .sc-mic{background:var(--ui-brand);color:#fff}
.chat-reply.is-voice{align-items:center}
.chat-reply .sc-rec{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.chat-reply .sc-rec-btn{width:48px;height:48px;flex:0 0 48px;border-radius:24px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-text)}
.chat-reply .sc-rec-btn .ui-icon{width:22px;height:22px}
.chat-reply .sc-rec-stop{background:var(--ui-danger-fill);border-color:var(--ui-danger-fill);color:#fff}
.chat-reply .sc-rec-send{background:var(--ui-brand);border-color:var(--ui-brand);color:#fff}
.sc-rec-mid{flex:1;min-width:0;display:flex;align-items:center;gap:10px;min-height:48px}
.sc-rec-mid b{font-size:16px;font-variant-numeric:tabular-nums;color:var(--ui-text);min-width:42px}
.sc-rec-dot{width:12px;height:12px;flex:0 0 12px;border-radius:50%;background:var(--ui-danger);animation:sc-pulse 1s ease-in-out infinite}
@keyframes sc-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}
.sc-rec-wave,.sc-wave{display:flex;align-items:center;gap:2px;height:32px;min-width:0}
.sc-rec-wave{flex:1;overflow:hidden}
.sc-rec-wave i,.sc-wave i{flex:1 1 0;min-width:2px;max-width:5px;border-radius:2px;background:var(--ui-danger);align-self:center}
.sc-wave i{background:var(--ui-text-muted);opacity:.45}
.sc-wave i.on{background:var(--ui-brand);opacity:1}
.sc-rec-warn{flex:1 0 100%;padding:6px 12px;border-radius:12px;font-size:14px;font-weight:700;background:var(--ui-warning-soft);color:var(--ui-warning);border:1px solid var(--ui-warning-border)}
.sc-voice{display:flex;align-items:center;gap:10px;min-width:210px;max-width:100%}
.sc-voice .sc-voice-play{width:40px;height:40px;flex:0 0 40px;border-radius:50%;border:0;padding:0;display:grid;place-items:center;background:var(--ui-brand);color:#fff;cursor:pointer;position:relative}
.sc-voice .sc-voice-play::after{content:"";position:absolute;left:-2px;right:-2px;top:-2px;bottom:-2px}
.sc-voice-play .ui-icon{width:20px;height:20px}
.sc-voice-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sc-wave{cursor:pointer;touch-action:manipulation}
.sc-voice-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;color:var(--ui-text-muted);font-variant-numeric:tabular-nums}
.sc-speed{min-width:44px;min-height:44px;margin:-12px -6px -12px 0;padding:0 8px;border:0;border-radius:12px;background:transparent;color:var(--ui-brand-dark);font-size:13px;font-weight:700;cursor:pointer}
.chat-reply .sc-prev-voice{flex:1;min-width:0}
.sc-unheard{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--ui-brand);vertical-align:middle}
.sc-heard{display:block;font-size:12px;color:var(--ui-text-muted);margin-top:2px}
.chat-thread .message-bubble.is-pending{opacity:.78}
.chat-thread .message-bubble.is-failed{border:1px solid var(--ui-danger)!important;opacity:1}
.sc-pending{display:block;font-size:12.5px;color:var(--ui-text-muted);margin-top:2px}
.sc-pending.is-failed{color:var(--ui-danger)}
.sc-pending-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.sc-pending-actions button{min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-brand-dark);font-size:14px;font-weight:600;cursor:pointer}
.message-bubble.is-deleted .sc-deleted{font-style:italic;color:var(--ui-text-muted)}
.sc-older{text-align:center;color:var(--ui-text-muted);font-size:13px;padding:8px 0}

/* 2.11.6 — чат сотрудников: поле без лишней полосы прокрутки, кнопка «вниз», запись удержанием (жесты) */
.chat-reply textarea{overflow-y:hidden;padding:10px 16px;scrollbar-width:thin}
.chat-reply textarea.is-scroll{overflow-y:auto}
.chat-reply .sc-main{flex:1;min-width:0;display:flex;align-items:flex-end;gap:8px}
.chat-reply.is-voice .sc-main{align-items:center}
.chat-reply .sc-mic{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.chat-reply .sc-mic.sc-hold{touch-action:none;transition:transform .12s ease,background .12s ease;will-change:transform}
.chat-reply .sc-mic.is-recording{background:var(--ui-danger-fill);transform:scale(1.25)}
.chat-reply.is-voice,.chat-reply.is-voice *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.chat-reply .sc-rec-hold{flex-wrap:nowrap;min-height:44px;position:relative}
.sc-rec-hold .sc-rec-mid{flex:0 0 auto;min-height:44px}
.sc-slide-hint{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:4px;font-size:14px;font-weight:600;color:var(--ui-text-muted);white-space:nowrap;overflow:hidden;transition:opacity .08s linear;animation:sc-slide 1.4s ease-in-out infinite}
.sc-slide-hint .ui-icon{width:18px;height:18px;flex:0 0 18px}
.sc-slide-hint.is-near{color:var(--ui-danger);animation:none}
@keyframes sc-slide{0%,100%{translate:0}50%{translate:-6px}}
.sc-lock-hint{position:absolute;right:2px;bottom:14px;height:44px;padding:0 14px 0 12px;display:flex;align-items:center;gap:6px;border-radius:22px;border:1px solid var(--ui-border);background:var(--ui-card-bg);color:var(--ui-text-muted);font-size:13px;font-weight:600;white-space:nowrap;box-shadow:0 2px 10px rgba(0,0,0,.14);transition:transform .08s linear,color .12s ease,border-color .12s ease;pointer-events:none}
.sc-lock-hint .ui-icon{width:20px;height:20px;flex:0 0 20px}
.sc-lock-hint.is-near{color:var(--ui-brand-dark);border-color:var(--ui-brand)}
.sc-lock-hint[hidden]{display:none}
/* .sc-down-wrap прижат к строке ввода и в коротком, и в длинном чате: авто-отступ переносится со строки на обёртку */
html body #app .main:has(> .sc-down-wrap) > .chat-reply{margin-top:0!important}
.sc-down-wrap{margin-top:auto}
.sc-down-wrap{position:sticky;bottom:var(--sc-form-h,60px);height:0;overflow:visible;align-self:stretch;z-index:4;pointer-events:none}
.sc-down{pointer-events:auto;position:absolute;right:2px;bottom:10px;width:44px;height:44px;border-radius:22px;border:1px solid var(--ui-border);background:var(--ui-card-bg);color:var(--ui-brand-dark);box-shadow:0 2px 10px rgba(0,0,0,.18);display:grid;place-items:center;cursor:pointer;padding:0}
.sc-down .ui-icon{width:22px;height:22px}
.sc-down b{position:absolute;top:-7px;right:-7px;min-width:22px;height:22px;border-radius:11px;background:var(--ui-brand);color:#fff;font-size:12px;font-weight:700;line-height:22px;padding:0 6px;text-align:center}
.sc-down[hidden],.sc-down b[hidden]{display:none}
.chat-thread .message-photo.has-ar{max-height:220px;overflow:hidden}
.chat-thread .message-photo.has-ar img{height:100%}
.sc-mode-title{margin:0 0 10px;font-size:17px;font-weight:700;color:var(--ui-text)}
.sc-mode-card .od-choice small{color:var(--ui-text-muted)}

/* 2.11.10 — чат сотрудников: видео и документы (этап 2) */
html body #app .chat-thread .message-bubble.has-video{padding:4px 4px 5px!important;max-width:min(78%,320px)!important}
html body #app .chat-thread .message-bubble.has-video .message-time,html body #app .chat-thread .message-bubble.has-video .sc-pending{padding:0 7px}
html body #app .chat-thread .message-bubble.has-doc{min-width:min(78%,280px)}
.sc-video{position:relative;display:block;width:min(260px,62vw);max-height:340px;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#0b0f17}
.sc-video>img,.sc-video>video{display:block;width:100%;height:100%;object-fit:cover;background:#0b0f17}
.sc-video>img{background:#fff}   /* картинки — на белой «бумаге» (правило темы); превью непрозрачное и закрывает её целиком */
.sc-video.is-open{aspect-ratio:auto}
.sc-video.is-open>video{object-fit:contain;max-height:340px;height:auto}
.sc-video-ph{position:absolute;inset:0;display:grid;place-items:center;color:#c9d2e3}
.sc-video-ph .ui-icon{width:36px;height:36px}
.sc-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;border:0;padding:0;display:grid;place-items:center;background:rgba(0,0,0,.58);color:#fff;cursor:pointer}
.sc-video-play .ui-icon{width:26px;height:26px}
.sc-video-meta{position:absolute;left:8px;bottom:8px;padding:3px 8px;border-radius:10px;background:rgba(0,0,0,.62);color:#fff;font-size:12.5px;font-variant-numeric:tabular-nums}
.sc-video-note{position:absolute;left:8px;right:8px;bottom:8px;padding:6px 10px;border-radius:10px;background:rgba(0,0,0,.7);color:#fff;font-size:13px;line-height:1.3}
.sc-video-note.is-bad{background:#7f1d1d}
.sc-video-load{position:absolute;left:8px;right:8px;bottom:8px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;border-radius:10px;background:rgba(0,0,0,.7);color:#fff}
.sc-video-load .sc-progress{flex:1 0 100%;background:rgba(255,255,255,.25)}
.sc-video-load .sc-progress i{background:#fff}
.sc-video-load small{flex:1;font-size:12.5px;color:#fff}
.sc-video-cancel{min-height:44px;padding:0 12px;border-radius:10px;border:0;background:#fff;color:#111;font-weight:700;cursor:pointer}
.sc-progress{display:block;height:6px;border-radius:3px;overflow:hidden;background:var(--ui-border);margin:6px 0 2px}
.sc-progress[hidden]{display:none}
.sc-progress i{display:block;height:100%;width:0;background:var(--ui-brand);transition:width .2s linear}
.sc-doc{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:0}
.sc-doc-icon{width:44px;height:44px;flex:0 0 44px;border-radius:12px;display:grid;place-items:center;background:var(--ui-brand-soft);color:var(--ui-brand-dark)}
.sc-doc-icon .ui-icon{width:24px;height:24px}
.sc-doc-icon.is-pdf{background:var(--ui-danger-soft);color:var(--ui-danger)}
.sc-doc-icon.is-excel{background:var(--ui-success-soft);color:var(--ui-success)}
.sc-doc-icon.is-powerpoint{background:var(--ui-warning-soft);color:var(--ui-warning)}
.sc-doc-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sc-doc-body b{font-size:14.5px;color:var(--ui-text);overflow-wrap:anywhere;line-height:1.3}
.sc-doc-body small{font-size:12.5px;color:var(--ui-text-muted)}
.sc-doc-actions,.sc-doc-load{flex:1 0 100%;display:flex;gap:8px;align-items:center}
.sc-doc-load .sc-progress{flex:1}
.sc-doc-actions button,.sc-doc-load button{min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--ui-field-border);background:var(--ui-field-bg);color:var(--ui-brand-dark);font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.sc-doc-actions button .ui-icon{width:18px;height:18px}
.sc-attach .od-choice>.ui-icon{width:24px;height:24px;flex:0 0 24px;color:var(--ui-brand-dark)}
.sc-attach .od-choice small{color:var(--ui-text-muted)}
.sc-compress p{margin:0 0 10px;color:var(--ui-text);line-height:1.4}
.sc-compress-note{display:block;margin:6px 0 12px;font-size:14px;color:var(--ui-text)}
.sc-compress-note.is-bad{color:var(--ui-danger)}
.sc-vrec{position:fixed;inset:0;z-index:100200;background:#000;display:flex;flex-direction:column;color:#fff;-webkit-user-select:none;user-select:none}
.sc-vrec-view{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
.sc-vrec-top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(10px + env(safe-area-inset-top,0px)) 14px 10px;background:linear-gradient(rgba(0,0,0,.6),transparent)}
.sc-vrec-time{font-size:17px;font-variant-numeric:tabular-nums;color:#fff}
.sc-vrec-btn{width:48px;height:48px;border-radius:24px;border:0;background:rgba(0,0,0,.45);color:#fff;display:grid;place-items:center;cursor:pointer}
.sc-vrec-btn .ui-icon{width:24px;height:24px}
.sc-vrec-btn:disabled{opacity:.4}
.sc-vrec-warn{position:relative;align-self:center;margin-top:8px;padding:6px 14px;border-radius:14px;background:#b42318;color:#fff;font-weight:700}
.sc-vrec-warn[hidden]{display:none}
.sc-vrec-bottom{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;gap:14px;padding:16px 16px calc(22px + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent,rgba(0,0,0,.6))}
.sc-vrec-shoot{width:76px;height:76px;border-radius:50%;border:4px solid #fff;background:transparent;display:grid;place-items:center;cursor:pointer;padding:0}
.sc-vrec-shoot i{display:block;width:58px;height:58px;border-radius:50%;background:#e11d48;transition:all .15s ease}
.sc-vrec.is-recording .sc-vrec-shoot i{width:30px;height:30px;border-radius:8px}
.sc-vrec-pill{min-height:52px;padding:0 22px;border-radius:26px;border:0;background:rgba(255,255,255,.92);color:#111;font-size:16px;font-weight:700;display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.sc-vrec-pill.is-send{background:#2563eb;color:#fff}
.sc-vrec-pill .ui-icon{width:20px;height:20px}

/* 2.11.11 — «Google Диск недоступен: N документов ждут выгрузки» (Главная, владелец и администратор) */
.drive-alert-banner{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--ui-card-radius,16px);
  background:var(--ui-danger-soft);border:1px solid var(--ui-danger-border);color:var(--ui-text);margin:0 0 14px}
.drive-alert-banner>.ui-icon,.drive-alert-banner>svg{width:24px;height:24px;flex:0 0 24px;color:var(--ui-danger)}
.drive-alert-banner>span{flex:1;min-width:0}
.drive-alert-banner b{display:block;font-size:15px;line-height:1.3;color:var(--ui-danger)}
.drive-alert-banner small{display:block;font-size:13px;margin-top:4px;line-height:1.4;color:var(--ui-text)}
.drive-alert-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.drive-alert-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:12px;border:0;
  background:var(--ui-danger-fill);color:#fff;font-weight:600;font-size:14px}
.drive-alert-btn svg{width:18px;height:18px;flex:0 0 18px}
.drive-alert-btn.is-quiet{background:var(--ui-card-bg);color:var(--ui-text);border:1px solid var(--ui-border)}
.push-cat .push-cat-hint{display:block;margin:-2px 0 8px 32px;font-size:13px;line-height:1.35;color:var(--ui-text-muted)}

/* 2.11.12 — пробный режим сервера (app/trial_mode.py): плашка поверх всех экранов и окон. Телефон/планшет: корпус
   приложения (.app-shell, fixed) начинается под плашкой; окна (листы, камера) получают место через --ui-safe-top (им
   считается их высота). Компьютер — отступ страницы. Цвет — сплошная тёмно-оранжевая полоса с белым текстом в обеих
   темах (как тосты), контраст 5.8:1. */
html.trial-mode{--trial-strip-h:24px}
#trial-strip{position:fixed;left:0;right:0;top:env(safe-area-inset-top,0px);height:var(--trial-strip-h,24px);z-index:100500;
  display:block;padding:0 10px;background:#b43f00;color:#fff;font:600 13px/24px system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.25)}
html.trial-mode.touch-ui body #app .app-shell{top:calc(env(safe-area-inset-top,0px) + var(--trial-strip-h))!important}
html.trial-mode:not(.touch-ui) body{padding-top:var(--trial-strip-h)}
html.trial-mode body .od-sheet-backdrop,html.trial-mode body .intake-camera-overlay,html.trial-mode body .ui-dialog-backdrop{--ui-safe-top:calc(env(safe-area-inset-top,0px) + var(--trial-strip-h))}
.trial-note{margin:12px 0}

/* 2.11.18 — «Новая приёмка»: справочник CRM загружен не полностью / не загрузился (на всех ширинах,
   на компьютере прежде любое состояние было зелёным). */
html body .od-sheet-backdrop.new-intake-sheet .new-intake-form .intake-crm-status.is-partial,
html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status.is-partial{background:var(--ui-warning-soft)!important;color:var(--ui-warning)!important}
html body .od-sheet-backdrop.new-intake-sheet .new-intake-form .intake-crm-status.is-error,
html body .od-sheet-backdrop.new-intake-sheet .intake-crm-status.is-error{background:var(--ui-danger-soft)!important;color:var(--ui-danger)!important}
html body .od-sheet-backdrop.new-intake-sheet .new-intake-form .intake-crm-status.is-partial .intake-crm-badge,
html body .od-sheet-backdrop.new-intake-sheet .new-intake-form .intake-crm-status.is-error .intake-crm-badge{background:transparent!important;color:currentColor!important}

/* 2.12.0 — гарантийный ремонт (app/warranty_claims.py): блок обращения, заметки, строка «Гарантия» в финансах */
.od-warranty-card .od-next-icon{background:var(--ui-success-soft);color:var(--ui-success)}
.od-warranty-note{margin:8px 0;padding:10px 12px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-card-bg)}
.od-warranty-note small{display:block;color:var(--ui-text-muted);font-size:13px;margin-bottom:2px}
.od-warranty-note p{margin:0;color:var(--ui-text);white-space:pre-wrap}
.od-section .od-row[data-open-order-id],.finance-warranty-list .od-row{margin:6px 0;width:100%}
.intake-warranty-section .od-warning{margin:6px 0 10px}
.finance-warranty-list{display:flex;flex-direction:column;gap:6px;margin:8px 16px 0}
.document-settings-subhead{margin:18px 0 4px;font-size:16px;font-weight:700;color:var(--ui-text)}
.finance-warranty-report{margin:10px 16px 0;width:calc(100% - 32px)}
