/* SamsDesk: shared phone-first presentation. No payment/calendar logic here.
   Scoped to the authenticated Sam shell; PDFs, mail bodies and public pages
   deliberately do not inherit this theme. Timeline geometry is not changed. */
.sam-app-shell {
  --sam-accent: #725493;
  --sam-soft: #f0eaf7;
  --sam-line: #e7e2ed;
  --sam-ink: #302939;
  --sam-muted: #716679;
  background: #fff;
  color: var(--sam-ink);
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
.sam-app-shell .mobile-main { background: #fff; min-width: 0; }
.sam-app-shell .mobile-main > div:not(.calendar-shell):not(.kassa-workspace) {
  padding: 20px 24px 36px;
}
.sam-app-shell .mobile-main > .max-w-3xl { max-width: 1024px; }
.sam-app-shell .mobile-main :is(.shadow-card, .shadow-soft) { box-shadow: none !important; }
.sam-app-shell .mobile-main :is(h1, h2, h3) { color: var(--sam-ink); }
.sam-app-shell .mobile-main h1 { font-size: 24px; line-height: 1.25; letter-spacing: -.025em; font-weight: 700; }
.sam-app-shell .mobile-main h2 { font-size: 18px; line-height: 1.35; font-weight: 650; }
.sam-app-shell .mobile-main :is(button, a, input, select, textarea) { touch-action: manipulation; }
.sam-app-shell :is(button, a, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid #9675b9;
  outline-offset: 3px;
}
.sam-app-shell .mobile-main button:disabled { cursor: not-allowed; }
.sam-app-shell .mobile-main :is(input, select, textarea) { accent-color: var(--sam-accent); }
.sam-app-shell .mobile-main :is(input, select, textarea):not([type=checkbox]):not([type=radio]):not([type=file]) {
  border-radius: 8px;
}
.sam-app-shell .mobile-main :is(button, a)[class*="rounded-xl"],
.sam-app-shell .mobile-main :is(button, a)[class*="rounded-2xl"] { border-radius: 8px; }
.sam-app-shell .mobile-main :is(.bg-rose-500, .bg-rose-600).text-white {
  background: var(--sam-accent); color: #fff !important;
}
.sam-app-shell .mobile-main :is(.bg-rose-500, .bg-rose-600).text-white:disabled { opacity: .5; }

/* Navigation is one quiet rail, not a stack of little cards. */
.sam-app-shell .mobile-sidebar { width: 224px; background: #faf8fc; backdrop-filter: none; border-color: var(--sam-line); }
.sam-app-shell .sam-nav-item { border: 0; border-radius: 7px; min-height: 44px; font-weight: 500; color: #665b70; gap: 10px; }
.sam-app-shell .sam-nav-item-active { background: #e9e0f2; color: #52376f; font-weight: 700; }
.sam-app-shell .sam-nav-icon { display: inline-flex; align-items: center; justify-content: center; }
.sam-app-shell .sam-line-icon { width: 20px; height: 20px; flex-shrink: 0; }
.sam-app-shell .sam-nav-more { margin-top: 10px; }
.sam-app-shell .sam-nav-summary { border-radius: 7px; font-weight: 600; }
.sam-app-shell .sam-sidebar-brand { display: flex; align-items: center; gap: 10px; padding: 14px 12px; text-align: left; }
.sam-app-shell .sam-sidebar-logo { display: block; width: 84px; flex: 0 0 84px; height: auto; margin: 0; object-fit: contain; }
.sam-app-shell .sam-brand-copy { line-height: 1.25; font-size: 13px; }
.sam-app-shell .sam-brand-copy small { display: block; font-weight: 400; color: var(--sam-muted); font-size: 11px; margin-top: 3px; }
.sam-app-shell .sam-mobile-heading { display: none; }

/* Explicit presentation containers; warning/review/result panels are excluded. */
.sam-app-shell .sam-content-section,
.sam-app-shell .mobile-main :is(.sam-billing-card, .sam-offers-card, .sa-card, .sam-cards-panel) {
  background: transparent;
  border: 0;
  border-top: 1px solid var(--sam-line);
  border-radius: 0;
  box-shadow: none;
  padding: 14px 0;
  margin: 10px 0 0;
}
.sam-app-shell :is(.sam-billing-card, .sam-offers-card) :is(.sam-billing-extra, .sam-offers-item) {
  border: 0; border-top: 1px solid var(--sam-line); border-radius: 0; padding: 12px 0; margin: 8px 0;
}
.sam-app-shell :is(.sam-billing, .sam-offers, .sam-cards, .sam-acq, .sam-mail, .putzfee-page) {
  background: #fff;
}
.sam-app-shell :is(.sam-billing-main, .sam-offers-main, .sam-cards-main) { max-width: 1000px; }
.sam-app-shell :is(.sam-billing, .sam-offers, .sam-cards, .sam-acq) { height: auto; min-height: 100%; overflow: visible; }
.sam-app-shell :is(.sam-billing, .sam-offers, .sam-cards, .sam-acq) button { border-radius: 8px; }
.sam-app-shell :is(.sam-billing-primary, .sam-offers-primary, .sa-primary, .sm-primary, .sam-cards-primary) {
  background: var(--sam-accent); border-color: var(--sam-accent); color: #fff;
}
.sam-app-shell :is(.sam-billing-actions, .sam-offers-actions) { gap: 8px; }
.sam-app-shell :is(.sam-billing-actions, .sam-offers-actions) > * { flex: 0 1 auto; }
.sam-app-shell :is(.sam-offers-search, .sam-billing-search, .sam-offers-list) { gap: 0; }
.sam-app-shell :is(.sam-offers-search, .sam-billing-search, .sam-offers-list) > button {
  border: 0; border-bottom: 1px solid var(--sam-line); border-radius: 0; background: #fff; padding: 10px 6px;
}
.sam-app-shell :is(.sam-offers-search, .sam-billing-search, .sam-offers-list) > button:hover { background: #f8f5fb; }

/* Continuous records: customers, bookings, invoices, cash receipts, Wecasa. */
.sam-app-shell .sam-record-list { display: grid; gap: 0; }
.sam-app-shell .sam-record-list > .sam-record-row {
  border: 0; border-bottom: 1px solid var(--sam-line); border-radius: 0; margin: 0; padding: 10px 4px; background: #fff;
}
.sam-app-shell .sam-record-list > .sam-record-row:hover { background: #faf8fc; }
.sam-app-shell .sam-booking-tabs { padding: 0; gap: 0; border-radius: 0; border-bottom: 1px solid var(--sam-line); }
.sam-app-shell .sam-booking-tabs > button { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 8px 4px; min-height: 44px; border-radius: 0; border-bottom: 2px solid transparent; background: transparent !important; color: var(--sam-muted) !important; }
.sam-app-shell .mobile-main .sam-booking-tabs > button.bg-rose-500.text-white { border-bottom-color: var(--sam-accent); color: var(--sam-accent) !important; }
.sam-app-shell .sam-booking-tabs > button > span { margin: 0; padding: 0; min-width: auto; background: transparent; color: inherit; font-size: 12px; }
.sam-app-shell .sam-booking-details > summary { cursor: pointer; min-height: 44px; padding: 10px 0; color: var(--sam-accent); font-size: 13px; font-weight: 600; }
.sam-app-shell .sam-booking-details[open] > summary { border-bottom: 1px solid var(--sam-line); }
.sam-app-shell .sam-bookings .sam-record-row:hover { background: #fff; }
.sam-app-shell .sam-booking-note { margin: 8px 0; color: var(--sam-muted); font-size: 12px; line-height: 1.45; }
.sam-app-shell .sam-booking-hours { display: grid; grid-template-columns: minmax(110px, 140px) minmax(0, 1fr); align-items: center; gap: 12px; margin: 12px 0; }
.sam-app-shell .sam-booking-hours-input { font-size: 13px; font-weight: 600; }
.sam-app-shell .sam-booking-hours-input input { display: block; width: 100%; min-height: 44px; margin-top: 4px; padding: 8px 10px; font-size: 16px; border: 1px solid var(--sam-line); border-radius: 6px; }
.sam-app-shell .sam-booking-total { display: flex; flex-direction: column; align-items: flex-end; min-width: 0; }
.sam-app-shell .sam-booking-total :is(span, small) { color: var(--sam-muted); font-size: 12px; }
.sam-app-shell .sam-booking-total strong { font-size: 21px; font-weight: 650; line-height: 1.35; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.sam-app-shell .sam-booking-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 2px 16px; padding-bottom: 4px; }
.sam-app-shell .sam-booking-actions > .sam-booking-action { display: inline-flex; align-items: center; justify-content: flex-start; min-height: 44px; max-width: 100%; padding: 8px 0; border: 0; border-radius: 0; background: transparent; color: var(--sam-accent); font-size: 13px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-align: left; }
.sam-app-shell .sam-booking-actions > .sam-booking-primary { flex-basis: 100%; justify-content: center; padding: 10px 14px; margin-bottom: 2px; border-radius: 6px; background: var(--sam-accent); color: #fff; text-decoration: none; }
.sam-app-shell .sam-booking-actions > .sam-booking-danger { color: #a12c48; }
.sam-app-shell .sam-booking-actions > .sam-booking-action:hover { text-decoration-thickness: 2px; }
.sam-app-shell .sam-booking-actions > .sam-booking-primary:hover { background: #61447f; }
.sam-app-shell .sam-booking-actions > .sam-booking-action:disabled { opacity: .5; }
.sam-app-shell .sam-customer-list > .sam-record-row { padding: 10px 6px; }
.sam-app-shell .sam-customer-list .rounded-full { border-radius: 10px; }
.sam-app-shell .sam-customer-list [class*="gap-x-2"] { column-gap: 8px; }
.sam-app-shell .sam-page-toolbar { flex-wrap: wrap; align-items: center; }
.sam-app-shell .sam-page-toolbar > div { flex: 1 1 240px; min-width: 0; }
.sam-app-shell .sam-page-toolbar > button { flex: 0 0 auto; white-space: nowrap; }
.sam-app-shell .mobile-main :is(.kassa-receipt-row, .sa-company, .sam-cards-customer-tile, .so-row) {
  border-radius: 0; border: 0; border-bottom: 1px solid var(--sam-line); background: #fff; box-shadow: none;
}
.sam-app-shell .mobile-main :is(.sa-list, .sam-cards-results) { gap: 0; }
.sam-app-shell .sam-cards-card { border-radius: 8px; box-shadow: none; }
.sam-app-shell .sam-cards-customer-tile { padding: 12px 6px; }
.sam-app-shell .sam-mail .sm-pane { border-radius: 0; box-shadow: none; }
.sam-app-shell .sam-acq .sa-stat, .sam-app-shell .mobile-main .so-metric { border-radius: 0; border: 0; border-left: 2px solid #d5c4e9; background: transparent; padding: 6px 10px; }
.sam-app-shell .sam-acq .sa-stats { gap: 12px; }
.sam-app-shell .sa-template-preview { border-radius: 8px; }

/* Actions sit on the page, not inside another button-shaped container.
   Review, payment consent and error panels deliberately keep their emphasis. */
.sam-app-shell .sam-acq :is(.sa-company-body, .sa-template-preview, .sa-editor, .sa-contact-state) {
  background: transparent; border: 0; border-top: 1px solid var(--sam-line); border-radius: 0; padding: 12px 0; box-shadow: none;
}
.sam-app-shell .sam-acq .sa-company > summary { min-height: 60px; padding: 8px 4px; gap: 8px 16px; }
.sam-app-shell .sam-acq .sa-company-name { font-size: 15px; font-weight: 600; }
.sam-app-shell .sam-acq .sa-company-contact { margin-top: 2px; }
.sam-app-shell .sam-acq .sa-top { margin-bottom: 12px; }
.sam-app-shell .sam-acq .sa-stats { margin: 10px 0; }
.sam-app-shell .sam-acq .sa-stat strong { font-size: 18px; }
.sam-app-shell .sam-acq .sa-filters { margin: 12px 0; gap: 8px; }
.sam-app-shell .sam-acq .sa-template-preview { margin: 12px 0; }
.sam-app-shell .sam-acq .sa-template-body { font-size: 14px; line-height: 1.55; padding-top: 10px; margin: 10px 0; }
.sam-app-shell .sam-acq .sa-company[open] > summary { background: transparent; }
.sam-app-shell .sam-acq .sa-button:not(.sa-primary),
.sam-app-shell .sam-mail .sm-button:not(.sm-primary),
.sam-app-shell .sam-offers .sam-offers-button:not(.sam-offers-primary),
.sam-app-shell .sam-billing .sam-billing-button:not(.sam-billing-primary) {
  background: transparent; border-color: transparent; border-radius: 6px; color: var(--sam-accent);
}
.sam-app-shell .sam-acq .sa-button:not(.sa-primary):hover,
.sam-app-shell .sam-mail .sm-button:not(.sm-primary):hover { background: var(--sam-soft); }
.sam-app-shell .sam-acq .sa-preview-actions { border-top: 1px solid var(--sam-line); padding-top: 12px; }
.sam-app-shell .sam-acq .sa-badge { background: transparent; border-radius: 0; padding: 0; }
.sam-app-shell .sam-offers .sam-offers-actions > button:not(.sam-offers-primary),
.sam-app-shell .sam-billing .sam-billing-actions > button:not(.sam-billing-primary) {
  background: transparent; border-color: transparent; color: var(--sam-accent);
}

/* Overview: smaller key figures, one distinct next appointment. */
.sam-app-shell .sam-overview-header { gap: 12px; align-items: center; margin-bottom: 12px; }
.sam-app-shell .sam-overview-actions { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.sam-app-shell .sam-overview-actions button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 9px 12px; font-size: 13px; white-space: nowrap; }
.sam-app-shell .sam-overview-stats { border-block: 1px solid var(--sam-line); gap: 0; margin: 12px 0; }
.sam-app-shell .sam-overview-stats > * { border-radius: 0; background: transparent; padding: 8px 12px; }
.sam-app-shell .sam-overview-stats [class*="text-2xl"] { font-size: 20px; line-height: 1.3; }
.sam-app-shell .sam-overview-stats > * + * { border-left: 1px solid var(--sam-line); }
.sam-app-shell .sam-overview-stats > :first-child { padding-left: 0; }
.sam-app-shell .sam-putzfee-shortcut { border: 0; border-radius: 6px; background: transparent; color: var(--sam-accent); margin: 0; font-weight: 600; }
.sam-app-shell .sam-putzfee-shortcut:hover { background: var(--sam-soft); }
.sam-app-shell .sam-putzfee-shortcut > span { font-size: 21px; line-height: 1; }
.sam-app-shell .sam-next-appointment { background: transparent; color: var(--sam-ink) !important; border: 0; border-block: 1px solid var(--sam-line); border-radius: 0; padding: 10px 0; margin-bottom: 10px; }
.sam-app-shell .sam-next-appointment .text-3xl { font-size: 23px; line-height: 1.25; font-weight: 650; }
.sam-app-shell .sam-next-appointment .rounded-full { background: transparent; padding: 0; border-radius: 0; }
.sam-app-shell .sam-next-appointment [class*="text-white"] { color: #685376; }
.sam-app-shell .sam-overview-today { display: grid; gap: 0; }
.sam-app-shell .sam-overview-today > div { border-radius: 0; border-bottom: 1px solid var(--sam-line); padding: 10px 0; gap: 10px; }
.sam-app-shell .sam-overview-today > div > button { min-height: 44px; white-space: nowrap; }
.sam-app-shell .sam-overview-today .truncate { white-space: normal; overflow-wrap: anywhere; }
.sam-app-shell .sam-payout { background: transparent; border: 0; border-radius: 0; padding: 8px 0; margin: 8px 0; }
.sam-app-shell .sam-payout .sp-head { margin-bottom: 4px; }
.sam-app-shell .sam-payout .sp-head button { border: 0; background: transparent; padding: 6px; min-height: 40px; }
.sam-app-shell .sam-payout .sp-balance-line { display: flex; align-items: center; gap: 20px; }
.sam-app-shell .sam-payout .sp-values { flex: 1; justify-content: flex-start; gap: 32px; margin: 4px 0; }
.sam-app-shell .sam-payout .sp-available { font-size: 24px; font-weight: 700; }
.sam-app-shell .sam-payout .sp-pending { font-size: 18px; font-weight: 600; }
.sam-app-shell .sam-payout .sp-balance-line > button { flex: 0 1 200px; min-height: 44px; width: auto; padding: 9px 12px; }
.sam-app-shell .sam-payout .sp-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 4px 12px; }
.sam-app-shell .sam-payout .sp-primary { border-radius: 8px; }
.sam-app-shell .sam-payout .sp-note { margin: 4px 0; }
.sam-app-shell .sam-payout .sp-details { min-height: 44px; }

/* Calendar keeps its measured timeline and event positions. */
.sam-app-shell .calendar-shell { background: #fff; }
.sam-app-shell .calendar-week-day, .sam-app-shell .calendar-month-day { border-radius: 4px; border: 1px solid var(--sam-line); }
.sam-app-shell .calendar-view-toggle { border: 0; border-bottom: 1px solid var(--sam-line); border-radius: 0; background: transparent; }
.sam-app-shell .calendar-source-tabs { border-bottom: 1px solid var(--sam-line); }
.sam-app-shell .calendar-source-tabs > button { border-radius: 6px; }

/* Compact Putzfee stays a composer, not a tiled dashboard. */
.sam-app-shell .pf-compact { background: #fff !important; }
.sam-app-shell .pf-compact .pf-message { box-shadow: none; }
.sam-app-shell .pf-compact .pf-composer {
  background: transparent; border: 0; border-top: 1px solid var(--sam-line); border-radius: 0;
  padding: 12px 0 0; box-shadow: none;
}
.sam-app-shell .pf-compact .pf-composer textarea { background: #fff; }
.sam-app-shell .pf-compact .pf-composer-row { align-items: end; }
.sam-app-shell .pf-compact .pf-composer-row > button { min-height: 44px; padding: 10px 14px; }
.sam-app-shell .pf-compact .pf-header .pf-button { background: transparent; border-color: transparent; border-radius: 6px; }
.sam-app-shell .pf-compact .pf-quick-tools .pf-task-grid { display: grid; grid-template-columns: 1fr; gap: 0; }
.sam-app-shell .pf-compact .pf-quick-tools .pf-task {
  background: transparent; border: 0; border-bottom: 1px solid var(--sam-line); border-radius: 0; padding: 8px 4px; min-height: 44px;
}
.sam-app-shell .sam-cf-gallery { border-radius: 0; box-shadow: none; }
.sam-app-shell .sam-content-section > div:first-child { text-transform: none; font-size: 16px; letter-spacing: 0; }

@media (min-width: 768px) {
  .sam-app-shell .sam-booking-actions > .sam-booking-primary { flex-basis: auto; }
  .sam-app-shell .mobile-main .sam-record-list { margin-top: 10px; }
  .sam-app-shell .sam-payout .sp-primary { width: auto; padding-inline: 22px; }
}
@media (max-width: 767px) {
  .sam-app-shell { font-size: 15px; }
  .sam-app-shell .mobile-main { padding-top: calc(60px + env(safe-area-inset-top)); padding-bottom: calc(68px + env(safe-area-inset-bottom)); }
  .sam-app-shell .mobile-main > div:not(.calendar-shell):not(.kassa-workspace) { padding: 14px 14px 24px; }
  .sam-app-shell .mobile-main h1 { font-size: 24px; }
  .sam-app-shell .pf-compact .pf-header .pf-button { padding: 8px 6px; }
  .sam-app-shell .sam-acq .sa-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sam-app-shell .sam-acq .sa-search { grid-column: 1 / -1; }
  .sam-app-shell .mobile-main > div > .mb-6 { margin-bottom: 12px; }
  .sam-app-shell .sam-overview-header { flex-wrap: wrap; }
  .sam-app-shell .sam-overview-header > div:first-child { flex: 1 1 160px; min-width: 0; }
  .sam-app-shell .sam-overview-actions { margin-left: auto; }
  /* The fixed mobile header already has the Putzfee shortcut. */
  .sam-app-shell .sam-overview-actions .sam-putzfee-shortcut { display: none; }
  .sam-app-shell .sam-overview-header h1 { font-size: 21px; }
  .sam-app-shell .sam-overview-today > div { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto 44px; gap: 4px 8px; }
  .sam-app-shell .sam-overview-today > div > :first-child { grid-column: 1; grid-row: 1; width: auto; text-align: left; }
  .sam-app-shell .sam-overview-today > div > :nth-child(2) { display: none; }
  .sam-app-shell .sam-overview-today > div > :nth-child(3) { grid-column: 2 / -1; grid-row: 1; border-left: 2px solid #b79acb; padding-left: 10px; }
  .sam-app-shell .sam-overview-today > div > :nth-child(4) { grid-column: 1 / 3; grid-row: 2; justify-self: start; }
  .sam-app-shell .sam-overview-today > div > :nth-child(5) { grid-column: 3; grid-row: 2; }
  .sam-app-shell .sam-overview-today > div > :nth-child(6) { grid-column: 4; grid-row: 2; }
  .sam-app-shell .sam-payout .sp-balance-line { flex-wrap: wrap; gap: 8px; }
  .sam-app-shell .sam-payout .sp-values { flex: 1 1 100%; justify-content: space-between; gap: 12px; }
  .sam-app-shell .sam-payout .sp-balance-line > button { flex: 0 1 auto; }
  .sam-app-shell .sam-acq .sa-company > summary { padding: 8px 2px; gap: 4px 10px; }
  .sam-app-shell .sam-mobile-heading {
    display: flex; align-items: center; gap: 10px; position: fixed; inset: 0 0 auto;
    height: calc(60px + env(safe-area-inset-top)); padding: env(safe-area-inset-top) 14px 0 68px;
    background: #faf8fc; border-bottom: 1px solid var(--sam-line); z-index: 46;
  }
  .sam-app-shell .sam-mobile-heading > div { min-width: 0; flex: 1; }
  .sam-app-shell .sam-mobile-logo { flex: 0 0 72px; width: 72px; height: auto; max-height: 50px; object-fit: contain; }
  .sam-app-shell .sam-mobile-heading strong { font-size: 14px; font-weight: 700; }
  .sam-app-shell .sam-mobile-heading small { display: block; color: var(--sam-muted); font-size: 11px; }
  .sam-app-shell .sam-mobile-heading button { display: grid; place-items: center; flex: 0 0 44px; height: 44px; border: 0; border-radius: 8px; background: var(--sam-soft); color: var(--sam-accent); font-size: 22px; }
  .sam-app-shell .mobile-menu-toggle { top: calc(8px + env(safe-area-inset-top)); left: 12px; height: 44px; width: 44px; background: transparent; color: var(--sam-accent); border-radius: 8px; box-shadow: none; font-size: 25px; }
  .sam-app-shell .mobile-sidebar { background: #faf8fc; padding-top: calc(60px + env(safe-area-inset-top)); }
  .sam-app-shell .mobile-bottom-nav { box-shadow: none; background: #faf8fc; padding: 4px 8px calc(4px + env(safe-area-inset-bottom)); gap: 4px; min-height: 64px; }
  .sam-app-shell .mobile-bottom-nav button { min-height: 52px; border-radius: 7px; font-weight: 600; gap: 3px; }
  .sam-app-shell .mobile-bottom-nav button > small { font-size: 11px; }
  .sam-app-shell .mobile-bottom-nav-active { background: #eae1f3; color: #583977; }
  .sam-app-shell .mobile-main :is(button, [role=button], summary) { min-height: 44px; }
  .sam-app-shell .mobile-main button { min-width: 36px; }
  .sam-app-shell .mobile-main :is(input, select, textarea):not([type=checkbox]):not([type=radio]):not([type=file]) { min-height: 44px; font-size: 16px !important; }
  .sam-app-shell .mobile-main :is(input[type=checkbox], input[type=radio]) { min-width: 20px; min-height: 20px; }
  .sam-app-shell .sam-overview-stats > * { padding: 8px 10px; }
  .sam-app-shell .sam-overview-stats [class*="text-xs"] { font-size: 11px; }
  .sam-app-shell :is(.sam-billing-card, .sam-offers-card, .sam-content-section) { padding: 12px 0; margin-top: 10px; }
  .sam-app-shell :is(.sam-billing-actions, .sam-offers-actions) > * { flex: 1 1 140px; }
  .sam-app-shell .sam-customer-list > .sam-record-row { gap: 12px; }
  .sam-app-shell .sam-record-row > .min-w-0 .truncate { white-space: normal; overflow-wrap: anywhere; }
  .sam-app-shell .sam-next-appointment .truncate { white-space: normal; }
  .sam-app-shell .mobile-main .kassa-cart { box-shadow: none; border-radius: 0; border: 0; border-block: 1px solid var(--sam-line); }
  .sam-app-shell .kassa-catalog { padding: 16px !important; }
  .sam-app-shell .kassa-modal, .sam-app-shell .invoice-editor-modal { box-shadow: none; }
}
@media (prefers-reduced-motion: reduce) {
  .sam-app-shell *, .sam-app-shell *::before, .sam-app-shell *::after { scroll-behavior: auto !important; transition-duration: 0s !important; animation-duration: 0s !important; }
}
