/*
 * Tech Guys Manager — Central Design System v2 (8.19.14 final)
 *
 * This file is the single visual source of truth for Web/PWA UI.
 * styles.css remains layout/compatibility only and resolves shared colors/states
 * back to these tokens. Business logic, permissions, data and Telegram are out of scope.
 */

:root {
  /* Brand */
  --tgm-accent: #8b5cf6;
  --tgm-accent-strong: #7c3aed;
  --tgm-accent-hover: #7c3aed;
  --tgm-accent-pressed: #6d28d9;
  --tgm-accent-contrast: #ffffff;
  --tgm-accent-soft-text: #a78bfa;
  --tgm-accent-pale: #c4b5fd;
  --tgm-accent-on-soft: #ede9fe;
  --tgm-accent-soft: #f3f0ff;
  --tgm-accent-softer: #faf8ff;
  --tgm-accent-border: color-mix(in srgb, var(--tgm-accent) 52%, var(--tgm-border-strong-color));
  --tgm-accent-border-soft: color-mix(in srgb, var(--tgm-accent) 36%, var(--tgm-border-strong-color));
  --tgm-accent-border-medium: color-mix(in srgb, var(--tgm-accent) 46%, var(--tgm-border-strong-color));
  --tgm-focus-ring: color-mix(in srgb, var(--tgm-accent) 28%, transparent);

  /* Surfaces */
  --tgm-canvas: #f3f5f8;
  --tgm-surface: #ffffff;
  --tgm-surface-soft: #f8fafc;
  --tgm-surface-raised: #ffffff;
  --tgm-surface-inset: #f2f4f7;
  --tgm-sidebar: #101828;
  --tgm-sidebar-soft: #1d2939;
  --tgm-overlay: rgba(15, 18, 28, 0.56);

  /* Text */
  --tgm-text: #101828;
  --tgm-text-muted: #667085;
  --tgm-text-muted-strong: #475467;
  --tgm-text-subtle: #98a2b3;
  --tgm-text-inverse: #ffffff;
  --tgm-text-disabled: #98a2b3;

  /* Borders */
  --tgm-border-color: #e5e7eb;
  --tgm-border-strong-color: #d6dae1;
  --tgm-border-subtle-color: #f2f4f7;
  --tgm-border: 1px solid var(--tgm-border-color);
  --tgm-border-strong: 1px solid var(--tgm-border-strong-color);

  /* Semantic states — never use these as section identities */
  --tgm-success: #039855;
  --tgm-success-strong: #027a48;
  --tgm-success-soft: #ecfdf3;
  --tgm-success-border: #abefc6;
  --tgm-warning: #dc6803;
  --tgm-warning-strong: #b54708;
  --tgm-warning-soft: #fff7ed;
  --tgm-warning-border: #fed7aa;
  --tgm-danger: #d92d20;
  --tgm-danger-strong: #b42318;
  --tgm-danger-soft: #fff1f0;
  --tgm-danger-border: #fecdca;
  --tgm-info: #2563eb;
  --tgm-info-strong: #1d4ed8;
  --tgm-info-soft: #eff6ff;
  --tgm-info-border: #bfdbfe;
  --tgm-neutral: #667085;
  --tgm-neutral-soft: #f2f4f7;

  /* Typography */
  --tgm-font-sans: "Segoe UI", Tahoma, Arial, sans-serif;
  --tgm-text-xs: 0.75rem;
  --tgm-text-sm: 0.875rem;
  --tgm-text-md: 1rem;
  --tgm-text-lg: 1.125rem;
  --tgm-text-xl: 1.375rem;
  --tgm-text-2xl: 1.75rem;
  --tgm-text-3xl: clamp(2rem, 3vw, 3rem);
  --tgm-leading-tight: 1.25;
  --tgm-leading-normal: 1.6;

  /* Spacing */
  --tgm-space-1: 0.25rem;
  --tgm-space-2: 0.5rem;
  --tgm-space-3: 0.75rem;
  --tgm-space-4: 1rem;
  --tgm-space-5: 1.25rem;
  --tgm-space-6: 1.5rem;
  --tgm-space-8: 2rem;
  --tgm-space-10: 2.5rem;
  --tgm-space-12: 3rem;

  /* Radius */
  --tgm-radius-sm: 10px;
  --tgm-radius-md: 14px;
  --tgm-radius-lg: 18px;
  --tgm-radius-xl: 24px;
  --tgm-radius-pill: 999px;

  /* Elevation */
  --tgm-shadow-sm: 0 4px 14px rgba(16, 24, 40, 0.05);
  --tgm-shadow-md: 0 14px 38px rgba(16, 24, 40, 0.09);
  --tgm-shadow-lg: 0 26px 70px rgba(16, 24, 40, 0.16);

  /* Controls */
  --tgm-control-sm: 36px;
  --tgm-control-md: 44px;
  --tgm-control-lg: 50px;
  --tgm-control-padding-inline: 14px;
  --tgm-control-disabled-opacity: 0.52;

  /* Motion */
  --tgm-motion-fast: 130ms;
  --tgm-motion-normal: 170ms;
  --tgm-motion-slow: 195ms;
  --tgm-ease: cubic-bezier(.2, .8, .2, 1);

  /* Layout */
  --tgm-content-max: 1680px;
  --tgm-content-comfort: 1320px;
  --tgm-modal-md: 680px;
  --tgm-modal-lg: 1040px;

  /* Central Auth Identity — one visual source for Login / Activation / Registration / Verification. */
  --tgm-auth-canvas: #0a1020;
  --tgm-auth-showcase-surface: linear-gradient(145deg, rgba(8,15,29,.72), rgba(18,20,46,.9));
  --tgm-auth-panel-surface: linear-gradient(145deg, #090f1d 0%, #0d1424 100%);
  --tgm-auth-card-surface: linear-gradient(180deg, rgba(20,29,47,.9), rgba(10,17,31,.92));
  --tgm-auth-card-surface-soft: linear-gradient(180deg, rgba(20,29,47,.82), rgba(10,17,31,.88));
  --tgm-auth-border: rgba(255,255,255,.13);
  --tgm-auth-text: #ffffff;
  --tgm-auth-text-muted: rgba(255,255,255,.58);
  --tgm-auth-text-subtle: rgba(255,255,255,.45);
  --tgm-auth-input-surface: rgba(255,255,255,.035);
  --tgm-auth-help-surface: rgba(255,255,255,.035);
  --tgm-auth-watermark-opacity: .105;
  --tgm-auth-mobile-watermark-opacity: .07;
  --tgm-auth-watermark-filter: invert(1);
}

html[data-theme="dark"] {
  --tgm-canvas: #0b1220;
  --tgm-surface: #101828;
  --tgm-surface-soft: #182230;
  --tgm-surface-raised: #182230;
  --tgm-surface-inset: #080f1d;
  --tgm-sidebar: #080f1d;
  --tgm-sidebar-soft: #1d2939;
  --tgm-overlay: rgba(0, 0, 0, 0.68);

  --tgm-text: #f2f4f7;
  --tgm-text-muted: #98a2b3;
  --tgm-text-muted-strong: #d0d5dd;
  --tgm-text-subtle: #667085;
  --tgm-text-inverse: #ffffff;
  --tgm-text-disabled: #667085;

  --tgm-border-color: #344054;
  --tgm-border-strong-color: #475467;
  --tgm-border-subtle-color: #1d2939;

  --tgm-accent-soft: #251c3d;
  --tgm-accent-softer: #181426;
  --tgm-focus-ring: color-mix(in srgb, var(--tgm-accent) 36%, transparent);

  --tgm-success: #039855;
  --tgm-success-strong: #12b76a;
  --tgm-success-soft: #052e24;
  --tgm-success-border: #176b4a;
  --tgm-warning: #dc6803;
  --tgm-warning-strong: #f79009;
  --tgm-warning-soft: #431407;
  --tgm-warning-border: #7a4a12;
  --tgm-danger: #d92d20;
  --tgm-danger-strong: #f04438;
  --tgm-danger-soft: #450a0a;
  --tgm-danger-border: #7a2928;
  --tgm-info: #2563eb;
  --tgm-info-strong: #528bff;
  --tgm-info-soft: #172554;
  --tgm-info-border: #2e4e8c;
  --tgm-neutral: #d0d5dd;
  --tgm-neutral-soft: #1d2939;

  --tgm-shadow-sm: 0 5px 16px rgba(0,0,0,.22);
  --tgm-shadow-md: 0 16px 40px rgba(0,0,0,.30);
  --tgm-shadow-lg: 0 26px 72px rgba(0,0,0,.42);

  --tgm-auth-canvas: #0a1020;
  --tgm-auth-showcase-surface: linear-gradient(145deg, rgba(8,15,29,.72), rgba(18,20,46,.9));
  --tgm-auth-panel-surface: linear-gradient(145deg, #090f1d 0%, #0d1424 100%);
  --tgm-auth-card-surface: linear-gradient(180deg, rgba(20,29,47,.9), rgba(10,17,31,.92));
  --tgm-auth-card-surface-soft: linear-gradient(180deg, rgba(20,29,47,.82), rgba(10,17,31,.88));
  --tgm-auth-border: rgba(255,255,255,.13);
  --tgm-auth-text: #ffffff;
  --tgm-auth-text-muted: rgba(255,255,255,.58);
  --tgm-auth-text-subtle: rgba(255,255,255,.45);
  --tgm-auth-input-surface: rgba(255,255,255,.035);
  --tgm-auth-help-surface: rgba(255,255,255,.035);
  --tgm-auth-watermark-opacity: .105;
  --tgm-auth-mobile-watermark-opacity: .07;
  --tgm-auth-watermark-filter: invert(1);
}

html[data-theme="light"] {
  --tgm-auth-canvas: #eef0f6;
  --tgm-auth-showcase-surface: linear-gradient(145deg, #ffffff 0%, #f6f4ff 100%);
  --tgm-auth-panel-surface: linear-gradient(145deg, #f5f7fb, #eef0f6);
  --tgm-auth-card-surface: rgba(255,255,255,.9);
  --tgm-auth-card-surface-soft: rgba(255,255,255,.86);
  --tgm-auth-border: var(--tgm-border-color);
  --tgm-auth-text: var(--tgm-text);
  --tgm-auth-text-muted: var(--tgm-text-muted);
  --tgm-auth-text-subtle: var(--tgm-text-subtle);
  --tgm-auth-input-surface: #ffffff;
  --tgm-auth-help-surface: rgba(255,255,255,.72);
  --tgm-auth-watermark-opacity: .055;
  --tgm-auth-mobile-watermark-opacity: .045;
  --tgm-auth-watermark-filter: none;
}

/* -------------------------------------------------------------------------
   Central components. New screens should compose these instead of creating
   section-specific visual rules. Existing screens are migrated incrementally.
   ------------------------------------------------------------------------- */

.tgm-page {
  min-width: 0;
  color: var(--tgm-text);
  font-family: var(--tgm-font-sans);
}

.tgm-stack { display: grid; gap: var(--tgm-space-4); min-width: 0; }
.tgm-stack--sm { gap: var(--tgm-space-2); }
.tgm-stack--lg { gap: var(--tgm-space-6); }
.tgm-cluster { display: flex; flex-wrap: wrap; align-items: center; gap: var(--tgm-space-2); min-width: 0; }

.tgm-card {
  min-width: 0;
  padding: var(--tgm-space-5);
  border: var(--tgm-border);
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface);
  color: var(--tgm-text);
  box-shadow: var(--tgm-shadow-sm);
}

.tgm-card--soft { background: var(--tgm-surface-soft); box-shadow: none; }
.tgm-card--accent {
  border-color: color-mix(in srgb, var(--tgm-accent) 46%, var(--tgm-border-color));
  box-shadow: inset 4px 0 0 var(--tgm-accent), var(--tgm-shadow-sm);
}
[dir="rtl"] .tgm-card--accent { box-shadow: inset -4px 0 0 var(--tgm-accent), var(--tgm-shadow-sm); }

.tgm-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--tgm-space-3);
  margin-bottom: var(--tgm-space-4);
}
.tgm-card__title { margin: 0; color: var(--tgm-text); font-size: var(--tgm-text-lg); line-height: var(--tgm-leading-tight); }
.tgm-card__description { margin: var(--tgm-space-1) 0 0; color: var(--tgm-text-muted); font-size: var(--tgm-text-sm); line-height: var(--tgm-leading-normal); }

.tgm-button,
.tgm-icon-button {
  appearance: none;
  border: var(--tgm-border-strong);
  background: var(--tgm-surface);
  color: var(--tgm-text);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  transition: background var(--tgm-motion-fast) var(--tgm-ease), border-color var(--tgm-motion-fast) var(--tgm-ease), color var(--tgm-motion-fast) var(--tgm-ease), transform var(--tgm-motion-fast) var(--tgm-ease), box-shadow var(--tgm-motion-fast) var(--tgm-ease);
  -webkit-tap-highlight-color: transparent;
}

.tgm-button {
  min-height: var(--tgm-control-md);
  padding: 0 var(--tgm-control-padding-inline);
  border-radius: var(--tgm-radius-md);
}
.tgm-button:hover { border-color: color-mix(in srgb, var(--tgm-accent) 40%, var(--tgm-border-strong-color)); background: var(--tgm-surface-soft); }
.tgm-button:active,
.tgm-button[aria-pressed="true"],
.tgm-button.is-pressed { transform: translateY(1px); background: var(--tgm-surface-inset); }
.tgm-button:focus-visible,
.tgm-icon-button:focus-visible,
.tgm-chip:focus-visible,
.tgm-field input:focus-visible,
.tgm-field select:focus-visible,
.tgm-field textarea:focus-visible,
.tgm-select:focus-visible,
.tgm-input:focus-visible,
.tgm-textarea:focus-visible {
  outline: 0;
  border-color: var(--tgm-accent);
  box-shadow: 0 0 0 3px var(--tgm-focus-ring);
}
.tgm-button:disabled,
.tgm-icon-button:disabled,
.tgm-chip:disabled,
.tgm-input:disabled,
.tgm-select:disabled,
.tgm-textarea:disabled {
  cursor: not-allowed;
  opacity: var(--tgm-control-disabled-opacity);
  transform: none;
}

.tgm-button--primary { border-color: var(--tgm-accent); background: var(--tgm-accent); color: var(--tgm-accent-contrast); }
.tgm-button--primary:hover { border-color: var(--tgm-accent-hover); background: var(--tgm-accent-hover); }
.tgm-button--primary:active,
.tgm-button--primary[aria-pressed="true"] { background: var(--tgm-accent-pressed); border-color: var(--tgm-accent-pressed); }
.tgm-button--secondary { border-color: color-mix(in srgb, var(--tgm-accent) 42%, var(--tgm-border-color)); color: var(--tgm-accent); background: var(--tgm-accent-softer); }
.tgm-button--danger { border-color: var(--tgm-danger-border); background: var(--tgm-danger-soft); color: var(--tgm-danger); }
.tgm-button--danger:hover { border-color: var(--tgm-danger); background: color-mix(in srgb, var(--tgm-danger-soft) 82%, var(--tgm-danger) 18%); }
.tgm-button--ghost { border-color: transparent; background: transparent; box-shadow: none; }

.tgm-icon-button {
  display: inline-grid;
  place-items: center;
  inline-size: var(--tgm-control-md);
  block-size: var(--tgm-control-md);
  padding: 0;
  border-radius: var(--tgm-radius-md);
}

.tgm-icon {
  display: inline-grid;
  place-items: center;
  inline-size: 1.25em;
  block-size: 1.25em;
  flex: 0 0 auto;
  color: currentColor;
  line-height: 1;
}
.tgm-icon--sm { font-size: .875rem; }
.tgm-icon--lg { font-size: 1.25rem; }

.tgm-selectable {
  border: var(--tgm-border);
  border-radius: var(--tgm-radius-md);
  background: var(--tgm-surface);
  color: var(--tgm-text);
  transition: border-color var(--tgm-motion-fast) var(--tgm-ease), background var(--tgm-motion-fast) var(--tgm-ease), box-shadow var(--tgm-motion-fast) var(--tgm-ease);
}
.tgm-selectable.is-selected,
.tgm-selectable[aria-selected="true"],
.tgm-selectable[aria-pressed="true"] {
  border-color: var(--tgm-accent);
  background: var(--tgm-accent-soft);
  box-shadow: inset 0 0 0 1px var(--tgm-accent);
}
.tgm-selectable[aria-disabled="true"],
.tgm-selectable.is-disabled { opacity: var(--tgm-control-disabled-opacity); pointer-events: none; }

.tgm-filter-group {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 5px;
  border: var(--tgm-border);
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface-soft);
}
.tgm-chip {
  min-height: var(--tgm-control-sm);
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: var(--tgm-radius-pill);
  background: transparent;
  color: var(--tgm-text-muted);
  font: inherit;
  font-size: var(--tgm-text-sm);
  font-weight: 800;
  cursor: pointer;
  transition: background var(--tgm-motion-fast) var(--tgm-ease), border-color var(--tgm-motion-fast) var(--tgm-ease), color var(--tgm-motion-fast) var(--tgm-ease), box-shadow var(--tgm-motion-fast) var(--tgm-ease);
}
.tgm-chip:hover { color: var(--tgm-text); background: var(--tgm-surface); }
.tgm-chip.is-selected,
.tgm-chip[aria-selected="true"],
.tgm-chip[aria-pressed="true"] {
  border-color: color-mix(in srgb, var(--tgm-accent) 58%, var(--tgm-border-color));
  background: var(--tgm-accent-soft);
  color: var(--tgm-accent);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--tgm-accent) 12%, transparent);
}

.tgm-counter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-inline-size: 26px;
  min-block-size: 26px;
  padding: 0 8px;
  border: 1px solid color-mix(in srgb, var(--tgm-accent) 35%, var(--tgm-border-color));
  border-radius: var(--tgm-radius-pill);
  background: var(--tgm-accent-soft);
  color: var(--tgm-accent);
  font-size: var(--tgm-text-xs);
  font-weight: 900;
  line-height: 1;
}

.tgm-field { display: grid; gap: 7px; min-width: 0; color: var(--tgm-text); }
.tgm-field > label,
.tgm-field > span:first-child { color: var(--tgm-text); font-size: var(--tgm-text-sm); font-weight: 800; }
.tgm-field__hint { color: var(--tgm-text-muted); font-size: var(--tgm-text-xs); line-height: var(--tgm-leading-normal); }
.tgm-input,
.tgm-select,
.tgm-textarea,
.tgm-field input,
.tgm-field select,
.tgm-field textarea {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: var(--tgm-control-md);
  padding: 9px 12px;
  border: var(--tgm-border-strong);
  border-radius: var(--tgm-radius-md);
  background: var(--tgm-surface);
  color: var(--tgm-text);
  font: inherit;
  transition: border-color var(--tgm-motion-fast) var(--tgm-ease), box-shadow var(--tgm-motion-fast) var(--tgm-ease), background var(--tgm-motion-fast) var(--tgm-ease);
}
.tgm-textarea,
.tgm-field textarea { min-height: 108px; resize: vertical; line-height: var(--tgm-leading-normal); }
.tgm-input::placeholder,
.tgm-textarea::placeholder,
.tgm-field input::placeholder,
.tgm-field textarea::placeholder { color: var(--tgm-text-subtle); }
.tgm-field.is-invalid .tgm-input,
.tgm-field.is-invalid .tgm-select,
.tgm-field.is-invalid .tgm-textarea,
.tgm-field.is-invalid input,
.tgm-field.is-invalid select,
.tgm-field.is-invalid textarea { border-color: var(--tgm-danger); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tgm-danger) 18%, transparent); }
.tgm-field.is-invalid .tgm-field__hint { color: var(--tgm-danger); }

.tgm-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  min-height: 28px;
  padding: 4px 9px;
  border: 1px solid var(--tgm-border-color);
  border-radius: var(--tgm-radius-pill);
  background: var(--tgm-neutral-soft);
  color: var(--tgm-neutral);
  font-size: var(--tgm-text-xs);
  font-weight: 850;
  line-height: 1.25;
}
.tgm-status--success { border-color: var(--tgm-success-border); background: var(--tgm-success-soft); color: var(--tgm-success); }
.tgm-status--warning { border-color: var(--tgm-warning-border); background: var(--tgm-warning-soft); color: var(--tgm-warning); }
.tgm-status--danger { border-color: var(--tgm-danger-border); background: var(--tgm-danger-soft); color: var(--tgm-danger); }
.tgm-status--info { border-color: var(--tgm-info-border); background: var(--tgm-info-soft); color: var(--tgm-info); }

.tgm-alert {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--tgm-space-3);
  align-items: start;
  padding: var(--tgm-space-4);
  border: var(--tgm-border);
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface-soft);
  color: var(--tgm-text);
}
.tgm-alert--success { border-color: var(--tgm-success-border); background: var(--tgm-success-soft); }
.tgm-alert--warning { border-color: var(--tgm-warning-border); background: var(--tgm-warning-soft); }
.tgm-alert--danger { border-color: var(--tgm-danger-border); background: var(--tgm-danger-soft); }
.tgm-alert--info { border-color: var(--tgm-info-border); background: var(--tgm-info-soft); }

.tgm-expandable {
  overflow: clip;
  border: var(--tgm-border);
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface);
}
.tgm-expandable__toggle {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--tgm-space-3);
  width: 100%;
  min-height: var(--tgm-control-lg);
  padding: 11px 14px;
  border: 0;
  background: transparent;
  color: var(--tgm-text);
  font: inherit;
  font-weight: 850;
  text-align: start;
  cursor: pointer;
}
.tgm-expandable__toggle:hover { background: var(--tgm-surface-soft); }
.tgm-expandable__toggle:focus-visible { outline: 0; box-shadow: inset 0 0 0 2px var(--tgm-accent); }
.tgm-expandable__body { padding: 0 14px 14px; color: var(--tgm-text-muted); }
.tgm-expandable[open],
.tgm-expandable.is-open { border-color: color-mix(in srgb, var(--tgm-accent) 42%, var(--tgm-border-color)); }

.tgm-metric-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(126px, 1fr));
  gap: var(--tgm-space-2);
}
.tgm-metric {
  min-width: 0;
  padding: 12px;
  border: var(--tgm-border);
  border-radius: var(--tgm-radius-md);
  background: var(--tgm-surface-soft);
}
.tgm-metric small { display: block; color: var(--tgm-text-muted); font-size: var(--tgm-text-xs); }
.tgm-metric strong { display: block; margin-top: 4px; color: var(--tgm-accent); font-size: var(--tgm-text-xl); line-height: 1.15; }

.tgm-table-wrap { max-width: 100%; overflow-x: auto; border: var(--tgm-border); border-radius: var(--tgm-radius-lg); background: var(--tgm-surface); }
.tgm-table { width: 100%; border-collapse: collapse; color: var(--tgm-text); font-size: var(--tgm-text-sm); }
.tgm-table th,
.tgm-table td { padding: 11px 12px; border-bottom: 1px solid var(--tgm-border-subtle-color); text-align: start; vertical-align: top; }
.tgm-table th { background: var(--tgm-surface-soft); color: var(--tgm-text-muted); font-size: var(--tgm-text-xs); font-weight: 850; }
.tgm-table tr:last-child td { border-bottom: 0; }

.tgm-empty {
  display: grid;
  place-items: center;
  min-height: 148px;
  padding: var(--tgm-space-6);
  border: 1px dashed var(--tgm-border-strong-color);
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface-soft);
  color: var(--tgm-text-muted);
  text-align: center;
}

/* Semantic tone hooks for components that cannot use the class variants. */
[data-tgm-tone="success"] { --tgm-tone: var(--tgm-success); --tgm-tone-soft: var(--tgm-success-soft); --tgm-tone-border: var(--tgm-success-border); }
[data-tgm-tone="warning"] { --tgm-tone: var(--tgm-warning); --tgm-tone-soft: var(--tgm-warning-soft); --tgm-tone-border: var(--tgm-warning-border); }
[data-tgm-tone="danger"] { --tgm-tone: var(--tgm-danger); --tgm-tone-soft: var(--tgm-danger-soft); --tgm-tone-border: var(--tgm-danger-border); }
[data-tgm-tone="info"] { --tgm-tone: var(--tgm-info); --tgm-tone-soft: var(--tgm-info-soft); --tgm-tone-border: var(--tgm-info-border); }

@media (max-width: 760px) {
  .tgm-card { padding: var(--tgm-space-4); border-radius: var(--tgm-radius-md); }
  .tgm-card__header { gap: var(--tgm-space-2); margin-bottom: var(--tgm-space-3); }
  .tgm-button { min-height: 42px; }
  .tgm-filter-group { gap: 5px; padding: 4px; }
  .tgm-chip { flex: 1 1 auto; min-width: 0; padding-inline: 9px; }
  .tgm-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 390px) {
  .tgm-card { padding: 13px; }
  .tgm-button { padding-inline: 11px; font-size: var(--tgm-text-sm); }
  .tgm-chip { padding-inline: 7px; font-size: .78rem; }
  .tgm-metric-grid { gap: 6px; }
  .tgm-metric { padding: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .tgm-button,
  .tgm-icon-button,
  .tgm-chip,
  .tgm-input,
  .tgm-select,
  .tgm-textarea,
  .tgm-field input,
  .tgm-field select,
  .tgm-field textarea { transition: none !important; scroll-behavior: auto !important; }
}


/* ==========================================================================
   8.19.13 — Full UI Migration Bridge
   --------------------------------------------------------------------------
   Central-by-default compatibility bridge for the existing Web/PWA DOM.
   It deliberately changes presentation only. Existing section layouts,
   actions, permissions, filters and data contracts stay authoritative.
   ========================================================================== */

:root {
  /* Legacy aliases now resolve to the central source of truth. */
  --brand: var(--tgm-accent);
  --brand-strong: var(--tgm-accent-strong);
  --violet: var(--tgm-accent);
  --violet-soft: var(--tgm-accent-soft);
  --status-success: var(--tgm-success);
  --status-success-bg: var(--tgm-success-soft);
  --status-info: var(--tgm-info);
  --status-info-bg: var(--tgm-info-soft);
  --status-warning: var(--tgm-warning);
  --status-warning-bg: var(--tgm-warning-soft);
  --status-danger: var(--tgm-danger);
  --status-danger-bg: var(--tgm-danger-soft);
  --status-neutral: var(--tgm-neutral);
  --status-neutral-bg: var(--tgm-neutral-soft);
}

html[data-theme="dark"] {
  --violet-soft: var(--tgm-accent-soft);
  --status-neutral: var(--tgm-neutral);
  --status-neutral-bg: var(--tgm-neutral-soft);
}

html[data-design-system="central-v2"] body,
html[data-design-system="central-v2"] .dashboard-main,
html[data-design-system="central-v2"] .screen {
  background: var(--tgm-canvas);
  color: var(--tgm-text);
}

/* Shell and global navigation */
html[data-design-system="central-v2"] .sidebar {
  background: var(--tgm-sidebar);
}
html[data-design-system="central-v2"] .nav-item.is-active,
html[data-design-system="central-v2"] .nav-subitem.is-active {
  box-shadow: inset -3px 0 0 var(--tgm-accent);
}
html[data-design-system="central-v2"] .topbar {
  background: color-mix(in srgb, var(--tgm-canvas) 90%, transparent);
  border-color: var(--tgm-border-color);
}
html[data-design-system="central-v2"] .menu-button,
html[data-design-system="central-v2"] .icon-button,
html[data-design-system="central-v2"] .profile-menu,
html[data-design-system="central-v2"] .profile-dropdown {
  background: var(--tgm-surface);
  color: var(--tgm-text);
  border-color: var(--tgm-border-color);
}
html[data-design-system="central-v2"] .notification-button span {
  background: var(--tgm-accent);
  color: var(--tgm-accent-contrast);
}

/* Dashboard surfaces */
html[data-design-system="central-v2"] .welcome-card {
  background:
    radial-gradient(circle at 15% 20%, color-mix(in srgb, var(--tgm-accent) 28%, transparent), transparent 36%),
    linear-gradient(135deg, var(--tgm-sidebar), var(--tgm-sidebar-soft) 72%);
  border: 1px solid color-mix(in srgb, var(--tgm-accent) 24%, var(--tgm-border-strong-color));
}
html[data-design-system="central-v2"] .panel,
html[data-design-system="central-v2"] .stat-card,
html[data-design-system="central-v2"] .quick-action,
html[data-design-system="central-v2"] .pending-item {
  background: var(--tgm-surface);
  color: var(--tgm-text);
  border-color: var(--tgm-border-color);
  box-shadow: var(--tgm-shadow-sm);
}
html[data-design-system="central-v2"] .quick-action:hover,
html[data-design-system="central-v2"] .pending-item:hover {
  border-color: var(--tgm-accent-border-soft);
  background: var(--tgm-accent-softer);
}
html[data-design-system="central-v2"] .stat-icon--blue,
html[data-design-system="central-v2"] .stat-icon--violet {
  background: var(--tgm-accent-soft);
  color: var(--tgm-accent);
}

/* One visual grammar for every existing section. Section-specific CSS may keep
   layout decisions, but it no longer owns a separate palette. */
html[data-design-system="central-v2"] .section-workspace,
html[data-design-system="central-v2"] .section-workspace[data-accent="green"],
html[data-design-system="central-v2"] .section-workspace[data-accent="orange"],
html[data-design-system="central-v2"] .section-workspace[data-accent="violet"],
html[data-design-system="central-v2"] .section-workspace[data-section] {
  --page-accent: var(--tgm-accent);
  --section-visual-accent: var(--tgm-accent);
  --plans-accent: var(--tgm-accent);
  --plans-accent-strong: var(--tgm-accent-strong);
  --plans-accent-soft: var(--tgm-accent-soft);
  --plans-border: var(--tgm-accent-border);
}
html[data-design-system="central-v2"] .section-workspace .section-hero,
html[data-design-system="central-v2"] .section-workspace[data-section] .section-hero.page-header {
  color: var(--tgm-text);
  background:
    radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--tgm-accent) 10%, transparent), transparent 35%),
    var(--tgm-surface);
  border-color: var(--tgm-accent-border-soft);
  border-radius: var(--tgm-radius-xl);
  box-shadow: var(--tgm-shadow-sm);
  border-inline-end-color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .section-workspace .section-hero::before {
  background: var(--tgm-accent);
}
html[data-design-system="central-v2"] .section-workspace .section-kicker,
html[data-design-system="central-v2"] .section-workspace .section-back,
html[data-design-system="central-v2"] .record-card__eyebrow {
  color: var(--tgm-accent);
}

/* Services / tabs / selected state */
html[data-design-system="central-v2"] .section-workspace[data-section] .section-services {
  border-color: var(--tgm-border-color);
  background: var(--tgm-surface);
  box-shadow: none;
}
html[data-design-system="central-v2"] .section-workspace[data-section] .section-service-tab {
  color: var(--tgm-text-muted-strong);
  background: transparent;
  border-color: transparent;
}
html[data-design-system="central-v2"] .section-workspace[data-section] .section-service-tab:hover {
  color: var(--tgm-text);
  background: var(--tgm-surface-soft);
}
html[data-design-system="central-v2"] .section-workspace[data-section] .section-service-tab.is-active {
  color: var(--tgm-accent);
  border-color: var(--tgm-accent-border-medium);
  background: var(--tgm-accent-soft);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--tgm-accent) 13%, transparent);
}

/* Filters / form controls */
html[data-design-system="central-v2"] .section-workspace[data-section] .section-filters,
html[data-design-system="central-v2"] .segmented-filter {
  border-color: var(--tgm-border-color);
  background: var(--tgm-surface-soft);
}
html[data-design-system="central-v2"] .filter-field input,
html[data-design-system="central-v2"] .filter-field select,
html[data-design-system="central-v2"] .filter-field textarea,
html[data-design-system="central-v2"] .modal-field input,
html[data-design-system="central-v2"] .modal-field select,
html[data-design-system="central-v2"] .modal-field textarea,
html[data-design-system="central-v2"] .plain-input,
html[data-design-system="central-v2"] .input-shell {
  background: var(--tgm-surface);
  color: var(--tgm-text);
  border-color: var(--tgm-border-strong-color);
}
html[data-design-system="central-v2"] .filter-field input:focus,
html[data-design-system="central-v2"] .filter-field select:focus,
html[data-design-system="central-v2"] .filter-field textarea:focus,
html[data-design-system="central-v2"] .modal-field input:focus,
html[data-design-system="central-v2"] .modal-field select:focus,
html[data-design-system="central-v2"] .modal-field textarea:focus,
html[data-design-system="central-v2"] .plain-input:focus,
html[data-design-system="central-v2"] .input-shell:focus-within {
  outline: 0;
  border-color: var(--tgm-accent);
  box-shadow: 0 0 0 3px var(--tgm-focus-ring);
}
html[data-design-system="central-v2"] .section-workspace[data-section] .chip,
html[data-design-system="central-v2"] .segmented-filter__button,
html[data-design-system="central-v2"] .custody-self-replies__button {
  color: var(--tgm-text-muted-strong);
  background: var(--tgm-surface);
  border-color: var(--tgm-border-color);
}
html[data-design-system="central-v2"] .section-workspace[data-section] .chip:hover,
html[data-design-system="central-v2"] .section-workspace[data-section] .chip.is-active,
html[data-design-system="central-v2"] .segmented-filter__button.is-active,
html[data-design-system="central-v2"] .custody-self-replies__button.is-active {
  color: var(--tgm-accent);
  background: var(--tgm-accent-soft);
  border-color: var(--tgm-accent);
  box-shadow: inset 0 0 0 1px var(--tgm-accent);
}

/* Actions */
html[data-design-system="central-v2"] .management-action,
html[data-design-system="central-v2"] .account-action-button,
html[data-design-system="central-v2"] .secondary-button,
html[data-design-system="central-v2"] .action-card__button,
html[data-design-system="central-v2"] .pagination-button {
  color: var(--tgm-text);
  background: var(--tgm-surface);
  border-color: var(--tgm-border-strong-color);
}
html[data-design-system="central-v2"] .management-action:hover,
html[data-design-system="central-v2"] .account-action-button:hover,
html[data-design-system="central-v2"] .secondary-button:hover,
html[data-design-system="central-v2"] .action-card__button:hover,
html[data-design-system="central-v2"] .pagination-button:hover {
  border-color: var(--tgm-accent-border-medium);
  background: var(--tgm-accent-softer);
}
html[data-design-system="central-v2"] .management-action--primary,
html[data-design-system="central-v2"] .account-action-button--primary,
html[data-design-system="central-v2"] .primary-button {
  color: var(--tgm-accent-contrast);
  background: var(--tgm-accent);
  border-color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .management-action--primary:hover,
html[data-design-system="central-v2"] .account-action-button--primary:hover,
html[data-design-system="central-v2"] .primary-button:hover {
  background: var(--tgm-accent-hover);
  border-color: var(--tgm-accent-hover);
}
html[data-design-system="central-v2"] .management-action--danger,
html[data-design-system="central-v2"] .danger-outline,
html[data-design-system="central-v2"] .danger-menu-item {
  color: var(--tgm-danger);
  background: var(--tgm-danger-soft);
  border-color: var(--tgm-danger-border);
}

/* Cards / metrics / smart sections / tables */
html[data-design-system="central-v2"] .section-metric,
html[data-design-system="central-v2"] .section-table-card,
html[data-design-system="central-v2"] .record-card,
html[data-design-system="central-v2"] .action-card,
html[data-design-system="central-v2"] .section-action-group,
html[data-design-system="central-v2"] .account-group,
html[data-design-system="central-v2"] .presentation-card,
html[data-design-system="central-v2"] .smart-section {
  color: var(--tgm-text);
  background: var(--tgm-surface);
  border-color: var(--tgm-border-color);
  box-shadow: var(--tgm-shadow-sm);
}
html[data-design-system="central-v2"] .section-metric {
  border-top-color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .section-metric--green { border-top-color: var(--tgm-success); }
html[data-design-system="central-v2"] .section-metric--orange { border-top-color: var(--tgm-warning); }
html[data-design-system="central-v2"] .section-metric--danger,
html[data-design-system="central-v2"] .section-metric--red { border-top-color: var(--tgm-danger); }
html[data-design-system="central-v2"] .section-metric--violet { border-top-color: var(--tgm-accent); }
html[data-design-system="central-v2"] .section-metric:not([data-attention]) strong,
html[data-design-system="central-v2"] .smart-section__metric:not(.smart-section__metric--present):not(.smart-section__metric--late) strong {
  color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .smart-section.is-pinned {
  border-inline-start-color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .smart-section.is-pressing {
  border-color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .smart-section__metric {
  background: var(--tgm-accent-softer);
  border-color: var(--tgm-accent-border-soft);
}
html[data-design-system="central-v2"] .smart-section__toggle:hover,
html[data-design-system="central-v2"] .smart-section__toggle:focus-visible {
  background: var(--tgm-surface-soft);
  box-shadow: inset 0 0 0 2px var(--tgm-focus-ring);
}
html[data-design-system="central-v2"] .table-count,
html[data-design-system="central-v2"] .nav-count-badge:not([data-tone="danger"]) {
  color: var(--tgm-accent);
  background: var(--tgm-accent-soft);
  border-color: var(--tgm-accent-border-soft);
}
html[data-design-system="central-v2"] .data-table th {
  background: var(--tgm-surface-soft);
  color: var(--tgm-text-muted);
  border-color: var(--tgm-border-color);
}
html[data-design-system="central-v2"] .data-table td {
  border-color: var(--tgm-border-subtle-color);
}
html[data-design-system="central-v2"] .data-table tr.is-interactive:hover td,
html[data-design-system="central-v2"] .record-card.is-interactive:hover {
  background: var(--tgm-accent-softer);
  border-color: var(--tgm-accent-border-soft);
}
html[data-design-system="central-v2"] .record-card.is-interactive:focus-visible,
html[data-design-system="central-v2"] .data-table tr.is-interactive:focus-visible {
  outline-color: var(--tgm-focus-ring);
}

/* Settings, access, notification governance — same central surfaces. */
html[data-design-system="central-v2"] :is(
  .access-subject-chooser,
  .access-governance__summary,
  .access-feature-card,
  .access-context-card,
  .access-selection-empty,
  .notification-route-card,
  .notification-role-card,
  .notification-preference,
  .notification-group,
  .settings-services,
  .settings-service-grid > article,
  .settings-technical-details
) {
  color: var(--tgm-text);
  background: var(--tgm-surface);
  border-color: var(--tgm-border-color);
  box-shadow: var(--tgm-shadow-sm);
}
html[data-design-system="central-v2"] :is(
  .access-feature-card.is-selected,
  .access-context-card.is-selected,
  .notification-route-card.is-selected,
  .settings-service-grid > article.is-interactive:hover
) {
  border-color: var(--tgm-accent-border-medium);
  background: var(--tgm-accent-softer);
}
html[data-design-system="central-v2"] .access-switch.is-on {
  background: var(--tgm-accent);
  border-color: var(--tgm-accent);
}

/* Modal, drawer and detail surfaces */
html[data-design-system="central-v2"] .modal-backdrop,
html[data-design-system="central-v2"] .drawer-backdrop {
  background: var(--tgm-overlay);
}
html[data-design-system="central-v2"] .management-modal,
html[data-design-system="central-v2"] .modal-header,
html[data-design-system="central-v2"] .modal-footer,
html[data-design-system="central-v2"] .detail-header,
html[data-design-system="central-v2"] .notification-drawer,
html[data-design-system="central-v2"] .notification-item,
html[data-design-system="central-v2"] .session-row {
  color: var(--tgm-text);
  background: var(--tgm-surface);
  border-color: var(--tgm-border-color);
}
html[data-design-system="central-v2"] .management-modal,
html[data-design-system="central-v2"] .notification-drawer {
  box-shadow: var(--tgm-shadow-lg);
}
html[data-design-system="central-v2"] .modal-close {
  color: var(--tgm-text);
  background: var(--tgm-surface-soft);
}
html[data-design-system="central-v2"] .notification-item:hover {
  background: var(--tgm-accent-softer);
  border-color: var(--tgm-accent-border-soft);
}
html[data-design-system="central-v2"] .action-card__icon,
html[data-design-system="central-v2"] .presentation-card--identity .presentation-card__icon {
  color: var(--tgm-accent);
  background: var(--tgm-accent-soft);
}
html[data-design-system="central-v2"] .action-card--danger .action-card__icon,
html[data-design-system="central-v2"] .presentation-card--danger .presentation-card__icon {
  color: var(--tgm-danger);
  background: var(--tgm-danger-soft);
}

/* Semantic colors remain semantic, never section identities. */
html[data-design-system="central-v2"] .status-badge[data-tone="green"],
html[data-design-system="central-v2"] .status-badge[data-tone="success"] { background: var(--tgm-success-soft); color: var(--tgm-success); }
html[data-design-system="central-v2"] .status-badge[data-tone="orange"],
html[data-design-system="central-v2"] .status-badge[data-tone="warning"] { background: var(--tgm-warning-soft); color: var(--tgm-warning); }
html[data-design-system="central-v2"] .status-badge[data-tone="danger"],
html[data-design-system="central-v2"] .status-badge[data-tone="red"] { background: var(--tgm-danger-soft); color: var(--tgm-danger); }
html[data-design-system="central-v2"] .status-badge[data-tone="blue"],
html[data-design-system="central-v2"] .status-badge[data-tone="info"] { background: var(--tgm-info-soft); color: var(--tgm-info); }

/* Responsive hardening: components can shrink without changing business data. */
html[data-design-system="central-v2"] .section-workspace,
html[data-design-system="central-v2"] .section-controlbar,
html[data-design-system="central-v2"] .section-actions,
html[data-design-system="central-v2"] .section-filters,
html[data-design-system="central-v2"] .section-tables,
html[data-design-system="central-v2"] .section-table-card,
html[data-design-system="central-v2"] .record-card,
html[data-design-system="central-v2"] .management-modal,
html[data-design-system="central-v2"] .modal-body {
  min-width: 0;
  max-width: 100%;
}
html[data-design-system="central-v2"] :is(
  .record-card__head h4,
  .section-table-heading h3,
  .presentation-card,
  .modal-copy,
  .notification-item,
  .action-card__copy,
  .section-note
) {
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  html[data-design-system="central-v2"] .dashboard-main { padding-inline: 12px; }
  html[data-design-system="central-v2"] .section-workspace .section-hero,
  html[data-design-system="central-v2"] .panel,
  html[data-design-system="central-v2"] .section-table-card,
  html[data-design-system="central-v2"] .smart-section,
  html[data-design-system="central-v2"] .account-group,
  html[data-design-system="central-v2"] .action-card {
    border-radius: var(--tgm-radius-lg);
  }
  html[data-design-system="central-v2"] .management-modal {
    width: min(100%, calc(100vw - 16px));
    max-height: min(94dvh, 980px);
    border-radius: var(--tgm-radius-lg);
  }
  html[data-design-system="central-v2"] .modal-backdrop { padding: 8px; }
  html[data-design-system="central-v2"] .modal-header,
  html[data-design-system="central-v2"] .modal-body,
  html[data-design-system="central-v2"] .modal-footer { padding-inline: 14px; }
}

@media (max-width: 390px) {
  html[data-design-system="central-v2"] .dashboard-main { padding-inline: 9px; }
  html[data-design-system="central-v2"] .section-workspace[data-section] .section-service-tab,
  html[data-design-system="central-v2"] .section-workspace[data-section] .chip,
  html[data-design-system="central-v2"] .section-workspace[data-section] .management-action {
    max-width: 100%;
  }
}

/* ==========================================================================
   8.19.14 — Final Visual QA & Cleanup
   --------------------------------------------------------------------------
   Final central hardening after the v2 migration. These rules remove the last
   shared selection/focus/mobile shell dependencies on legacy local palettes.
   Layout and business behavior remain unchanged.
   ========================================================================== */

html[data-design-system="central-v2"] .mobile-bottom-nav {
  background: color-mix(in srgb, var(--tgm-surface) 96%, transparent);
  border-top-color: var(--tgm-border-color);
  box-shadow: 0 -10px 28px color-mix(in srgb, var(--tgm-text) 9%, transparent);
}
html[data-design-system="central-v2"] .mobile-bottom-nav__item.is-active {
  color: var(--tgm-accent);
  background: var(--tgm-accent-soft);
}
html[data-design-system="central-v2"] .mobile-nav-icon i {
  color: var(--tgm-accent-contrast);
  background: var(--tgm-accent);
  box-shadow: 0 0 0 2px var(--tgm-surface);
}

html[data-design-system="central-v2"] :is(
  .segmented-filter__button,
  .detail-table-tab,
  .custody-self-replies__button,
  .mobile-bottom-nav__item,
  .management-action,
  .secondary-button,
  .account-action-button,
  .section-service-tab,
  .chip,
  .smart-action-item,
  .settings-service-grid article.is-interactive
):focus-visible {
  outline: 0;
  border-color: var(--tgm-accent);
  box-shadow: 0 0 0 3px var(--tgm-focus-ring);
}

html[data-design-system="central-v2"] :is(
  .segmented-filter__button.is-active,
  .detail-table-tab.is-active,
  .custody-self-replies__button.is-active,
  .quick-dates .chip.is-active
) {
  color: var(--tgm-accent);
  background: var(--tgm-accent-soft);
  border-color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .smart-action-fab {
  color: var(--tgm-accent-contrast);
  background: var(--tgm-accent);
  box-shadow: 0 14px 34px color-mix(in srgb, var(--tgm-accent) 26%, transparent);
}
html[data-design-system="central-v2"] .smart-action-fab:hover { background: var(--tgm-accent-hover); }

/* Width safety for nested flex/grid controls and long Arabic content. */
html[data-design-system="central-v2"] :is(
  .section-services,
  .section-service-tab,
  .section-actions,
  .section-actions > *,
  .section-filters,
  .section-filters > *,
  .quick-dates,
  .quick-dates > *,
  .smart-section,
  .smart-section__header,
  .smart-section__body,
  .record-card__head,
  .record-card__meta,
  .detail-table-workspace,
  .table-scroller,
  .settings-service-grid,
  .access-governance,
  .notification-drawer
) {
  min-width: 0;
  max-width: 100%;
}
html[data-design-system="central-v2"] :is(input, select, textarea) { max-width: 100%; }
html[data-design-system="central-v2"] :is(.table-scroller, .detail-table-tabs) {
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 760px) {
  html[data-design-system="central-v2"] .mobile-bottom-nav__item { min-width: 0; }
  html[data-design-system="central-v2"] :is(
    .section-service-tab,
    .chip,
    .segmented-filter__button,
    .management-action,
    .secondary-button,
    .account-action-button
  ) { min-height: 44px; }
  html[data-design-system="central-v2"] :is(
    .section-service-tab,
    .management-action,
    .action-card__copy,
    .record-card__head h4,
    .section-note
  ) { overflow-wrap: anywhere; }
}

html[data-theme="dark"][data-design-system="central-v2"] :is(
  .segmented-filter__button.is-active,
  .detail-table-tab.is-active,
  .custody-self-replies__button.is-active,
  .quick-dates .chip.is-active,
  .mobile-bottom-nav__item.is-active
) { color: var(--tgm-accent-pale); }



/* ========================================================================== 
   8.19.16 — Central mobile service-tab overflow guard
   --------------------------------------------------------------------------
   Long Arabic service names must never grow a selected tab vertically or
   collide with the service strip border.  The strip scrolls horizontally on
   compact screens; every tab stays one line and keeps the shared control height.
   ========================================================================== */
@media (max-width: 760px) {
  html[data-design-system="central-v2"] .section-workspace[data-section] .section-services {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section] .section-services-label {
    flex: 0 0 auto;
    white-space: nowrap;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section] .section-service-tab {
    flex: 0 0 auto;
    inline-size: max-content;
    min-inline-size: max-content;
    max-inline-size: none;
    min-block-size: 44px;
    block-size: 44px;
    padding-inline: 12px;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: keep-all;
    line-height: 1;
  }
}

/* 8.19.17 — Debt Ledger home entry. Uses only central tokens so Light/Dark
   remain governed by the shared Design System rather than feature colors. */
.debt-ledger-home-card {
  width: 100%;
  min-width: 0;
  margin-top: var(--tgm-space-5);
  padding: var(--tgm-space-5);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--tgm-space-4);
  border: 1px solid var(--tgm-accent-border-soft);
  border-radius: var(--tgm-radius-xl);
  background: linear-gradient(135deg, var(--tgm-surface) 0%, var(--tgm-accent-softer) 100%);
  color: var(--tgm-text);
  box-shadow: var(--tgm-shadow-sm);
  text-align: start;
  cursor: pointer;
  transition: border-color var(--tgm-motion-fast) var(--tgm-ease), box-shadow var(--tgm-motion-fast) var(--tgm-ease), transform var(--tgm-motion-fast) var(--tgm-ease);
}
.debt-ledger-home-card:hover { border-color: var(--tgm-accent-border); box-shadow: var(--tgm-shadow-md); }
.debt-ledger-home-card:active { transform: translateY(1px); }
.debt-ledger-home-card:focus-visible { outline: 3px solid var(--tgm-focus-ring); outline-offset: 2px; }
.debt-ledger-home-card__icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: var(--tgm-radius-md);
  background: var(--tgm-accent-soft);
  color: var(--tgm-accent-soft-text);
  font-size: 1.45rem;
}
.debt-ledger-home-card__copy { min-width: 0; display: grid; gap: var(--tgm-space-1); }
.debt-ledger-home-card__copy > strong { font-size: var(--tgm-text-xl); color: var(--tgm-text); }
.debt-ledger-home-card__copy > small { color: var(--tgm-text-muted); line-height: var(--tgm-leading-normal); }
.debt-ledger-home-card__summary { display: flex; align-items: stretch; gap: var(--tgm-space-2); min-width: 0; }
.debt-ledger-home-card__summary > span {
  min-width: 112px;
  padding: var(--tgm-space-2) var(--tgm-space-3);
  display: grid;
  gap: var(--tgm-space-1);
  border: var(--tgm-border);
  border-radius: var(--tgm-radius-md);
  background: var(--tgm-surface);
}
.debt-ledger-home-card__summary small { color: var(--tgm-text-muted); font-size: var(--tgm-text-xs); }
.debt-ledger-home-card__summary strong { color: var(--tgm-text); font-size: var(--tgm-text-md); white-space: nowrap; }
.debt-ledger-home-card__arrow { color: var(--tgm-accent); font-size: var(--tgm-text-xl); font-weight: 800; }

@media (max-width: 760px) {
  .debt-ledger-home-card {
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: var(--tgm-space-4);
    gap: var(--tgm-space-3);
  }
  .debt-ledger-home-card__summary {
    grid-column: 1 / -1;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .debt-ledger-home-card__summary > span { min-width: 0; padding-inline: var(--tgm-space-2); }
  .debt-ledger-home-card__summary > span:last-child { grid-column: 1 / -1; }
  .debt-ledger-home-card__summary strong { font-size: var(--tgm-text-sm); }
}

/* 8.19.18 — Device Ledger. Central-token-only visual contract. */
.device-ledger-home-card {
  width: 100%; min-width: 0; margin-top: var(--tgm-space-4); padding: var(--tgm-space-5);
  display: grid; grid-template-columns: auto minmax(0,1fr) auto auto; align-items: center;
  gap: var(--tgm-space-4); border: 1px solid var(--tgm-accent-border-soft);
  border-radius: var(--tgm-radius-xl); background: linear-gradient(135deg,var(--tgm-surface) 0%,var(--tgm-accent-softer) 100%);
  color: var(--tgm-text); box-shadow: var(--tgm-shadow-sm); text-align: start; cursor: pointer;
  transition: border-color var(--tgm-motion-fast) var(--tgm-ease), box-shadow var(--tgm-motion-fast) var(--tgm-ease), transform var(--tgm-motion-fast) var(--tgm-ease);
}
.device-ledger-home-card:hover { border-color: var(--tgm-accent-border); box-shadow: var(--tgm-shadow-md); }
.device-ledger-home-card:active { transform: translateY(1px); }
.device-ledger-home-card:focus-visible { outline: 3px solid var(--tgm-focus-ring); outline-offset: 2px; }
.device-ledger-home-card__icon { width:48px; height:48px; display:grid; place-items:center; border-radius:var(--tgm-radius-md); background:var(--tgm-accent-soft); color:var(--tgm-accent-soft-text); font-size:1.45rem; }
.device-ledger-home-card__copy { min-width:0; display:grid; gap:var(--tgm-space-1); }
.device-ledger-home-card__copy > strong { font-size:var(--tgm-text-xl); color:var(--tgm-text); }
.device-ledger-home-card__copy > small { color:var(--tgm-text-muted); line-height:var(--tgm-leading-normal); }
.device-ledger-home-card__summary { display:flex; align-items:stretch; gap:var(--tgm-space-2); min-width:0; }
.device-ledger-home-card__summary > span { min-width:112px; padding:var(--tgm-space-2) var(--tgm-space-3); display:grid; gap:var(--tgm-space-1); border:var(--tgm-border); border-radius:var(--tgm-radius-md); background:var(--tgm-surface); }
.device-ledger-home-card__summary small { color:var(--tgm-text-muted); font-size:var(--tgm-text-xs); }
.device-ledger-home-card__summary strong { color:var(--tgm-text); font-size:var(--tgm-text-md); white-space:nowrap; }
.device-ledger-home-card__arrow { color:var(--tgm-accent); font-size:var(--tgm-text-xl); font-weight:800; }
.device-intake-builder { display:grid; gap:var(--tgm-space-3); padding:var(--tgm-space-3); border:var(--tgm-border); border-radius:var(--tgm-radius-lg); background:var(--tgm-surface-subtle); }
.device-intake-builder__heading { display:flex; gap:var(--tgm-space-3); align-items:center; justify-content:space-between; }
.device-intake-builder__heading > div { display:grid; gap:var(--tgm-space-1); }
.device-intake-builder__heading small { color:var(--tgm-text-muted); }
.device-intake-builder__list { display:grid; gap:var(--tgm-space-3); }
.device-intake-row { display:grid; gap:var(--tgm-space-3); padding:var(--tgm-space-3); border:var(--tgm-border); border-radius:var(--tgm-radius-md); background:var(--tgm-surface); }
.device-intake-row__head { display:flex; align-items:center; justify-content:space-between; gap:var(--tgm-space-2); }
.device-intake-row__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--tgm-space-3); }
.device-intake-row__field { min-width:0; display:grid; gap:var(--tgm-space-1); color:var(--tgm-text-muted); font-size:var(--tgm-text-sm); }
.device-intake-row__field input,.device-intake-row__field select { width:100%; min-width:0; }
@media (max-width:760px) {
  .device-ledger-home-card { grid-template-columns:auto minmax(0,1fr) auto; padding:var(--tgm-space-4); gap:var(--tgm-space-3); }
  .device-ledger-home-card__summary { grid-column:1/-1; width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .device-ledger-home-card__summary > span { min-width:0; padding-inline:var(--tgm-space-2); }
  .device-ledger-home-card__summary > span:last-child { grid-column:1/-1; }
  .device-ledger-home-card__summary strong { font-size:var(--tgm-text-sm); }
  .device-intake-builder__heading { align-items:flex-start; flex-direction:column; }
  .device-intake-row__grid { grid-template-columns:1fr; }
}

/* 8.19.19 — Central Navigation, Pull-to-Refresh, and Money Presentation */
html[data-design-system="central-v2"] .section-workspace .section-hero.page-header .section-back.is-central-back {
  display: inline-flex !important;
  align-items: center;
  gap: var(--tgm-space-2);
  inline-size: fit-content;
  min-block-size: 34px;
  padding: 0 var(--tgm-space-2);
  margin-block-end: var(--tgm-space-2);
  border: 1px solid var(--tgm-accent-border-soft);
  border-radius: var(--tgm-radius-pill);
  background: color-mix(in srgb, var(--tgm-surface) 88%, transparent);
  color: var(--tgm-accent-soft-text);
  font-size: var(--tgm-text-sm);
  font-weight: 800;
  box-shadow: var(--tgm-shadow-sm);
}
html[data-design-system="central-v2"] .section-workspace .section-hero.page-header .section-back.is-central-back:active {
  transform: translateY(1px);
  background: var(--tgm-accent-soft);
}

.central-refresh-indicator {
  --pull-progress: 0;
  --pull-offset: 0px;
  --pull-scale: .64;
  --pull-opacity: .16;
  position: fixed;
  z-index: 1600;
  left: 50%;
  right: auto;
  top: calc(env(safe-area-inset-top, 0px) + 56px);
  inline-size: 40px;
  block-size: 40px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--tgm-text-inverse) 28%, var(--tgm-border-color));
  border-radius: 50%;
  background: color-mix(in srgb, var(--tgm-surface-raised) 88%, transparent);
  box-shadow: 0 12px 34px color-mix(in srgb, var(--tgm-canvas) 60%, transparent);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  opacity: var(--pull-opacity);
  transform: translate3d(-50%, calc(-22px + var(--pull-offset)), 0) scale(var(--pull-scale));
  transform-origin: center;
  transition:
    opacity 120ms var(--tgm-ease),
    transform 150ms var(--tgm-ease),
    background var(--tgm-motion-fast) var(--tgm-ease),
    border-color var(--tgm-motion-fast) var(--tgm-ease),
    box-shadow var(--tgm-motion-fast) var(--tgm-ease);
  pointer-events: none;
  will-change: transform, opacity;
}
.central-refresh-indicator[hidden] { display: none !important; }
.central-refresh-indicator__ring {
  inline-size: 21px;
  block-size: 21px;
  border: 2.5px solid color-mix(in srgb, var(--tgm-text-inverse) 54%, transparent);
  border-block-start-color: var(--tgm-accent);
  border-inline-end-color: color-mix(in srgb, var(--tgm-accent) 68%, var(--tgm-text-inverse));
  border-radius: 50%;
  transform: rotate(calc(var(--pull-progress) * 240deg));
  transition: border-color 120ms var(--tgm-ease), transform 80ms linear;
}
.central-refresh-indicator.is-armed {
  box-shadow: 0 12px 36px color-mix(in srgb, var(--tgm-accent) 24%, transparent);
}
.central-refresh-indicator.is-armed .central-refresh-indicator__ring,
.central-refresh-indicator.is-loading .central-refresh-indicator__ring {
  border-color: color-mix(in srgb, var(--tgm-text-inverse) 46%, transparent);
  border-block-start-color: var(--tgm-accent);
  animation: tgm-central-refresh-spin .68s linear infinite;
}
.central-refresh-indicator.is-cancelling {
  opacity: 0;
  transform: translate3d(-50%, -22px, 0) scale(.6);
}
.central-refresh-indicator__status { display: none; }
.central-refresh-indicator.is-success,
.central-refresh-indicator.is-error,
.central-refresh-indicator.is-maintenance {
  opacity: 1;
  transform: translate3d(-50%, 2px, 0) scale(1);
}
.central-refresh-indicator.is-success {
  background: var(--tgm-success);
  border-color: var(--tgm-success-strong);
  box-shadow: 0 12px 34px color-mix(in srgb, var(--tgm-success) 30%, transparent);
}
.central-refresh-indicator.is-error {
  background: var(--tgm-danger);
  border-color: var(--tgm-danger-strong);
  box-shadow: 0 12px 34px color-mix(in srgb, var(--tgm-danger) 26%, transparent);
}
.central-refresh-indicator.is-maintenance {
  background: var(--tgm-warning);
  border-color: var(--tgm-warning-strong);
  box-shadow: 0 12px 34px color-mix(in srgb, var(--tgm-warning) 28%, transparent);
}
.central-refresh-indicator.is-success .central-refresh-indicator__ring,
.central-refresh-indicator.is-error .central-refresh-indicator__ring,
.central-refresh-indicator.is-maintenance .central-refresh-indicator__ring { display: none; }
.central-refresh-indicator.is-success .central-refresh-indicator__status,
.central-refresh-indicator.is-error .central-refresh-indicator__status,
.central-refresh-indicator.is-maintenance .central-refresh-indicator__status {
  display: grid;
  place-items: center;
  inline-size: 22px;
  block-size: 22px;
  color: #fff;
  font-weight: 900;
  font-size: 18px;
  line-height: 1;
}
.central-refresh-indicator.is-success .central-refresh-indicator__status::before { content: "✓"; }
.central-refresh-indicator.is-error .central-refresh-indicator__status::before { content: "×"; }
.central-refresh-indicator.is-maintenance .central-refresh-indicator__status::before { content: "↻"; }
@keyframes tgm-central-refresh-spin { to { transform: rotate(360deg); } }

.central-back-indicator {
  --back-progress: 0;
  --back-y: 50%;
  --back-edge-offset: 18px;
  --back-scale: .72;
  --back-opacity: .3;
  position: fixed;
  z-index: 1601;
  top: var(--back-y);
  inline-size: 44px;
  block-size: 44px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--tgm-accent) 42%, var(--tgm-border-color));
  border-radius: 50%;
  background: color-mix(in srgb, var(--tgm-surface-raised) 90%, transparent);
  color: var(--tgm-accent-soft-text);
  box-shadow: 0 10px 30px color-mix(in srgb, var(--tgm-canvas) 60%, transparent);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  opacity: var(--back-opacity);
  pointer-events: none;
  will-change: transform, opacity;
  transition:
    transform 110ms var(--tgm-ease),
    opacity 110ms var(--tgm-ease),
    background 110ms var(--tgm-ease),
    border-color 110ms var(--tgm-ease),
    box-shadow 110ms var(--tgm-ease);
}
.central-back-indicator[hidden] { display: none !important; }
.central-back-indicator.is-rtl {
  right: calc(env(safe-area-inset-right, 0px) + 8px);
  left: auto;
  transform: translate3d(var(--back-edge-offset), -50%, 0) scale(var(--back-scale));
}
.central-back-indicator.is-ltr {
  left: calc(env(safe-area-inset-left, 0px) + 8px);
  right: auto;
  transform: translate3d(calc(0px - var(--back-edge-offset)), -50%, 0) scale(var(--back-scale));
}
.central-back-indicator__arrow {
  display: grid;
  place-items: center;
  inline-size: 24px;
  block-size: 24px;
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
  transform: translateY(-1px) scale(.94);
  transition: transform 100ms var(--tgm-ease), color 100ms var(--tgm-ease);
}
.central-back-indicator.is-rtl .central-back-indicator__arrow::before { content: "→"; }
.central-back-indicator.is-ltr .central-back-indicator__arrow::before { content: "←"; }
.central-back-indicator.is-armed {
  border-color: var(--tgm-accent-border);
  background: var(--tgm-accent-soft);
  color: var(--tgm-accent-soft-text);
  box-shadow: 0 10px 32px color-mix(in srgb, var(--tgm-accent) 30%, transparent);
}
.central-back-indicator.is-armed .central-back-indicator__arrow {
  transform: translateY(-1px) scale(1.08);
}
.central-back-indicator.is-committing {
  background: var(--tgm-accent);
  border-color: var(--tgm-accent);
  color: var(--tgm-text-inverse);
  opacity: 1;
}
.central-back-indicator.is-cancelling { opacity: 0; }

html[data-design-system="central-v2"] body {
  overscroll-behavior-y: contain;
}

/* 8.21.47 — central mobile scroll ownership (all activities).
   Root owns document boundary actions; body must not trap touch input between
   an auto-height page and its root. Dialogs keep independent, bounded scrollers.
   No Android/iOS sniffing and no change to booking or other business state. */
@media (max-width:720px) {
  html[data-design-system="central-v2"]:not(.modal-open) {
    overscroll-behavior-y:contain;
  }
  html[data-design-system="central-v2"] body:not(.modal-open) {
    overscroll-behavior-y:auto;
  }
}
html[data-design-system="central-v2"].modal-open,
html[data-design-system="central-v2"] body.modal-open {
  overscroll-behavior:none;
}
.suites-sheet { overflow:hidden; overscroll-behavior:none; }
.suites-sheet__card { overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }


.money-input {
  direction: ltr;
  unicode-bidi: plaintext;
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
}

@media (prefers-reduced-motion: reduce) {
  .central-refresh-indicator,
  .central-refresh-indicator__ring { transition: none; animation-duration: 1.4s !important; }
}

/* 8.19.27 — central activity switcher */
.activity-switcher{position:relative;margin-inline-start:auto}.activity-switcher__current{display:flex;align-items:center;gap:var(--tgm-space-2);min-height:42px;padding:0 var(--tgm-space-3);border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-raised);color:var(--tgm-text);font:inherit;font-weight:800;cursor:pointer}.activity-switcher__menu{position:absolute;z-index:80;top:calc(100% + var(--tgm-space-2));inset-inline-end:0;min-width:180px;padding:var(--tgm-space-2);border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-raised);box-shadow:var(--tgm-shadow-lg)}.activity-switcher__menu button{width:100%;text-align:start;border:0;border-radius:var(--tgm-radius-sm);padding:10px 12px;background:transparent;color:var(--tgm-text);font:inherit;font-weight:700;cursor:pointer}.activity-switcher__menu button:hover{background:var(--tgm-surface-inset)}
@media(max-width:720px){.activity-switcher{margin-inline-start:0}.activity-switcher__current{min-height:38px;padding-inline:10px}.activity-switcher__menu{min-width:150px}}

/* 8.19.28 — Suites Inn daily operations */
.suites-hero__actions{display:flex;gap:var(--tgm-space-2);flex-wrap:wrap}.suites-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--tgm-space-3);margin-bottom:var(--tgm-space-4)}.suites-stat{padding:var(--tgm-space-3);border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);background:var(--tgm-surface-raised)}.suites-stat span{display:block;color:var(--tgm-text-muted);font-size:.82rem}.suites-stat strong{font-size:1.55rem}.suites-layout{display:grid;gap:var(--tgm-space-4)}.suites-unit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--tgm-space-3)}.suites-unit-card{display:flex;flex-direction:column;gap:var(--tgm-space-2);padding:var(--tgm-space-3);border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);background:var(--tgm-surface-raised);text-align:start;color:var(--tgm-text)}.suites-unit-card__head{display:flex;justify-content:space-between;gap:var(--tgm-space-2);align-items:center}.suites-unit-card__head strong{font-size:1.1rem}.suites-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.75rem;font-weight:800;background:var(--tgm-surface-inset)}.suites-status[data-status="ready"]{color:var(--tgm-success-strong);background:var(--status-success-bg)}.suites-status[data-status="occupied"]{color:var(--tgm-danger-strong);background:var(--status-danger-bg)}.suites-status[data-status="reserved"]{color:var(--tgm-warning-strong);background:var(--status-warning-bg)}.suites-status[data-status="needs_cleaning"]{color:var(--tgm-info-strong);background:var(--status-info-bg)}.suites-unit-card__meta{color:var(--tgm-text-muted);font-size:.85rem}.suites-unit-card__actions{display:flex;flex-wrap:wrap;gap:var(--tgm-space-2)}.suites-unit-card__actions button{min-height:34px}.suites-upcoming-list{display:grid;gap:var(--tgm-space-2)}.suites-upcoming-row{display:grid;grid-template-columns:90px 1fr auto;gap:var(--tgm-space-3);align-items:center;padding:var(--tgm-space-3);border-bottom:1px solid var(--tgm-border-color)}.suites-upcoming-row:last-child{border-bottom:0}.suites-form-panel{margin-top:var(--tgm-space-4)}.suites-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tgm-space-3)}.suites-form-wide{grid-column:1/-1}.suites-form-grid label{display:grid;gap:6px;font-weight:700}.suites-empty{padding:var(--tgm-space-4);text-align:center;color:var(--tgm-text-muted)}
@media(max-width:900px){.suites-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.suites-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.suites-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.suites-unit-grid{grid-template-columns:1fr}.suites-form-grid{grid-template-columns:1fr}.suites-form-wide{grid-column:auto}.suites-upcoming-row{grid-template-columns:70px 1fr}.suites-upcoming-row>span:last-child{grid-column:2}.suites-hero__actions{width:100%}.suites-hero__actions button{flex:1}}

/* 8.19.29 — Suites Inn calendar, archive and guest history */
.suites-tabs{display:flex;gap:var(--tgm-space-2);overflow-x:auto;padding:0 0 var(--tgm-space-3);margin-bottom:var(--tgm-space-3);scrollbar-width:none}.suites-tabs::-webkit-scrollbar{display:none}.suites-tab{white-space:nowrap;border:1px solid var(--tgm-border-color);border-radius:999px;background:var(--tgm-surface-raised);color:var(--tgm-text);padding:9px 14px;font:inherit;font-weight:800;cursor:pointer}.suites-tab.is-active{border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text)}.suites-secondary-view{margin-top:var(--tgm-space-3)}.suites-inline-controls,.suites-archive-controls,.suites-search-row{display:flex;gap:var(--tgm-space-2);align-items:end;flex-wrap:wrap}.suites-archive-controls .plain-input,.suites-inline-controls .plain-input{width:auto;min-width:145px}.suites-calendar-scroll{overflow:auto;padding-bottom:var(--tgm-space-2)}.suites-calendar-grid{position:relative;display:grid;grid-template-columns:88px repeat(var(--calendar-days),minmax(110px,1fr));grid-auto-rows:minmax(54px,auto);min-width:max(900px,100%);border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);overflow:hidden}.suites-calendar-head,.suites-calendar-unit,.suites-calendar-cell{border-inline-start:1px solid var(--tgm-border-color);border-bottom:1px solid var(--tgm-border-color);padding:9px;background:var(--tgm-surface-raised);color:var(--tgm-text)}.suites-calendar-head{font-size:.78rem;font-weight:800;text-align:center;background:var(--tgm-surface-inset)}.suites-calendar-unit{border:0;border-bottom:1px solid var(--tgm-border-color);font:inherit;font-weight:900;cursor:pointer}.suites-calendar-cell{min-height:54px}.suites-calendar-booking{z-index:2;align-self:center;margin:7px 4px;border:1px solid var(--tgm-accent-border);border-radius:var(--tgm-radius-sm);padding:7px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.suites-record-list{display:grid;gap:var(--tgm-space-2);margin-top:var(--tgm-space-3)}.suites-record{display:grid;gap:4px;width:100%;padding:var(--tgm-space-3);border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-raised);color:var(--tgm-text);text-align:start;font:inherit;cursor:pointer}.suites-record span{color:var(--tgm-text-muted);font-size:.84rem}.suites-guest-title{display:flex;justify-content:space-between;gap:var(--tgm-space-2);padding:var(--tgm-space-3);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-inset)}
@media(max-width:640px){.suites-tabs{margin-inline:-4px;padding-inline:4px}.suites-secondary-view{padding:var(--tgm-space-3)}.suites-archive-controls,.suites-search-row{align-items:stretch}.suites-archive-controls>*{flex:1 1 130px}.suites-search-row>input{flex:1 1 190px}.suites-calendar-grid{grid-template-columns:68px repeat(var(--calendar-days),minmax(96px,1fr))}}


/* 8.19.30 — Activity Shell Separation */
.activity-switcher__current{white-space:nowrap;inline-size:max-content;min-inline-size:116px;max-inline-size:min(190px,42vw);justify-content:space-between}
.activity-switcher__current #activity-current-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}
html[data-activity="suites_in"] #sidebar .sidebar__status{display:none}
html[data-activity="suites_in"] #main-navigation .nav-label{margin-bottom:var(--tgm-space-2)}
html[data-activity="suites_in"] #main-navigation .suites-nav-item{width:100%}
html[data-activity="suites_in"] .smart-action-fab{display:grid;place-items:center}
@media(max-width:720px){
  .activity-switcher__current{min-inline-size:108px;max-inline-size:34vw;padding-inline:11px;gap:8px}
  .suites-workspace .suites-tabs{display:none}
  html[data-activity="suites_in"] .mobile-bottom-nav__item b{font-size:.67rem}
}

/* 8.19.31 — Activity Boundary Audit, scoped notifications and Suites home cleanup */
.notification-source{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:3px 8px;font-size:.68rem;font-weight:900;background:var(--tgm-surface-inset);color:var(--tgm-text-muted)}
.notification-source--suites_in{background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);border:1px solid var(--tgm-accent-border)}
.notification-source--global{background:var(--status-info-bg);color:var(--tgm-info-strong)}
.suites-empty--setup{display:grid;gap:10px;justify-items:center;padding:clamp(18px,4vw,32px)}
.suites-empty--setup strong{color:var(--tgm-text);font-size:1.08rem}.suites-empty--setup span{max-width:34rem}.suites-empty--setup .primary-button{min-width:min(260px,100%)}
@media(max-width:720px){
  .suites-workspace .suites-hero{padding:16px 18px;margin-bottom:12px;gap:12px}
  .suites-workspace .suites-hero h2{font-size:clamp(1.55rem,7vw,2rem);margin-block:2px 4px}
  .suites-workspace .suites-hero p{font-size:.86rem;line-height:1.6;margin:0}
  .suites-workspace .suites-hero .section-kicker{font-size:.7rem}
  .suites-workspace .suites-hero__actions{gap:8px}
  .suites-workspace .suites-hero__actions button{min-height:42px;padding-block:9px}
  .suites-workspace .suites-stats{grid-template-columns:repeat(6,minmax(74px,1fr));overflow-x:auto;scrollbar-width:none;gap:8px;margin-bottom:12px;padding-bottom:2px}
  .suites-workspace .suites-stats::-webkit-scrollbar{display:none}
  .suites-workspace .suites-stat{padding:10px;min-width:78px;border-radius:14px}
  .suites-workspace .suites-stat span{font-size:.68rem;white-space:nowrap}.suites-workspace .suites-stat strong{font-size:1.15rem}
  .suites-workspace .suites-layout{gap:12px}
  .suites-workspace .panel{padding:16px}
  .suites-workspace .panel__heading h2{font-size:1.25rem}
}

/* 8.19.32 — central activity-shell feedback and switcher stability */
html[data-design-system="central-v2"] .activity-switcher {
  z-index: 96;
  isolation: isolate;
}
html[data-design-system="central-v2"] .toast {
  color: #fff;
  font-weight: 800;
  line-height: 1.5;
  overflow-wrap: anywhere;
  border: 1px solid rgba(255,255,255,.22);
}
html[data-design-system="central-v2"] .toast[data-tone="success"] {
  background: #05603a;
  border-inline-start-color: #6ce9a6;
}
html[data-design-system="central-v2"] .toast[data-tone="danger"],
html[data-design-system="central-v2"] .toast[data-tone="error"] {
  background: #7a271a;
  border-inline-start-color: #fda29b;
}
html[data-design-system="central-v2"][data-theme="dark"] .toast {
  color: #fff;
  box-shadow: 0 18px 44px rgba(0,0,0,.46);
}

/* 8.19.36 — Suites Inn operational UX and reports. Activity-scoped only. */
.suites-workspace .suites-month-summary{padding:var(--tgm-space-3)}
.suites-financial-grid,.suites-report-summary,.suites-method-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--tgm-space-2)}
.suites-financial-stat{display:grid;gap:5px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-inset);min-width:0}
.suites-financial-stat span{font-size:.76rem;color:var(--tgm-text-muted)}
.suites-financial-stat strong{font-size:1rem;color:var(--tgm-text);white-space:nowrap}
.suites-unit-card__actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:4px}
.suites-unit-card__actions button{width:100%;min-width:0;min-height:42px;padding-inline:7px;white-space:normal;line-height:1.25}
.suites-action-checkout{border-color:var(--tgm-danger-strong)!important;color:var(--tgm-danger-strong)!important;background:var(--status-danger-bg)!important}
.suites-booking-price{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;border:1px solid var(--tgm-accent-border);border-radius:var(--tgm-radius-lg);background:var(--tgm-accent-soft)}
.suites-booking-price>div{display:grid;gap:4px}.suites-booking-price span{color:var(--tgm-text-muted);font-size:.8rem}.suites-booking-price strong{font-size:1.15rem}
.suites-booking-price>button,.suites-booking-price>label{grid-column:1/-1}.suites-booking-price label{display:grid;gap:6px}
.suites-sheet{position:fixed;inset:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));background:rgba(3,8,20,.58);backdrop-filter:blur(7px)}
.suites-sheet[hidden]{display:none!important}
.suites-sheet__card{width:min(680px,100%);max-height:min(82dvh,760px);overflow:auto;padding:18px;border:1px solid var(--tgm-border-color);border-radius:24px 24px 16px 16px;background:var(--tgm-surface-raised);box-shadow:0 24px 70px rgba(0,0,0,.34)}
.suites-sheet__actions{display:flex;gap:10px;margin-top:16px}.suites-sheet__actions>*{flex:1}
.suites-review-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.suites-review-content>div{display:grid;gap:4px;padding:12px;border-radius:var(--tgm-radius-md);background:var(--tgm-surface-inset);border:1px solid var(--tgm-border-color)}
.suites-review-content span{font-size:.78rem;color:var(--tgm-text-muted)}
.suites-payment-form{display:grid;gap:14px;margin-top:16px}.suites-payment-form>label{display:grid;gap:6px;font-weight:800}
.suites-payment-methods{margin:0;padding:0;border:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.suites-payment-methods legend{grid-column:1/-1;margin-bottom:6px;font-weight:800}
.suites-payment-methods label{position:relative}.suites-payment-methods input{position:absolute;opacity:0;pointer-events:none}.suites-payment-methods span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface-inset);font-weight:800;cursor:pointer;text-align:center}
.suites-payment-methods input:checked+span{border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text)}
.suites-period-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.suites-period-button{min-height:40px;padding:8px 13px;border:1px solid var(--tgm-border-color);border-radius:999px;background:var(--tgm-surface-raised);color:var(--tgm-text);font:inherit;font-weight:800;cursor:pointer}.suites-period-button.is-active{border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text)}
.suites-period-secondary{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:8px 0}.suites-period-secondary[hidden]{display:none!important}.suites-period-secondary label{display:grid;gap:5px;min-width:145px;font-weight:700}.suites-period-label{margin:8px 0 12px;color:var(--tgm-text-muted);font-size:.86rem}
.suites-calendar-booking.is-clipped-start{border-inline-start-width:4px}.suites-calendar-booking.is-clipped-end{border-inline-end-width:4px}.suites-calendar-booking.is-clipped-start::before{content:"… ";font-weight:900}.suites-calendar-booking.is-clipped-end::after{content:" …";font-weight:900}
.suites-report-columns{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:var(--tgm-space-3);margin-top:var(--tgm-space-3)}
.suites-report-card{margin-top:var(--tgm-space-3);padding:var(--tgm-space-3);border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);background:var(--tgm-surface-raised)}.suites-report-card h3{margin:0 0 12px;font-size:1rem}
.suites-method-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
.suites-report-table{overflow:hidden;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-md)}.suites-report-table__row{display:grid;grid-template-columns:1fr .8fr .8fr 1.2fr;gap:8px;padding:10px 12px;border-bottom:1px solid var(--tgm-border-color);align-items:center}.suites-report-table__row:last-child{border-bottom:0}.suites-report-table__row.is-head{background:var(--tgm-surface-inset);font-size:.76rem;color:var(--tgm-text-muted);font-weight:800}
@media(min-width:720px){.suites-sheet{align-items:center}.suites-sheet__card{border-radius:24px}}
@media(max-width:900px){.suites-financial-grid,.suites-report-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.suites-report-columns{grid-template-columns:1fr}.suites-unit-card__actions{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){
  .suites-financial-grid,.suites-report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.suites-financial-grid .suites-financial-stat:first-child{grid-column:span 2}
  .suites-unit-card__actions{grid-template-columns:repeat(2,minmax(0,1fr))}.suites-unit-card__actions button{min-height:46px}
  .suites-payment-methods{grid-template-columns:repeat(2,minmax(0,1fr))}.suites-review-content{grid-template-columns:1fr}.suites-sheet{padding-inline:8px}.suites-sheet__card{padding:14px;border-radius:22px 22px 12px 12px}
  .suites-period-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.suites-period-button{width:100%}.suites-period-secondary>*{flex:1 1 130px}
  .suites-report-table__row{grid-template-columns:1fr .7fr .7fr 1fr;font-size:.8rem;padding-inline:8px}
}

/* 8.19.37 — Suites floors, safe checkout, pricing and sticky timeline. */
.suites-floor-card,.suites-floor-settings-card,.suites-pricing-floor,.suites-settings-card{padding:14px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);background:var(--tgm-surface-raised)}
.suites-floor-card__head,.suites-floor-settings-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.suites-floor-card__head strong,.suites-floor-settings-card__head strong{font-size:1rem}.suites-floor-card__head span,.suites-floor-settings-card__head span{color:var(--tgm-text-muted);font-size:.78rem}
.suites-room-chip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.suites-room-chip{display:grid;gap:3px;place-items:center;min-height:62px;padding:8px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-inset);color:var(--tgm-text);font:inherit;cursor:pointer}.suites-room-chip strong{font-size:1rem}.suites-room-chip small{font-size:.68rem;color:var(--tgm-text-muted)}.suites-room-chip.is-selected{border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text)}
.suites-room-chip--ready{border-color:color-mix(in srgb,var(--tgm-success-strong) 30%,var(--tgm-border-color))}.suites-room-chip--occupied{border-color:color-mix(in srgb,var(--tgm-danger-strong) 40%,var(--tgm-border-color));background:var(--status-danger-bg)}.suites-room-chip--checkout_pending{border-color:color-mix(in srgb,var(--tgm-warning-strong) 62%,var(--tgm-border-color));background:var(--status-warning-bg)}.suites-room-chip--reserved{border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft)}.suites-room-chip--needs_cleaning{border-color:color-mix(in srgb,var(--tgm-info-strong) 35%,var(--tgm-border-color));background:var(--status-info-bg)}.suites-room-chip--add{border-style:dashed;color:var(--tgm-accent-strong)}
.suites-settings-grid{display:grid;gap:14px}.suites-settings-floors,.suites-pricing-floors,.suites-access-people{display:grid;gap:10px}.suites-access-person{display:grid;gap:10px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-inset)}.suites-access-person>div:first-child{display:flex;justify-content:space-between;gap:10px}.suites-access-person span{color:var(--tgm-text-muted);font-size:.78rem}.suites-capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.suites-capability-grid label{display:flex;gap:7px;align-items:center;font-size:.8rem}
.suites-checkout-warning{display:grid;gap:4px;margin:10px 0;padding:12px;border:1px solid var(--tgm-warning-strong);border-radius:14px;background:var(--status-warning-bg);color:var(--tgm-text)}.suites-checkout-warning span{color:var(--tgm-text-muted);font-size:.84rem}.suites-unit-quick-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.suites-unit-timeline{display:grid;gap:8px;margin-top:12px}
.suites-month-number{display:inline-grid;place-items:center;min-width:34px;padding:3px 8px;border-radius:999px;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);font-weight:900}.suites-calendar-head{display:grid;gap:2px}.suites-calendar-head small{font-size:.66rem;color:var(--tgm-text-muted)}.suites-calendar-head strong{font-size:.8rem}
.suites-calendar-scroll{position:relative}.suites-calendar-unit-head,.suites-calendar-unit{position:sticky;inset-inline-start:0;z-index:5;box-shadow:4px 0 12px rgba(0,0,0,.08)}.suites-calendar-unit-head{z-index:7}.suites-calendar-grid{overflow:visible}.suites-calendar-scroll{border-radius:var(--tgm-radius-lg)}
@media(max-width:640px){.suites-room-chip-grid{grid-template-columns:repeat(4,minmax(58px,1fr));overflow-x:auto}.suites-room-chip{min-width:58px}.suites-capability-grid{grid-template-columns:1fr}.suites-floor-card,.suites-floor-settings-card,.suites-pricing-floor{padding:11px}.suites-unit-quick-actions{grid-template-columns:1fr 1fr}}
.suites-floor-settings-card>summary{cursor:pointer;list-style:none}.suites-floor-settings-card>summary::-webkit-details-marker{display:none}.suites-floor-settings-card[open]>summary{margin-bottom:10px}.suites-floor-settings-card:not([open])>summary{margin-bottom:0}.suites-access-person__head{display:flex;justify-content:space-between;gap:10px}.suites-access-role-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.suites-access-role-row .plain-input{flex:1 1 160px}.suites-pricing-global-actions{margin:8px 0 12px}.suites-checkout-warning strong:not(:first-child){margin-top:8px}.suites-checkout-warning span{display:block}
@media(max-width:640px){.suites-access-role-row>*{flex:1 1 140px}}

/* 8.19.38 — Registration, Suites booking flow, status cards and frozen calendar. */
.registration-card{width:min(860px,calc(100% - 24px));padding:clamp(18px,3.2vw,30px)}
.registration-card>h1{margin-block:6px 8px;font-size:clamp(1.75rem,5vw,2.45rem);line-height:1.2}
.registration-card>.verify-copy{max-width:42rem;margin-inline:auto;margin-bottom:18px;line-height:1.75}
.registration-form-v2{display:grid;gap:14px;text-align:start}
.registration-section,.registration-after-card{display:grid;gap:14px;padding:16px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);background:var(--tgm-surface-raised)}
.registration-section__head{display:flex;align-items:center;gap:10px;color:var(--tgm-text)}
.registration-section__head>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text)}
.registration-section__head>div{display:grid;gap:2px}.registration-section__head strong{font-size:1rem;color:var(--tgm-accent-soft-text)}.registration-section__head small{font-size:.76rem;color:var(--tgm-text-muted);font-weight:600}
.registration-section__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.registration-section__grid>label{display:grid;gap:6px;font-weight:800;color:var(--tgm-text)}.registration-full{grid-column:1/-1}
.registration-password-wrap{position:relative;display:block}.registration-password-wrap .plain-input{padding-inline-end:72px}.registration-password-toggle{position:absolute;inset-inline-end:8px;top:50%;transform:translateY(-50%);min-height:34px;padding:5px 9px;border:0;border-radius:9px;background:var(--tgm-surface-inset);color:var(--tgm-accent-soft-text);font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}
.registration-password-hint{color:var(--tgm-text-muted);line-height:1.5}.registration-after-card ol{display:grid;gap:8px;margin:0;padding-inline-start:22px;color:var(--tgm-text);line-height:1.55}.registration-after-card li::marker{color:var(--tgm-accent-soft-text);font-weight:900}
.registration-secret{display:grid;gap:10px;padding:14px;border:1px solid var(--tgm-accent-border);border-radius:var(--tgm-radius-lg);background:var(--tgm-accent-soft)}.registration-secret[hidden]{display:none!important}.registration-login-link{border:0;background:transparent;color:var(--tgm-text-muted);font:inherit;cursor:pointer;padding:6px}.registration-login-link strong{color:var(--tgm-accent-soft-text)}

.suites-stat{appearance:none;text-align:start;color:var(--tgm-text);font:inherit;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.suites-stat:hover{transform:translateY(-1px)}.suites-stat:focus-visible{outline:3px solid var(--tgm-focus-ring);outline-offset:2px}.suites-stat strong{display:block;margin-top:2px;font-variant-numeric:tabular-nums}.suites-stat--total{border-color:color-mix(in srgb,var(--tgm-accent) 46%,var(--tgm-border-color))}.suites-stat--total strong{color:var(--tgm-accent-soft-text)}.suites-stat--ready{border-color:color-mix(in srgb,var(--tgm-success) 58%,var(--tgm-border-color))}.suites-stat--ready strong{color:var(--tgm-success-strong)}.suites-stat--occupied{border-color:color-mix(in srgb,var(--tgm-info) 55%,var(--tgm-border-color))}.suites-stat--occupied strong{color:var(--tgm-info-strong)}.suites-stat--checkout_pending{border-color:color-mix(in srgb,var(--tgm-warning) 64%,var(--tgm-border-color));background:var(--status-warning-bg)}.suites-stat--checkout_pending strong{color:var(--tgm-warning-strong)}.suites-stat--reserved{border-color:color-mix(in srgb,var(--tgm-warning) 58%,var(--tgm-border-color))}.suites-stat--reserved strong{color:var(--tgm-warning-strong)}.suites-stat--needs_cleaning{border-color:color-mix(in srgb,var(--tgm-danger) 60%,var(--tgm-border-color))}.suites-stat--needs_cleaning strong{color:var(--tgm-danger-strong)}.suites-stat.is-active{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 10%,transparent),0 10px 24px rgba(0,0,0,.09)}

.suites-booking-form{display:grid;gap:14px}.suites-booking-section{display:grid;gap:13px;padding:15px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);background:var(--tgm-surface-raised)}.suites-booking-section__head{display:flex;align-items:center;gap:10px}.suites-booking-section__head>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:10px;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);font-weight:900}.suites-booking-section__head>div{display:grid;gap:2px}.suites-booking-section__head strong{font-size:1rem}.suites-booking-section__head small{color:var(--tgm-text-muted);font-size:.76rem;line-height:1.5}.suites-booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.suites-booking-grid>label,.suites-booking-section>label{display:grid;gap:6px;font-weight:800}.suites-booking-live-summary{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px}.suites-booking-live-summary>div{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface-inset)}.suites-booking-live-summary span{font-size:.72rem;color:var(--tgm-text-muted)}.suites-booking-live-summary strong{font-size:.9rem;font-variant-numeric:tabular-nums}.suites-available-floors{display:grid;gap:10px}.suites-available-floor{display:grid;gap:8px;padding:10px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-inset)}.suites-available-floor__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.suites-available-floor__head strong{font-size:.88rem}.suites-available-floor__head span{font-size:.72rem;color:var(--tgm-text-muted)}.suites-available-floor .suites-room-chip-grid{grid-template-columns:repeat(4,minmax(62px,1fr))}.suites-guest-match{min-height:0;margin-top:8px;color:var(--tgm-text-muted);font-size:.78rem}.suites-guest-match:empty{display:none}.suites-booking-total{display:grid;gap:10px;padding:13px;border:1px solid var(--tgm-accent-border);border-radius:15px;background:var(--tgm-accent-soft)}.suites-booking-total__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.suites-booking-total__summary>div{display:grid;gap:3px}.suites-booking-total span{font-size:.75rem;color:var(--tgm-text-muted)}.suites-booking-total strong{font-size:1.05rem}.suites-booking-total__override[hidden]{display:none!important}.suites-booking-total__override{display:grid;gap:6px}.suites-booking-form>.primary-button{min-height:50px}

.suites-calendar-scroll{overflow:visible;border-radius:0}.suites-calendar-board{display:grid;grid-template-columns:76px minmax(0,1fr);direction:rtl;width:100%;height:calc(64px + (var(--calendar-units, 0) * 72px));border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);overflow:hidden;background:var(--tgm-surface-raised)}.suites-calendar-fixed{z-index:4;display:grid;grid-template-rows:64px;grid-auto-rows:72px;background:var(--tgm-surface-raised);border-inline-end:1px solid var(--tgm-border-color);box-shadow:-8px 0 18px rgba(0,0,0,.08)}.suites-calendar-fixed__head{display:grid;place-items:center;padding:8px;background:var(--tgm-surface-inset);font-size:.78rem;font-weight:900;border-bottom:1px solid var(--tgm-border-color)}.suites-calendar-fixed__unit{appearance:none;display:grid;place-items:center;width:100%;padding:8px;border:0;border-bottom:1px solid var(--tgm-border-color);background:var(--tgm-surface-raised);color:var(--tgm-text);font:inherit;font-weight:900;cursor:pointer;touch-action:pan-y}.suites-calendar-fixed__unit:hover,.suites-calendar-fixed__unit:focus-visible{background:var(--tgm-surface-inset);color:var(--tgm-accent-soft-text)}.suites-calendar-timeline{min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;scrollbar-width:thin;direction:rtl}.suites-calendar-timeline-grid{position:relative;display:grid;grid-template-columns:repeat(var(--calendar-days),minmax(94px,1fr));grid-template-rows:64px;grid-auto-rows:72px;min-width:max(100%,calc(var(--calendar-days) * 94px));direction:rtl}.suites-calendar-timeline__head,.suites-calendar-timeline__cell{border-bottom:1px solid var(--tgm-border-color);border-inline-end:1px solid var(--tgm-border-color)}.suites-calendar-timeline__head{display:grid;place-items:center;gap:2px;padding:8px;background:var(--tgm-surface-inset);font-size:.76rem;font-weight:900;text-align:center}.suites-calendar-timeline__head small{font-size:.65rem;color:var(--tgm-text-muted)}.suites-calendar-timeline__cell{background:var(--tgm-surface-raised)}.suites-calendar-board .suites-calendar-booking{z-index:2;align-self:center;min-width:0;margin:8px 4px;pointer-events:auto}.suites-calendar-board .suites-calendar-booking[data-dragging="true"]{pointer-events:none}

@media(max-width:720px){.suites-calendar-board{height:calc(60px + (var(--calendar-units, 0) * 68px))}.registration-card{width:min(100% - 12px,860px);padding:16px 12px}.registration-section,.registration-after-card{padding:13px}.registration-section__grid{grid-template-columns:1fr}.registration-full{grid-column:auto}.registration-card>h1{font-size:1.8rem}.suites-booking-grid{grid-template-columns:1fr}.suites-booking-live-summary{grid-template-columns:96px minmax(0,1fr)}.suites-calendar-board{grid-template-columns:68px minmax(0,1fr)}.suites-calendar-fixed{grid-template-rows:60px;grid-auto-rows:68px}.suites-calendar-timeline-grid{grid-template-rows:60px;grid-auto-rows:68px;grid-template-columns:repeat(var(--calendar-days),minmax(90px,1fr));min-width:max(100%,calc(var(--calendar-days) * 90px))}}
/* 8.19.38 selector compatibility for the live booking/calendar renderers. */
.suites-availability-floor{display:grid;gap:8px;padding:10px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-inset)}
.suites-availability-floor__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.suites-availability-floor__head strong{font-size:.88rem}.suites-availability-floor__head span{font-size:.72rem;color:var(--tgm-text-muted)}
.suites-inline-hint{margin:0;color:var(--tgm-text-muted);font-size:.78rem}.suites-inline-hint[hidden]{display:none!important}
.suites-booking-total-card{display:grid;gap:4px;align-content:center;padding:10px 12px;border:1px solid var(--tgm-accent-border);border-radius:12px;background:var(--tgm-accent-soft)}.suites-booking-total-card span{font-size:.73rem;color:var(--tgm-text-muted)}.suites-booking-total-card strong{font-size:1.05rem;color:var(--tgm-accent-soft-text);font-variant-numeric:tabular-nums}
.suites-price-override-button{justify-self:start}.suites-price-override-field{display:grid;gap:6px;padding:12px;border:1px dashed var(--tgm-accent-border);border-radius:13px;background:color-mix(in srgb,var(--tgm-accent-soft) 62%,transparent);font-weight:800}.suites-price-override-field[hidden]{display:none!important}.suites-price-override-field small{color:var(--tgm-text-muted);font-weight:600}.suites-booking-section--secondary{background:color-mix(in srgb,var(--tgm-surface-raised) 86%,var(--tgm-surface-inset))}
.suites-booking-review-button{min-height:50px}
.suites-calendar-timeline-grid>.suites-calendar-head{display:grid;place-items:center;gap:2px;padding:8px;background:var(--tgm-surface-inset);font-size:.76rem;font-weight:900;text-align:center;border-bottom:1px solid var(--tgm-border-color);border-inline-end:1px solid var(--tgm-border-color)}
.suites-calendar-timeline-grid>.suites-calendar-cell{min-height:0;padding:0;background:var(--tgm-surface-raised);border-bottom:1px solid var(--tgm-border-color);border-inline-end:1px solid var(--tgm-border-color)}

/* 8.19.40 Suites stay details + extension flow */
.suites-extension-preview{display:grid;gap:12px;padding:14px;border:1px solid var(--tgm-border-color);border-radius:18px;background:var(--tgm-surface-soft)}
.suites-extension-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.suites-extension-metrics span{display:grid;gap:4px;padding:10px;border:1px solid var(--tgm-border-color);border-radius:14px}.suites-extension-metrics strong{font-size:1.05rem}
.suites-availability-ok{color:var(--tgm-success-text,#74d9a7);font-weight:800}.suites-availability-warning{color:var(--tgm-warning-text,#f0b86b);font-weight:700}
.suites-extension-unit-choice{display:grid;gap:10px}.suites-reservation-detail-card{max-height:min(84dvh,780px)}
.suites-reservation-detail{display:grid;gap:14px}.suites-detail-identity{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--tgm-border-color);border-radius:18px;background:var(--tgm-surface-soft)}.suites-detail-identity>div:last-child{display:grid;gap:4px}.suites-room-badge{display:grid;place-items:center;min-width:70px;min-height:52px;padding:8px 14px;border:1px solid color-mix(in srgb,var(--tgm-accent) 70%,var(--tgm-border-color));border-radius:16px;color:var(--tgm-accent);font-size:1.35rem;font-weight:900}
.suites-detail-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.suites-detail-dates article,.suites-detail-financial article{display:grid;gap:5px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:16px;background:var(--tgm-surface-soft)}.suites-detail-dates span,.suites-detail-financial span{font-size:.82rem;color:var(--tgm-text-muted)}
.suites-detail-financial{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.suites-detail-financial .is-total{border-color:color-mix(in srgb,var(--tgm-accent) 55%,var(--tgm-border-color))}.suites-detail-financial .is-paid{border-color:rgba(55,190,130,.6)}.suites-detail-financial .is-remaining{border-color:rgba(239,158,70,.7)}.suites-detail-financial .is-refund{border-color:rgba(220,90,105,.65)}
.suites-detail-section{display:grid;gap:9px}.suites-detail-section h3{margin:0;font-size:1rem}.suites-detail-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--tgm-border-color);border-radius:15px;background:var(--tgm-surface-soft)}.suites-detail-row>div{display:grid;gap:3px}.suites-detail-row span,.suites-detail-row small{color:var(--tgm-text-muted)}
.suites-stay-segments{display:grid;gap:9px}.suites-stay-segment{display:grid;gap:5px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:15px;background:var(--tgm-surface-soft)}.suites-stay-segment.is-current{border-color:color-mix(in srgb,var(--tgm-accent) 70%,var(--tgm-border-color))}.suites-stay-segment>div{display:flex;justify-content:space-between;gap:8px}.suites-stay-segment small{color:var(--tgm-accent)}.suites-detail-note{display:grid;gap:4px;padding:12px;border-radius:15px;background:rgba(239,158,70,.10);border:1px solid rgba(239,158,70,.45)}
@media(max-width:560px){.suites-detail-financial{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.suites-detail-financial article{padding:9px 7px}.suites-detail-financial strong{font-size:.9rem}.suites-detail-dates{grid-template-columns:1fr}.suites-extension-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 8.19.41 — Suites editable extension pricing + focused access editor. */
#suites-extension-amount-field{display:grid;gap:6px;padding:12px;border:1px solid var(--tgm-accent-border);border-radius:16px;background:color-mix(in srgb,var(--tgm-accent-soft) 52%,var(--tgm-surface-raised));font-weight:850}
#suites-extension-amount-field small{font-weight:600;line-height:1.55}
#suites-extension-amount:disabled{opacity:.72;cursor:not-allowed}
.suites-access-settings{display:grid;gap:14px}.suites-access-picker{position:relative;display:grid;gap:7px}.suites-access-picker>label{display:grid;gap:6px;font-weight:850}
.suites-access-search-results{position:absolute;z-index:12;inset-inline:0;top:100%;margin-top:6px;display:grid;gap:4px;max-height:280px;overflow:auto;padding:7px;border:1px solid var(--tgm-border-color);border-radius:16px;background:var(--tgm-surface-raised);box-shadow:0 18px 42px rgba(0,0,0,.22)}
.suites-access-search-results[hidden]{display:none!important}.suites-access-search-option{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:11px 12px;border:0;border-radius:12px;background:transparent;color:var(--tgm-text);font:inherit;text-align:start;cursor:pointer}.suites-access-search-option:hover,.suites-access-search-option:focus-visible{background:var(--tgm-surface-inset)}.suites-access-search-option small{color:var(--tgm-text-muted);font-size:.73rem}
.suites-access-editor{display:grid;gap:12px;padding:14px;border:1px solid var(--tgm-border-color);border-radius:18px;background:var(--tgm-surface-inset)}.suites-access-editor__head{display:flex;justify-content:space-between;align-items:center;gap:12px}.suites-access-editor__head h4{margin:2px 0 0;font-size:1.05rem}.suites-access-source{padding:5px 9px;border-radius:999px;border:1px solid var(--tgm-border-color);background:var(--tgm-surface-raised);color:var(--tgm-text-muted);font-size:.72rem;font-weight:850}.suites-access-source.is-role{border-color:var(--tgm-accent-border);color:var(--tgm-accent-soft-text)}.suites-access-source.is-personal{border-color:color-mix(in srgb,var(--tgm-success) 45%,var(--tgm-border-color));color:var(--tgm-success-strong)}
.suites-access-status{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-raised)}.suites-access-status.is-active{border-color:color-mix(in srgb,var(--tgm-success) 48%,var(--tgm-border-color))}.suites-access-status.is-inactive{border-color:color-mix(in srgb,var(--tgm-danger) 36%,var(--tgm-border-color))}.suites-access-status span{color:var(--tgm-text-muted);font-size:.78rem}.suites-access-role-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.suites-access-role-card label{display:grid;gap:6px;font-weight:800}.suites-access-note{padding:12px;border:1px solid var(--tgm-accent-border);border-radius:14px;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text)}
.suites-capability-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.suites-capability-group{display:grid;gap:8px;padding:11px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-raised)}.suites-capability-group>strong{font-size:.84rem;color:var(--tgm-accent-soft-text)}.suites-capability-item{display:flex;align-items:center;gap:8px;font-size:.8rem}.suites-access-editor__actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
@media(max-width:640px){.suites-access-role-card{grid-template-columns:1fr}.suites-capability-groups{grid-template-columns:1fr}.suites-access-editor__actions{grid-template-columns:1fr}.suites-access-search-option{align-items:flex-start;flex-direction:column;gap:3px}}

/* 8.19.42 — apartment action/archive separation + deterministic 3-up mobile filters. */
.suites-unit-archive-divider{height:1px;background:var(--border-color,rgba(128,128,128,.25));margin:20px 0 14px}
.suites-unit-archive-title{margin:0 0 10px;font-size:1rem}
.suites-period-toolbar--three{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.suites-period-toolbar--three .suites-period-button{width:100%;min-width:0}
.suites-period-toolbar--three .suites-period-button.is-active{background:var(--accent,#7c3aed);color:#fff;border-color:transparent}

/* 8.19.43 — device ledger sale consolidation */
.detail-actions--device{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.detail-actions--device>.management-action{width:100%;min-width:0;margin:0}
.detail-actions--device>.detail-actions__device-exception{grid-column:1/-1;display:grid;gap:3px;margin-top:8px;padding-top:14px;border-top:1px solid var(--tgm-border-color)}
.detail-actions__device-exception span{font-weight:900;color:var(--tgm-text)}
.detail-actions__device-exception small{color:var(--tgm-text-muted);font-size:.78rem}
.detail-actions--device>[data-action-key="device.stock.adjust"],.detail-actions--device>[data-action-key="device.product.archive"],.detail-actions--device>[data-action-key="device.product.restore"]{grid-column:1/-1}
.device-bulk-sale{display:grid;gap:12px}
.device-bulk-sale__heading>div{display:grid;gap:4px}.device-bulk-sale__heading small{color:var(--tgm-text-muted)}
.device-bulk-sale__list{display:grid;gap:10px;max-height:min(48vh,520px);overflow:auto;padding-inline-end:2px}
.device-bulk-sale__row{display:grid;gap:10px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-raised)}
.device-bulk-sale__row.is-selected{border-color:var(--tgm-accent-border);box-shadow:0 0 0 1px var(--tgm-accent-border)}
.device-bulk-sale__select{display:flex;gap:10px;align-items:center;cursor:pointer}.device-bulk-sale__select>span{display:grid;gap:2px}.device-bulk-sale__select small{color:var(--tgm-text-muted)}
.device-bulk-sale__controls{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(105px,.8fr) minmax(140px,1.2fr);gap:8px;align-items:end}
.device-bulk-sale__controls label{display:grid;gap:5px}.device-bulk-sale__controls label>span{font-size:.78rem;color:var(--tgm-text-muted);font-weight:800}
.device-bulk-sale__all{display:flex!important;align-items:center;gap:7px;min-height:44px;padding:0 8px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-sm)}
.device-bulk-sale__review{display:grid;gap:10px;padding:14px;border:1px solid var(--tgm-accent-border);border-radius:var(--tgm-radius-md);background:var(--tgm-accent-soft)}
.device-bulk-sale__review-list{display:grid;gap:8px}.device-bulk-sale__review-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--tgm-border-color)}
.device-bulk-sale__review-list>div:last-child{border-bottom:0}.device-bulk-sale__review-list span{display:grid;gap:2px}.device-bulk-sale__review-list small{color:var(--tgm-text-muted)}.device-bulk-sale__review p{margin:0;color:var(--tgm-text-muted);font-size:.82rem}
@media(max-width:640px){.device-bulk-sale__controls{grid-template-columns:1fr 1fr}.device-bulk-sale__controls label:last-child{grid-column:1/-1}.detail-actions--device{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* 8.19.43 — Suites calendar export follows the displayed range */
.suites-calendar-export-row{position:relative;display:flex;justify-content:flex-end;width:calc(50% - 6px);margin-right:auto;margin-left:0;margin-top:-2px}
.suites-export-button{appearance:none;border:1px solid var(--tgm-border-color);border-radius:999px;background:var(--tgm-surface-raised);color:var(--tgm-text-muted);font:inherit;font-size:.78rem;font-weight:850;padding:7px 12px;cursor:pointer}
.suites-export-button:hover,.suites-export-button:focus-visible{border-color:var(--tgm-accent-border);color:var(--tgm-accent-soft-text)}
.suites-export-options{position:absolute;z-index:12;top:calc(100% + 6px);left:0;display:flex;gap:6px;padding:6px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface-raised);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.suites-export-options[hidden]{display:none}.suites-export-options button{border:1px solid var(--tgm-border-color);border-radius:9px;background:var(--tgm-surface-inset);color:var(--tgm-text);padding:8px 12px;font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}
@media(max-width:640px){.suites-calendar-export-row{width:calc(50% - 5px)}}
.suites-notification-routes{display:grid;gap:10px;margin:12px 0}.suites-notification-route{display:grid;gap:8px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-raised)}.suites-notification-route__choices{display:flex;flex-wrap:wrap;gap:8px 14px}.suites-notification-route__choices label{display:flex;align-items:center;gap:7px;font-size:.86rem;font-weight:700}

/* 8.19.50: ended reservations keep the same card, with a red border only. */
.suites-calendar-booking.is-ended{border-color:#dc2626}
/* 8.19.53 Suites lifecycle archive */
.suites-archive-view .panel__heading{align-items:flex-start}.suites-archive-controls--polished{display:grid;grid-template-columns:minmax(150px,1fr) minmax(260px,1.6fr) repeat(2,minmax(140px,1fr)) auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-lg);background:var(--tgm-surface-inset)}
.suites-archive-controls--polished label{display:grid;gap:6px;color:var(--tgm-text-muted);font-size:.78rem;font-weight:800}.suites-period-toolbar--archive{margin:0;align-self:end}.suites-archive-timeline{display:grid;gap:10px;margin-top:14px;position:relative}.suites-archive-timeline:before{content:"";position:absolute;inset-block:8px;inset-inline-end:13px;width:2px;background:var(--tgm-border-color);opacity:.7}.suites-archive-event{position:relative;display:grid;gap:5px;width:100%;padding:14px 38px 14px 14px;border:1px solid var(--tgm-border-color);border-radius:16px;background:var(--tgm-surface-raised);color:var(--tgm-text);text-align:start;font:inherit;cursor:pointer}.suites-archive-event:before{content:"";position:absolute;inset-inline-end:8px;inset-block-start:19px;width:12px;height:12px;border:3px solid var(--tgm-surface-raised);border-radius:50%;background:var(--tgm-accent)}.suites-archive-event:hover{border-color:var(--tgm-accent-border);transform:translateY(-1px)}.suites-archive-event__type{justify-self:start;padding:4px 9px;border-radius:999px;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);font-size:.72rem;font-weight:900}.suites-archive-event strong{font-size:.95rem}.suites-archive-event small{color:var(--tgm-text-muted);line-height:1.6}.suites-unit-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.suites-archive-controls--polished{grid-template-columns:1fr 1fr}.suites-archive-controls--polished .suites-period-toolbar{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}.suites-archive-controls--polished>.primary-button{grid-column:1/-1}.suites-archive-event{padding:12px 34px 12px 12px}}

/* 8.19.54 Suites lifecycle correction */
.suites-upcoming-row--interactive{width:100%;border:0;border-bottom:1px solid var(--tgm-border-color);background:transparent;color:var(--tgm-text);text-align:start;cursor:pointer}.suites-upcoming-row--interactive:hover,.suites-upcoming-row--interactive:focus-visible{background:var(--tgm-surface-inset);outline:2px solid transparent}.suites-sheet__actions--booking{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tgm-space-2)}@media(max-width:520px){.suites-sheet__actions--booking{grid-template-columns:1fr 1fr}}


/* 8.19.55 — Suites upcoming booking cards + cancellation UX polish */
.suites-upcoming-list{gap:12px}
.suites-upcoming-card{display:grid;gap:11px;width:100%;padding:13px;border:1px solid var(--tgm-border-color);border-radius:18px;background:var(--tgm-surface-raised);color:var(--tgm-text);text-align:start;font:inherit;cursor:pointer;box-shadow:0 1px 0 color-mix(in srgb,var(--tgm-border-color) 55%,transparent);transition:border-color .16s ease,background .16s ease,transform .16s ease}
.suites-upcoming-card:hover,.suites-upcoming-card:focus-visible{border-color:var(--tgm-accent-border);background:color-mix(in srgb,var(--tgm-surface-raised) 94%,var(--tgm-accent) 6%);outline:none;transform:translateY(-1px)}
.suites-upcoming-card__head{display:flex;align-items:center;gap:11px;min-width:0}.suites-upcoming-card__room{display:grid;place-items:center;flex:0 0 58px;min-height:52px;border:1px solid var(--tgm-accent-border);border-radius:15px;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);font-size:1.05rem;font-weight:950}.suites-upcoming-card__guest{display:grid;gap:2px;min-width:0}.suites-upcoming-card__guest strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.98rem}.suites-upcoming-card__guest small{color:var(--tgm-text-muted);font-size:.8rem;text-align:start;direction:ltr}
.suites-upcoming-card__dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.suites-upcoming-card__dates>span{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface-inset)}.suites-upcoming-card__dates small{color:var(--tgm-text-muted);font-size:.68rem;font-weight:800}.suites-upcoming-card__dates strong{font-size:.78rem;line-height:1.45;font-variant-numeric:tabular-nums}
.suites-upcoming-card__footer{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:9px;padding-top:2px}.suites-upcoming-card__footer span{color:var(--tgm-text-muted);font-size:.76rem;font-weight:800}.suites-upcoming-card__footer strong{padding:6px 9px;border:1px solid var(--tgm-border-color);border-radius:10px;background:var(--tgm-surface-inset);font-size:.9rem}.suites-upcoming-card__footer b{color:var(--tgm-accent);font-size:1rem}

.danger-button{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 var(--tgm-space-4);border:1px solid var(--tgm-danger-border);border-radius:var(--tgm-radius-md);background:var(--tgm-danger-soft);color:var(--tgm-danger);font:inherit;font-weight:850;cursor:pointer;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tgm-danger) 7%,transparent);transition:transform .16s ease,background .16s ease,border-color .16s ease}
.danger-button:hover,.danger-button:focus-visible{background:color-mix(in srgb,var(--tgm-danger-soft) 82%,var(--tgm-danger) 18%);border-color:color-mix(in srgb,var(--tgm-danger-border) 62%,var(--tgm-danger) 38%);outline:none}.danger-button:active{transform:scale(.99)}.danger-button:disabled{opacity:.55;cursor:not-allowed}
html[data-design-system="central-v2"] .danger-button{background:var(--tgm-danger-soft);color:var(--tgm-danger);border-color:var(--tgm-danger-border)}

.suites-cancel-card{max-height:min(90dvh,820px);scroll-padding-block:84px 170px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.suites-cancel-form{gap:14px}.suites-cancel-form>label{display:grid;gap:7px;font-weight:850}.suites-cancel-form textarea{min-height:118px;resize:vertical}.suites-cancel-form .plain-input.is-invalid{border-color:var(--tgm-danger)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--tgm-danger) 18%,transparent)!important}.suites-form-error{padding:10px 12px;border:1px solid var(--tgm-danger-border);border-radius:12px;background:var(--tgm-danger-soft);color:var(--tgm-danger);font-size:.82rem;font-weight:850;line-height:1.55}.suites-form-error[hidden]{display:none!important}#suites-cancel-review{padding:12px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-inset)}#suites-cancel-confirm{min-height:52px;font-size:.98rem}
@media(max-width:640px){.suites-upcoming-card{padding:11px;border-radius:16px}.suites-upcoming-card__room{flex-basis:54px;min-height:48px}.suites-upcoming-card__dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.suites-upcoming-card__dates>span{padding:8px}.suites-upcoming-card__dates strong{font-size:.72rem}.suites-upcoming-card__footer{grid-template-columns:1fr auto auto}.suites-cancel-card{max-height:calc(100dvh - 18px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding-bottom:max(18px,env(safe-area-inset-bottom));scroll-padding-bottom:190px}#suites-cancel-sheet{padding:8px 8px max(8px,env(safe-area-inset-bottom))}}
@media(max-width:390px){.suites-upcoming-card__guest strong{font-size:.92rem}.suites-upcoming-card__dates strong{font-size:.68rem}.suites-upcoming-card__footer strong{font-size:.84rem}}

/* 8.19.58 — compact outstanding-balance cards */
.suites-outstanding-record{gap:9px}
.suites-outstanding-record__head{display:flex;align-items:center;gap:9px;min-width:0}
.suites-outstanding-record__head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.suites-outstanding-record__unit{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:5px 10px;border:1px solid var(--tgm-accent-border);border-radius:999px;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text)!important;font-size:.78rem!important;font-weight:900}
.suites-outstanding-record__dates,.suites-outstanding-record__money{display:flex;gap:7px;flex-wrap:wrap}
.suites-outstanding-record__dates>span,.suites-outstanding-record__money>span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--tgm-border-color);border-radius:10px;background:var(--tgm-surface-inset);color:var(--tgm-text-muted);font-size:.78rem}
.suites-outstanding-record__dates strong,.suites-outstanding-record__money strong{color:var(--tgm-text);font-size:.82rem}
.suites-outstanding-record__money .is-remaining{border-color:color-mix(in srgb,var(--tgm-warning,#f59e0b) 55%,var(--tgm-border-color));color:var(--tgm-text)}
@media(max-width:520px){.suites-outstanding-record__dates>span{flex:1 1 calc(50% - 4px);justify-content:center}.suites-outstanding-record__money{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.suites-outstanding-record__money>span{justify-content:center;min-width:0;padding-inline:5px}.suites-outstanding-record__money strong{white-space:nowrap;font-size:.78rem}}

/* 8.19.60 Suites centralized booking reminder center */
.suites-reminder-center{display:grid;gap:12px}.suites-reminder-timing,.suites-reminder-delivery-log{display:grid;gap:8px}.suites-reminder-group-card,.suites-reminder-collapsible,.suites-notification-group{border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-inset);overflow:hidden}.suites-reminder-group-card>summary,.suites-reminder-collapsible>summary,.suites-notification-group>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px}.suites-reminder-group-card>summary::-webkit-details-marker,.suites-reminder-collapsible>summary::-webkit-details-marker,.suites-notification-group>summary::-webkit-details-marker{display:none}.suites-reminder-group-card__head>div,.suites-reminder-collapsible>summary>div{display:grid;gap:2px}.suites-reminder-group-card__head small,.suites-reminder-collapsible summary small{color:var(--tgm-text-muted);font-size:.74rem;font-weight:600}.suites-reminder-group-card__head>span,.suites-reminder-collapsible>summary>span,.suites-notification-group>summary>span{color:var(--tgm-text-muted);font-size:.76rem;font-weight:800}.suites-reminder-group-card[open]>.suites-reminder-group-card__head,.suites-reminder-collapsible[open]>summary,.suites-notification-group[open]>summary{border-bottom:1px solid var(--tgm-border-color)}.suites-reminder-group-card__body,.suites-notification-group__body{display:grid;gap:8px;padding:10px}.suites-reminder-collapsible>.suites-notification-routes,.suites-reminder-collapsible>.suites-reminder-delivery-log{padding:10px;margin:0}.suites-reminder-collapsible>button{margin:0 10px 10px;width:calc(100% - 20px)}.suites-reminder-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--tgm-border-color);border-radius:11px;background:var(--tgm-surface-raised)}.suites-reminder-row__toggle{display:flex;align-items:center;gap:8px;font-weight:800}.suites-reminder-row__time{display:flex;align-items:center;gap:6px}.suites-reminder-row__time .plain-input{width:82px;min-width:0;padding:8px}.suites-reminder-row__time select.plain-input{width:86px}.suites-reminder-log-row{display:flex;justify-content:space-between;gap:10px;padding:10px 11px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface-raised)}.suites-reminder-log-row>div{display:grid;gap:3px}.suites-reminder-log-row>div:last-child{text-align:left;justify-items:end}.suites-reminder-log-row span{font-size:.76rem;color:var(--tgm-text-muted)}.suites-reminder-log-row b{font-size:.76rem}.suites-reminder-log-row--failed b{color:var(--tgm-danger)}.suites-reminder-log-row--sent b{color:var(--tgm-success)}
@media(max-width:640px){.suites-reminder-group-card__head{align-items:flex-start;flex-direction:column}.suites-reminder-row{align-items:flex-start;flex-direction:column}.suites-reminder-row__time{width:100%}.suites-reminder-row__time .plain-input{flex:1}.suites-reminder-log-row{display:grid}.suites-reminder-log-row>div:last-child{text-align:right;justify-items:start}}

/* 8.19.62 — Compact Suites “now” operational summary. */
.suites-workspace .suites-stats{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;overflow:visible;margin-bottom:12px;padding-bottom:0}
.suites-workspace .suites-stat{flex:0 1 160px;min-width:120px;padding:10px 12px;border-radius:14px}
.suites-stat--needs_action{border-color:color-mix(in srgb,var(--tgm-warning) 64%,var(--tgm-border-color));background:color-mix(in srgb,var(--status-warning-bg) 70%,var(--tgm-surface-raised))}
.suites-stat--needs_action strong{color:var(--tgm-warning-strong)}
@media(max-width:720px){.suites-workspace .suites-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible}.suites-workspace .suites-stat{min-width:0;width:auto;padding:10px 8px}.suites-workspace .suites-stat span{white-space:normal;line-height:1.35}}

/* 8.19.63 — Stable three-card Suites summary; zero values stay visible but quiet. */
.suites-workspace .suites-stat.is-zero{opacity:.72}
.suites-workspace .suites-stat--needs_action.is-zero{border-color:var(--tgm-border-color);background:var(--tgm-surface-raised)}
.suites-workspace .suites-stat--needs_action.is-zero strong{color:var(--tgm-text-muted)}

/* 8.19.67 — Account compact disclosure rows + Suites reservation note */
.account-page--compact {
  display: grid;
  gap: 10px;
  max-width: 980px;
  margin-inline: auto;
}
.account-compact-row {
  border: 1px solid var(--tgm-border-color);
  border-radius: 16px;
  background: var(--tgm-surface);
  box-shadow: var(--tgm-shadow-sm);
  overflow: clip;
}
.account-compact-row > summary {
  list-style: none;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 11px;
  min-height: 68px;
  padding: 10px 13px;
  cursor: pointer;
  user-select: none;
}
.account-compact-row > summary::-webkit-details-marker { display: none; }
.account-compact-row > summary:hover { background: var(--tgm-surface-soft); }
.account-compact-row > summary:focus-visible {
  outline: 3px solid var(--tgm-focus-ring);
  outline-offset: -3px;
}
.account-compact-row__icon {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: color-mix(in srgb, var(--tgm-accent) 10%, var(--tgm-surface-soft));
  color: var(--tgm-accent);
  font-size: 1.08rem;
}
.account-compact-row__copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.account-compact-row__copy strong {
  color: var(--tgm-text);
  font-size: .96rem;
  line-height: 1.35;
}
.account-compact-row__copy small {
  overflow: hidden;
  color: var(--tgm-text-muted);
  font-size: .78rem;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account-compact-row__chevron {
  display: grid;
  place-items: center;
  color: var(--tgm-text-muted);
  font-size: 1.05rem;
  transition: transform var(--tgm-motion-fast, 160ms) ease;
}
.account-compact-row[open] > summary {
  border-bottom: 1px solid var(--tgm-border-color);
  background: var(--tgm-surface-soft);
}
.account-compact-row[open] .account-compact-row__chevron { transform: rotate(180deg); }
.account-compact-row__body {
  display: grid;
  gap: 10px;
  padding: 12px;
}
.account-compact-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.account-compact-fact {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 11px;
  border: 1px solid var(--tgm-border-color);
  border-radius: 13px;
  background: var(--tgm-surface-soft);
}
.account-compact-fact > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}
.account-compact-fact span,
.account-compact-fact small {
  color: var(--tgm-text-muted);
  font-size: .74rem;
  line-height: 1.35;
}
.account-compact-fact strong {
  overflow-wrap: anywhere;
  color: var(--tgm-text);
  font-size: .9rem;
  line-height: 1.4;
}
.account-compact-fact--wide { grid-column: 1 / -1; }
@media (max-width: 760px) {
  .account-compact-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.account-compact-edit {
  flex: 0 0 auto;
  min-height: 34px;
  padding-inline: 10px;
  border: 1px solid var(--tgm-border-color);
  border-radius: 10px;
  background: var(--tgm-surface);
  color: var(--tgm-accent);
  font: inherit;
  font-size: .76rem;
  font-weight: 800;
  cursor: pointer;
}
.account-compact-row__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.account-compact-row__actions .account-action-button {
  min-height: 38px;
}
.account-page--compact .account-profile-avatar-card {
  grid-template-columns: 64px minmax(0, 1fr) auto;
  gap: 11px;
  margin: 0;
  padding: 10px 11px;
  border-radius: 14px;
  box-shadow: none;
}
.account-page--compact .account-profile-avatar-button {
  width: 60px;
  height: 60px;
  border-radius: 17px;
  font-size: 1rem;
}
.account-page--compact .account-profile-avatar-card > div span { font-size: .78rem; }
.account-activity-list { display: grid; gap: 7px; }
.account-activity-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 48px;
  padding: 9px 11px;
  border: 1px solid var(--tgm-border-color);
  border-radius: 12px;
  background: var(--tgm-surface-soft);
}
.account-activity-item > div { display: grid; gap: 3px; }
.account-activity-item strong { font-size: .86rem; }
.account-activity-item small { color: var(--tgm-text-muted); font-size: .75rem; }
.suites-detail-note {
  display: grid;
  gap: 5px;
  padding: 12px 13px;
  border: 1px solid var(--tgm-border-color);
  border-radius: 15px;
  background: var(--tgm-surface-soft);
}
.suites-detail-note span {
  color: var(--tgm-text-muted);
  line-height: 1.6;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.suites-detail-note--reservation {
  border-color: color-mix(in srgb, var(--tgm-accent) 42%, var(--tgm-border-color));
  background: color-mix(in srgb, var(--tgm-accent) 5%, var(--tgm-surface));
}
@media (max-width: 620px) {
  .account-page--compact { gap: 8px; }
  .account-compact-row > summary {
    grid-template-columns: 38px minmax(0, 1fr) 20px;
    gap: 9px;
    min-height: 62px;
    padding: 9px 10px;
  }
  .account-compact-row__icon { width: 36px; height: 36px; border-radius: 12px; }
  .account-compact-row__body { padding: 10px; }
  .account-compact-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .account-page--compact .account-profile-avatar-card {
    grid-template-columns: 56px minmax(0, 1fr);
  }
  .account-page--compact .account-profile-avatar-button { width: 52px; height: 52px; border-radius: 15px; }
  .account-page--compact .account-profile-avatar-card > .account-action-button {
    grid-column: 1 / -1;
    width: 100%;
  }
  .account-compact-row__actions { display: grid; grid-template-columns: 1fr; }
  .account-compact-row__actions .account-action-button { width: 100%; }
}
@media (max-width: 360px) {
  .account-compact-facts { grid-template-columns: 1fr; }
}

/* 8.19.75 — Account final compact polish */
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header {
  min-height: 44px;
  padding: 4px 2px 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header::before { display: none; }
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header > div:first-child {
  position: relative;
  width: 100%;
  min-height: 40px;
  display: grid;
  place-items: center;
  padding: 0 84px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header .section-kicker {
  display: block;
  margin: 0;
  color: var(--tgm-text);
  opacity: 1;
  font-size: .9rem;
  font-weight: 900;
  letter-spacing: 0;
  text-align: center;
}
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header h2,
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header p,
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header .readonly-pill { display: none !important; }
html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header .section-back.is-central-back {
  display: inline-flex !important;
  position: absolute;
  inset-inline-start: 2px;
  top: 2px;
  z-index: 2;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: .8rem;
}
.account-page--compact { gap: 8px; }
.account-page--compact .account-hero-card {
  margin-top: 0;
  padding: 17px 18px;
  border: 1px solid color-mix(in srgb, var(--tgm-accent) 62%, var(--tgm-border-color));
  border-radius: 22px;
  box-shadow: 0 9px 26px rgba(7,12,25,.08);
  background: color-mix(in srgb, var(--tgm-surface) 96%, var(--tgm-accent) 4%);
}
.account-page--compact .account-hero-card__content { gap: 8px; }
.account-page--compact .account-hero-card__name { margin: 0; font-size: clamp(1.3rem, 5vw, 1.75rem); line-height: 1.2; }
.account-page--compact .account-hero-card__facts { margin-top: 4px; }
.account-activity-access-card {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 0;
  padding: 10px 12px;
  border: 1px solid var(--tgm-border-color);
  border-radius: 13px;
  background: var(--tgm-surface-soft);
}
.account-activity-access-card > div { min-width: 0; display: grid; gap: 3px; padding-inline: 12px; }
.account-activity-access-card > div + div { border-inline-start: 1px solid var(--tgm-border-color); }
.account-activity-access-card span { color: var(--tgm-text-muted); font-size: .74rem; }
.account-activity-access-card strong { color: var(--tgm-text); font-size: .92rem; }
.account-compact-row__actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.account-compact-row__actions .account-action-button { width: 100%; min-width: 0; }
@media (max-width: 620px) {
  .account-page--compact .account-hero-card { padding: 14px 15px; gap: 12px; border-radius: 20px; }
  .account-page--compact .account-hero-card__avatar { width: 78px; height: 78px; }
  .account-page--compact .account-hero-card__facts > div { padding-inline: 10px; }
  .account-compact-row__actions { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
}
@media (max-width: 360px) {
  html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header > div:first-child { padding-inline: 70px; }
  .account-activity-access-card { grid-template-columns: 1fr; gap: 8px; }
  .account-activity-access-card > div { padding: 0; }
  .account-activity-access-card > div + div { border-inline-start: 0; border-top: 1px solid var(--tgm-border-color); padding-top: 8px; }
  .account-compact-row__actions { grid-template-columns: 1fr; }
}

/* 8.19.76 — Premium Central Responsive Layout Foundation
   --------------------------------------------------------------------------
   One viewport-driven layout grammar for mobile, tablet, laptop and wide
   desktop. Pages opt in with .tgm-responsive-page so the foundation can be
   rolled out safely without changing stable pages all at once. */
:root {
  --tgm-layout-gutter-mobile: 12px;
  --tgm-layout-gutter-tablet: 20px;
  --tgm-layout-gutter-desktop: 28px;
  --tgm-layout-gap-compact: 8px;
  --tgm-layout-gap-regular: 12px;
  --tgm-layout-gap-roomy: 16px;
  --tgm-layout-focus-mobile: 100%;
  --tgm-layout-focus-tablet: 920px;
  --tgm-layout-focus-desktop: 1180px;
  --tgm-layout-focus-wide: 1280px;
}

.tgm-responsive-page {
  width: 100%;
  min-width: 0;
  max-width: var(--tgm-layout-focus-desktop);
  margin-inline: auto;
}

/* Account is the 8.19.76 reference implementation. */
.account-page--compact.tgm-responsive-page {
  width: 100%;
  max-width: var(--tgm-layout-focus-desktop);
  margin-inline: auto;
  gap: var(--tgm-layout-gap-regular);
}

/* Desktop/laptop: use the available work area instead of rendering a phone
   column in the middle of the screen. Collapsed sections form a balanced
   two-column composition; an opened section expands to the full work width. */
@media (min-width: 1100px) {
  .account-page--compact.tgm-responsive-page {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--tgm-layout-gap-roomy);
    row-gap: var(--tgm-layout-gap-regular);
  }
  .account-page--compact.tgm-responsive-page > .account-hero-card {
    grid-column: 1 / -1;
    width: min(100%, 760px);
    justify-self: center;
  }
  .account-page--compact.tgm-responsive-page > .account-compact-row[open] {
    grid-column: 1 / -1;
  }
  .account-page--compact.tgm-responsive-page > .account-compact-row:last-child {
    grid-column: 1 / -1;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header > div:first-child {
    max-width: var(--tgm-layout-focus-desktop);
    margin-inline: auto;
  }
}

/* Tablet / iPad portrait and split-view: keep one readable primary column,
   but use substantially more of the available width than the phone layout. */
@media (min-width: 768px) and (max-width: 1099px) {
  .account-page--compact.tgm-responsive-page {
    max-width: var(--tgm-layout-focus-tablet);
    gap: var(--tgm-layout-gap-regular);
  }
  .account-page--compact.tgm-responsive-page > .account-hero-card {
    width: min(100%, 760px);
    justify-self: center;
  }
}

/* Phones: full-width composition inside the central page gutter. There is no
   narrow max-width phone column; the actual viewport determines the width. */
@media (max-width: 767px) {
  .account-page--compact.tgm-responsive-page {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    gap: var(--tgm-layout-gap-compact);
  }
  .account-page--compact.tgm-responsive-page > .account-hero-card,
  .account-page--compact.tgm-responsive-page > .account-compact-row {
    width: 100%;
    max-width: none;
  }
}

/* Very small phones retain the same full-width shell while allowing internal
   facts/actions to fall back to one column through the existing safeguards. */
@media (max-width: 359px) {
  :root { --tgm-layout-gutter-mobile: 9px; }
}

/* Wide desktops get a little more breathing room but never stretch into an
   unstructured full-monitor canvas. */
@media (min-width: 1600px) {
  .account-page--compact.tgm-responsive-page {
    max-width: var(--tgm-layout-focus-wide);
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="account"] .section-hero.page-header > div:first-child {
    max-width: var(--tgm-layout-focus-wide);
  }
}

/* 8.19.77 — Activity-aware People Directory */
.activity-badge-list {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: center;
}
.activity-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.75rem;
  padding: 0.2rem 0.6rem;
  border-radius: 999px;
  border: 1px solid var(--line, rgba(148, 163, 184, 0.28));
  background: rgba(148, 163, 184, 0.08);
  font-size: 0.78rem;
  font-weight: 800;
  white-space: nowrap;
}
.activity-badge[data-activity="techguys"] {
  border-color: rgba(139, 92, 246, 0.4);
  background: rgba(139, 92, 246, 0.12);
}
.activity-badge[data-activity="suites_in"] {
  border-color: rgba(34, 197, 94, 0.38);
  background: rgba(34, 197, 94, 0.1);
}
.people-classification-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.8rem;
  padding: 0.22rem 0.62rem;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.1);
  border: 1px solid var(--line, rgba(148, 163, 184, 0.28));
  font-weight: 800;
  white-space: nowrap;
}


/* 8.19.78 — compact activity team directory. The activity view is intentionally
   lighter than the central employee directory: identity + activity role + access. */
.suites-team-summary {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-block-end: 0.8rem;
}
.suites-team-summary__compact {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  min-height: 2.4rem;
  padding: 0.45rem 0.8rem;
  border-radius: 999px;
  border: 1px solid var(--line, rgba(148, 163, 184, 0.28));
  background: rgba(139, 92, 246, 0.08);
}
.suites-team-summary__compact small { color: var(--muted); }
.suites-team-summary__compact strong { font-size: 0.95rem; }
.suites-team-grid {
  display: grid;
  gap: 0.55rem;
}
.suites-team-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(170px, 0.42fr) minmax(110px, 0.24fr);
  align-items: center;
  gap: 0.85rem;
  padding: 0.75rem 0.9rem;
  border-radius: 0.95rem;
  border: 1px solid var(--line, rgba(148, 163, 184, 0.28));
  background: rgba(148, 163, 184, 0.045);
}
.suites-team-row.is-interactive { cursor: pointer; transition: border-color 120ms ease, background 120ms ease, transform 120ms ease; }
.suites-team-row.is-interactive:hover { border-color: rgba(139, 92, 246, 0.48); background: rgba(139, 92, 246, 0.07); }
.suites-team-row.is-interactive:focus-visible { outline: 3px solid var(--tgm-focus-ring); outline-offset: 2px; }
.suites-team-row__identity {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.7rem;
}
.suites-team-row__identity > div:last-child { min-width: 0; display: grid; gap: 0.12rem; }
.suites-team-row__identity strong { font-size: 0.98rem; overflow-wrap: anywhere; }
.suites-team-row__identity span { color: var(--muted); font-size: 0.82rem; overflow-wrap: anywhere; }
.suites-team-row__cell,
.suites-team-row__status { min-width: 0; display: grid; gap: 0.12rem; }
.suites-team-row__cell small,
.suites-team-row__status small { color: var(--muted); font-size: 0.76rem; }
.suites-team-row__cell strong,
.suites-team-row__status strong { font-size: 0.9rem; overflow-wrap: anywhere; }
.suites-team-row__status strong { color: var(--success, #16a34a); }

@media (max-width: 720px) {
  .suites-team-summary { margin-block-end: 0.65rem; }
  .suites-team-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.6rem 0.7rem;
    padding: 0.75rem;
  }
  .suites-team-row__identity { grid-column: 1 / -1; }
  .suites-team-row__cell { grid-column: 1; }
  .suites-team-row__status { grid-column: 2; text-align: end; }
}
@media (max-width: 380px) {
  .suites-team-row { grid-template-columns: 1fr; }
  .suites-team-row__identity,
  .suites-team-row__cell,
  .suites-team-row__status { grid-column: 1; text-align: start; }
}

/* 8.19.78 — employee activity classification is a compact filter, not a row of KPI cards. */
html[data-design-system="central-v2"] .section-workspace[data-section="employees"] .people-group-chips {
  flex: 1 1 520px;
  align-items: center;
  gap: 0.45rem;
}
html[data-design-system="central-v2"] .section-workspace[data-section="employees"] .people-group-chips .chip {
  min-height: 2.35rem;
  padding-inline: 0.85rem;
  font-weight: 800;
}
@media (max-width: 720px) {
  html[data-design-system="central-v2"] .section-workspace[data-section="employees"] .people-group-chips {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    padding-block-end: 0.15rem;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="employees"] .people-group-chips::-webkit-scrollbar { display: none; }
  html[data-design-system="central-v2"] .section-workspace[data-section="employees"] .people-group-chips .chip {
    width: auto;
    flex: 0 0 auto;
    min-width: max-content;
  }
}

/* 8.19.79 — grouped people directory cards. Keep one employee identity in Core,
   but give each operational population a visually distinct home in the directory. */
.section-table-card[data-table-title="الإدارة العامة"] {
  border-inline-start: 3px solid var(--violet, #8b5cf6);
}
.section-table-card[data-table-title="فريق تك قايز"] {
  border-inline-start: 3px solid var(--blue, #2f6feb);
}
.section-table-card[data-table-title="فريق سويتس ان"] {
  border-inline-start: 3px solid var(--green, #12b76a);
}
.section-table-card[data-table-title="الموظفون السابقون"] {
  opacity: .96;
}


/* 8.19.80 — Suites stay-duration clarity. Exact stay length is derived from the
   reservation dates; monthly bookings keep the business meaning and exact 30-night value. */
.suites-upcoming-card__guest .suites-upcoming-card__phone{color:color-mix(in srgb,var(--tgm-text) 88%,var(--tgm-text-muted));font-size:.82rem;font-weight:800;letter-spacing:.01em}
.suites-upcoming-card__dates{grid-template-columns:minmax(0,1fr) minmax(78px,.55fr) minmax(0,1fr)}
.suites-upcoming-card__dates>.suites-upcoming-card__duration{align-content:center;text-align:center;border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft)}
.suites-upcoming-card__duration small{color:var(--tgm-accent-soft-text)}
.suites-upcoming-card__duration strong{color:var(--tgm-accent-soft-text);font-size:.82rem;white-space:nowrap}
.suites-detail-phone{color:color-mix(in srgb,var(--tgm-text) 90%,var(--tgm-text-muted));font-weight:800;font-size:.88rem}
.suites-detail-booking-meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(max-width:640px){.suites-upcoming-card__dates{grid-template-columns:minmax(0,1fr) minmax(70px,.5fr) minmax(0,1fr);gap:6px}.suites-upcoming-card__dates>span{padding:7px 6px}.suites-upcoming-card__dates strong{font-size:.66rem;white-space:nowrap}.suites-upcoming-card__duration strong{font-size:.72rem}.suites-detail-booking-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}}
@media(max-width:370px){.suites-upcoming-card__dates{grid-template-columns:1fr 1fr}.suites-upcoming-card__duration{grid-column:1/-1;grid-row:2;padding:6px!important}.suites-upcoming-card__duration strong{font-size:.76rem}}

/* 8.19.81 — Suites customer modal, actual-stay clarity, and apartment record hierarchy. */
.suites-upcoming-card__guest .suites-upcoming-card__phone{
  display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;
  color:var(--tgm-text-muted);font-size:.8rem;font-weight:700;letter-spacing:0
}
.suites-upcoming-card__phone>span{font-size:.72rem;opacity:.72}
.suites-upcoming-card__phone>b{color:color-mix(in srgb,var(--tgm-text) 92%,var(--tgm-text-muted));font-size:.86rem;font-weight:900;white-space:nowrap}
.suites-upcoming-card__dates>.suites-upcoming-card__duration{
  align-content:center;text-align:center;border-color:var(--tgm-border-color);
  background:color-mix(in srgb,var(--tgm-surface-inset) 94%,var(--tgm-accent) 6%);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--tgm-accent) 10%,transparent)
}
.suites-upcoming-card__duration small{color:var(--tgm-text-muted)}
.suites-upcoming-card__duration strong{color:var(--tgm-text);font-size:.84rem;font-weight:950;white-space:nowrap}
.suites-detail-phone{display:inline-flex;align-items:center;gap:7px;color:var(--tgm-text-muted);font-weight:700;font-size:.84rem}
.suites-detail-phone>span{font-size:.74rem;opacity:.72}.suites-detail-phone>b{color:var(--tgm-text);font-size:.92rem;font-weight:900;white-space:nowrap}
.suites-detail-duration{background:color-mix(in srgb,var(--tgm-surface-soft) 96%,var(--tgm-accent) 4%)!important}
.suites-detail-actual-stay{grid-column:1/-1;border-color:rgba(55,190,130,.45)!important;background:rgba(55,190,130,.07)!important}
.suites-detail-actual-stay small{color:var(--tgm-text-muted);font-size:.72rem}

.suites-guest-detail-card{width:min(780px,100%)}
.suites-guest-detail-summary{margin-bottom:14px}
.suites-guest-detail-identity{display:grid;grid-template-columns:1.5fr 1fr .65fr 1fr;gap:8px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:17px;background:var(--tgm-surface-soft)}
.suites-guest-detail-identity>div{display:grid;gap:4px;min-width:0;padding:5px 7px}.suites-guest-detail-identity span{color:var(--tgm-text-muted);font-size:.72rem;font-weight:800}.suites-guest-detail-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}
.suites-guest-reservation-list{display:grid;gap:9px}.suites-guest-reservation-card{display:grid;gap:9px;width:100%;padding:12px;border:1px solid var(--tgm-border-color);border-radius:16px;background:var(--tgm-surface-soft);color:var(--tgm-text);font:inherit;text-align:start;cursor:pointer}.suites-guest-reservation-card:hover,.suites-guest-reservation-card:focus-visible{border-color:var(--tgm-accent-border);outline:none;background:color-mix(in srgb,var(--tgm-surface-soft) 96%,var(--tgm-accent) 4%)}
.suites-guest-reservation-card__head,.suites-guest-reservation-card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.suites-reservation-status{padding:4px 8px;border:1px solid var(--tgm-border-color);border-radius:999px;background:var(--tgm-surface-inset);color:var(--tgm-text-muted);font-size:.7rem;font-weight:900}.suites-guest-reservation-card__meta{display:grid;grid-template-columns:1fr .55fr 1fr;gap:7px}.suites-guest-reservation-card__meta>span{display:grid;gap:3px;padding:8px;border-radius:11px;background:var(--tgm-surface-inset)}.suites-guest-reservation-card__meta small{color:var(--tgm-text-muted);font-size:.66rem;font-weight:800}.suites-guest-reservation-card__meta b{font-size:.76rem;line-height:1.45}.suites-guest-reservation-card__foot>span{font-weight:900}.suites-guest-reservation-card__foot>b{color:var(--tgm-accent)}

#suites-unit-quick-summary{grid-template-columns:1fr;gap:11px}
#suites-unit-quick-summary>.suites-unit-quick-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0;border:0;background:transparent}
.suites-unit-quick-overview>div{display:grid;gap:4px;padding:11px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface-inset)}
.suites-unit-quick-overview span{color:var(--tgm-text-muted);font-size:.72rem}.suites-unit-current-card{display:grid;gap:10px;padding:13px;border:1px solid var(--tgm-border-color);border-radius:17px;background:var(--tgm-surface-soft)}
.suites-unit-current-card.is-live{border-color:rgba(55,190,130,.52);background:rgba(55,190,130,.07)}.suites-unit-current-card.is-warning{border-color:rgba(239,158,70,.6);background:rgba(239,158,70,.08)}.suites-unit-current-card.is-neutral{opacity:.9}
.suites-unit-current-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.suites-unit-current-card__head>span{font-size:.74rem;color:var(--tgm-text-muted);font-weight:900}.suites-unit-current-card__head>b{padding:4px 8px;border-radius:999px;background:var(--tgm-surface-inset);font-size:.7rem}.suites-unit-current-card.is-live .suites-unit-current-card__head>b{color:#43d59a}.suites-unit-current-card.is-warning .suites-unit-current-card__head>b{color:#f2b15f}
.suites-unit-current-card__guest{font-size:1.02rem}.suites-unit-current-card__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.suites-unit-current-card__meta>span{display:grid;gap:3px;padding:8px 9px;border-radius:11px;background:color-mix(in srgb,var(--tgm-surface-inset) 92%,transparent)}.suites-unit-current-card__meta small{color:var(--tgm-text-muted);font-size:.66rem}.suites-unit-current-card__meta strong{font-size:.78rem}
.suites-unit-archive-copy{margin:-4px 0 8px;font-size:.76rem}.suites-unit-history-record{gap:7px;background:var(--tgm-surface-soft);border-color:var(--tgm-border-color)}.suites-unit-history-record.is-checked_out{opacity:.84}.suites-unit-history-record__head,.suites-unit-history-record__foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.suites-unit-history-record__head>span{padding:4px 8px;border:1px solid var(--tgm-border-color);border-radius:999px;background:var(--tgm-surface-inset);color:var(--tgm-text-muted);font-size:.68rem;font-weight:900}.suites-unit-history-record>small{color:var(--tgm-text-muted)}.suites-unit-history-record__foot>span{color:var(--tgm-text-muted);font-size:.76rem}.suites-unit-history-record__foot>strong{font-size:.85rem}

@media(max-width:640px){
  .suites-upcoming-card__phone>b{font-size:.8rem}.suites-upcoming-card__duration strong{font-size:.74rem}
  .suites-guest-detail-identity{grid-template-columns:repeat(2,minmax(0,1fr))}.suites-guest-reservation-card__meta{grid-template-columns:1fr 1fr}.suites-guest-reservation-card__meta>span:nth-child(2){grid-column:1/-1;grid-row:2;text-align:center}
  .suites-unit-current-card__meta{grid-template-columns:1fr 1fr}
}
@media(max-width:390px){.suites-guest-detail-identity{grid-template-columns:1fr 1fr}.suites-guest-reservation-card__meta{grid-template-columns:1fr 1fr}.suites-upcoming-card__duration strong{font-size:.76rem}}

/* 8.19.84 — Suites report clarity, interactive drill-down, and unit history polish. */
.suites-financial-stat.is-interactive{width:100%;appearance:none;text-align:start;color:inherit;font:inherit;cursor:pointer}
.suites-financial-stat small{font-size:.68rem;line-height:1.35;color:var(--tgm-text-muted);font-weight:700;white-space:normal}
.suites-financial-stat.is-interactive:hover,.suites-financial-stat.is-interactive:focus-visible{border-color:var(--tgm-accent-border);background:color-mix(in srgb,var(--tgm-surface-inset) 94%,var(--tgm-accent) 6%);outline:none}
.suites-report-card.is-report-focus{border-color:var(--tgm-accent-border);box-shadow:0 0 0 2px color-mix(in srgb,var(--tgm-accent) 18%,transparent)}
.suites-report-card__heading h3{margin-bottom:4px}.suites-report-card__heading p{margin:0 0 12px;font-size:.78rem}
.suites-report-cashflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--tgm-space-2)}
.suites-report-outside-payments{margin-top:10px}.suites-report-scope-record,.suites-report-payment-record,.suites-report-refund-record{width:100%;text-align:start;color:inherit;font:inherit;cursor:pointer}
.suites-unit-current-card.is-interactive{width:100%;appearance:none;text-align:start;color:inherit;font:inherit;cursor:pointer}
.suites-unit-current-card.is-interactive:hover,.suites-unit-current-card.is-interactive:focus-visible{outline:none;border-color:var(--tgm-accent-border)}
.suites-unit-current-card__hint{color:var(--tgm-text-muted);font-size:.68rem;font-weight:800}
@media(max-width:900px){.suites-report-cashflow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.suites-report-cashflow{grid-template-columns:1fr 1fr}.suites-financial-stat small{font-size:.64rem}}

/* 8.19.86 — approved mobile visual polish: debt zebra/timeline + compact device cards. */
html[data-design-system="central-v2"] .section-table-card--zebra .data-table tbody tr:nth-child(odd) td {
  background: var(--tgm-surface);
}
html[data-design-system="central-v2"] .section-table-card--zebra .data-table tbody tr:nth-child(even) td {
  background: color-mix(in srgb, var(--tgm-surface-soft) 72%, var(--tgm-surface));
}
html[data-design-system="central-v2"] .section-table-card--zebra .data-table tbody tr.is-interactive:hover td {
  background: var(--tgm-accent-softer);
}

html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transactions {
  gap: 10px;
}
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction {
  padding: 13px 14px;
  border-radius: 16px;
  background: var(--tgm-surface-soft);
  border-color: var(--tgm-border-color);
  box-shadow: none;
}
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction__top {
  align-items: baseline;
  gap: 12px;
}
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction__top > strong,
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction__top > b {
  font-size: 1rem;
}
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction p {
  margin: 7px 0 4px;
  color: var(--tgm-text);
  line-height: 1.55;
}
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction small {
  display: block;
  color: var(--tgm-text-muted);
  line-height: 1.45;
}
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction--violet {
  border-inline-start-color: var(--tgm-accent);
}
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction--violet .detail-transaction__top > strong,
html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction--violet .detail-transaction__top > b {
  color: var(--tgm-accent);
}

@media (max-width: 720px) {
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card-list {
    grid-template-columns: minmax(0,1fr);
    gap: 9px;
    padding: 10px;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device {
    padding: 11px 12px;
    gap: 8px;
    border-radius: 16px;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__head {
    flex-direction: row;
    align-items: flex-start;
    gap: 8px 12px;
    flex-wrap: wrap;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__head > div {
    min-width: 0;
    flex: 1 1 190px;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__head h4 {
    font-size: 1rem;
    line-height: 1.35;
    margin: 0;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__open {
    font-size: .78rem;
    white-space: nowrap;
    align-self: center;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .product-list-thumbnail {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
    border-radius: 11px;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__meta {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 6px;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__meta > div {
    min-height: 48px;
    padding: 7px 8px;
    border-radius: 12px;
    align-content: center;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__meta span {
    font-size: .70rem;
    line-height: 1.2;
  }
  html[data-design-system="central-v2"] .section-table-card--mobile-compact-device .record-card--compact-device .record-card__meta strong {
    font-size: .88rem;
    line-height: 1.25;
  }
  html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction {
    padding: 11px 12px;
  }
  html[data-design-system="central-v2"] .presentation-section--timeline-debt-movements .detail-transaction p {
    font-size: .92rem;
  }
}

/* 8.19.89 — device request workspace + compact device movement timeline. */
html[data-design-system="central-v2"] .device-request-workspace {
  display:grid;
  gap:var(--tgm-space-3);
  padding:var(--tgm-space-4);
  border:var(--tgm-border);
  border-radius:var(--tgm-radius-lg);
  background:var(--tgm-surface-subtle);
}
html[data-design-system="central-v2"] .device-request-workspace__heading {
  display:grid;
  gap:var(--tgm-space-3);
}
html[data-design-system="central-v2"] .device-request-workspace__heading > div:first-child {
  display:grid;
  gap:var(--tgm-space-1);
}
html[data-design-system="central-v2"] .device-request-workspace__heading h3,
html[data-design-system="central-v2"] .device-request-workspace__heading p { margin:0; }
html[data-design-system="central-v2"] .device-request-workspace__heading p {
  color:var(--tgm-text-muted);
  font-size:var(--tgm-text-sm);
}
html[data-design-system="central-v2"] .device-request-workspace__tabs {
  width:100%;
  margin:0;
}
html[data-design-system="central-v2"] .device-request-workspace__tabs .segmented-filter__button {
  flex:1 1 0;
  min-width:0;
}
html[data-design-system="central-v2"] .device-request-workspace__content {
  display:grid;
  gap:var(--tgm-space-3);
}

html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transactions {
  gap:0;
}
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction {
  display:grid;
  gap:5px;
  padding:11px 2px 12px;
  border:0;
  border-bottom:1px solid var(--tgm-border-color);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction:last-child {
  border-bottom:0;
}
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction__top {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:var(--tgm-space-2);
}
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction__top > strong,
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction__top > b {
  font-size:var(--tgm-text-sm);
}
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction p {
  margin:0;
  color:var(--tgm-text);
  font-size:var(--tgm-text-sm);
  line-height:1.45;
}
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction small {
  display:block;
  color:var(--tgm-text-muted);
  font-size:var(--tgm-text-xs);
  line-height:1.35;
}
html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction__balance {
  color:var(--tgm-text);
  font-weight:750;
}
@media(max-width:640px){
  html[data-design-system="central-v2"] .device-request-workspace { padding:var(--tgm-space-3); }
  html[data-design-system="central-v2"] .device-request-workspace__tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  html[data-design-system="central-v2"] .device-request-workspace__tabs .segmented-filter__button { padding-inline:6px; font-size:.78rem; }
  html[data-design-system="central-v2"] .presentation-section--timeline-device-movements-compact .detail-transaction { padding-block:9px 10px; }
}

/* 8.20.21 — Monthly product audit: one dataset, desktop matrix + mobile compare. */
html[data-design-system="central-v2"] .sales-audit-mode-tabs {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  flex:1 1 100%;
  order:-20;
  width:100%;
  margin-bottom:var(--tgm-space-2);
}
html[data-design-system="central-v2"] .sales-audit-mode-tabs .segmented-filter__button { min-height:44px; font-weight:900; }
html[data-design-system="central-v2"] .product-audit-workspace { display:grid; gap:var(--tgm-space-3); min-width:0; }
html[data-design-system="central-v2"] .product-audit-heading {
  display:flex; justify-content:space-between; gap:var(--tgm-space-3); align-items:center;
  padding:var(--tgm-space-3); border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-lg);
  background:var(--tgm-surface-raised);
}
html[data-design-system="central-v2"] .product-audit-heading h3 { margin:0; font-size:1.05rem; }
html[data-design-system="central-v2"] .product-audit-heading p { margin:4px 0 0; color:var(--tgm-text-muted); font-size:.86rem; }
html[data-design-system="central-v2"] .product-audit-review-status {
  display:flex; flex-wrap:wrap; gap:6px 14px; align-items:center; padding:11px 14px;
  border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-md); background:var(--tgm-surface-inset);
}
html[data-design-system="central-v2"] .product-audit-review-status strong { font-size:.9rem; }
html[data-design-system="central-v2"] .product-audit-review-status span { color:var(--tgm-text-muted); font-size:.8rem; }
html[data-design-system="central-v2"] .product-audit-review-status.is-reviewed { border-color:color-mix(in srgb,var(--tgm-success) 55%,var(--tgm-border-color)); }
html[data-design-system="central-v2"] .product-audit-review-status.is-pending { border-color:color-mix(in srgb,var(--tgm-warning) 55%,var(--tgm-border-color)); }
html[data-design-system="central-v2"] .product-audit-controls {
  display:grid; grid-template-columns:repeat(5,minmax(135px,1fr)); gap:var(--tgm-space-2); align-items:end;
  padding:var(--tgm-space-3); border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-lg); background:var(--tgm-surface-raised);
}
html[data-design-system="central-v2"] .product-audit-controls .filter-field { margin:0; min-width:0; }
html[data-design-system="central-v2"] .product-audit-search { grid-column:span 2; }
html[data-design-system="central-v2"] .product-audit-results-head { display:flex; justify-content:space-between; gap:12px; align-items:center; }
html[data-design-system="central-v2"] .product-audit-results-head span { color:var(--tgm-text-muted); font-size:.8rem; }
html[data-design-system="central-v2"] .product-audit-matrix-scroll {
  width:100%; overflow:auto; border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-lg); background:var(--tgm-surface-raised);
  max-height:min(68vh,780px); scrollbar-gutter:stable both-edges;
}
html[data-design-system="central-v2"] .product-audit-matrix { border-collapse:separate; border-spacing:0; min-width:max(100%,980px); width:max-content; }
html[data-design-system="central-v2"] .product-audit-matrix th,
html[data-design-system="central-v2"] .product-audit-matrix td {
  padding:9px 10px; border-bottom:1px solid var(--tgm-border-color); border-inline-start:1px solid var(--tgm-border-color);
  vertical-align:middle; background:var(--tgm-surface-raised); min-width:118px;
}
html[data-design-system="central-v2"] .product-audit-matrix th {
  position:sticky; top:0; z-index:4; background:var(--tgm-surface-inset); font-size:.78rem; font-weight:900; white-space:nowrap;
}
html[data-design-system="central-v2"] .product-audit-matrix tr:last-child td { border-bottom:0; }
html[data-design-system="central-v2"] .product-audit-sticky { position:sticky; z-index:3; background:var(--tgm-surface-raised)!important; }
html[data-design-system="central-v2"] .product-audit-matrix th.product-audit-sticky { z-index:7; background:var(--tgm-surface-inset)!important; }
html[data-design-system="central-v2"] .product-audit-sticky--product { right:0; min-width:250px!important; max-width:310px; }
html[data-design-system="central-v2"] .product-audit-sticky--category { right:250px; min-width:115px!important; }
html[data-design-system="central-v2"] .product-audit-sticky--code { right:365px; min-width:105px!important; direction:ltr; text-align:center; }
html[data-design-system="central-v2"] .product-audit-sticky--product strong { display:block; font-size:.82rem; line-height:1.5; }
html[data-design-system="central-v2"] .product-audit-sticky--product small { display:block; margin-top:3px; color:var(--tgm-text-muted); font-size:.7rem; }
html[data-design-system="central-v2"] .product-audit-cell { display:grid; gap:2px; min-width:105px; }
html[data-design-system="central-v2"] .product-audit-cell > span { white-space:nowrap; font-size:.76rem; font-variant-numeric:tabular-nums; }
html[data-design-system="central-v2"] .product-audit-cell > small { margin-top:2px; font-size:.64rem; line-height:1.35; color:var(--tgm-text-muted); max-width:135px; }
html[data-design-system="central-v2"] .product-audit-cell--warning { color:var(--tgm-warning); }
html[data-design-system="central-v2"] .product-audit-cell--success { color:var(--tgm-success); }
html[data-design-system="central-v2"] .product-audit-cell--changed { color:var(--tgm-info); }
html[data-design-system="central-v2"] .product-audit-cell--new { color:var(--tgm-accent-soft-text); }
html[data-design-system="central-v2"] .product-audit-badge {
  display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--tgm-border-color); border-radius:999px;
  padding:5px 8px; font-size:.68rem; font-weight:900; white-space:nowrap; background:var(--tgm-surface-inset); color:var(--tgm-text-muted);
}
html[data-design-system="central-v2"] .product-audit-badge--warning { color:var(--tgm-warning); border-color:color-mix(in srgb,var(--tgm-warning) 55%,var(--tgm-border-color)); }
html[data-design-system="central-v2"] .product-audit-badge--success { color:var(--tgm-success); border-color:color-mix(in srgb,var(--tgm-success) 55%,var(--tgm-border-color)); }
html[data-design-system="central-v2"] .product-audit-badge--changed { color:var(--tgm-info); }
html[data-design-system="central-v2"] .product-audit-badge--new { color:var(--tgm-accent-soft-text); border-color:var(--tgm-accent-border); background:var(--tgm-accent-soft); }
html[data-design-system="central-v2"] .product-audit-mobile { display:none; }
html[data-design-system="central-v2"] .product-audit-pager { display:flex; justify-content:center; align-items:center; gap:10px; }
html[data-design-system="central-v2"] .product-audit-pager span { color:var(--tgm-text-muted); font-size:.82rem; min-width:110px; text-align:center; }

@media(max-width:760px){
  html[data-design-system="central-v2"] .sales-audit-mode-tabs { gap:5px; }
  html[data-design-system="central-v2"] .sales-audit-mode-tabs .segmented-filter__button { padding-inline:6px; font-size:.78rem; }
  html[data-design-system="central-v2"] .product-audit-heading { align-items:flex-start; padding:11px; }
  html[data-design-system="central-v2"] .product-audit-heading .secondary-button { padding:7px 9px; font-size:.72rem; }
  html[data-design-system="central-v2"] .product-audit-controls { grid-template-columns:repeat(2,minmax(0,1fr)); padding:10px; gap:7px; }
  html[data-design-system="central-v2"] .product-audit-controls .product-audit-search { grid-column:1/-1; }
  html[data-design-system="central-v2"] .product-audit-controls .filter-field span { font-size:.68rem; }
  html[data-design-system="central-v2"] .product-audit-controls :is(input,select) { min-width:0; width:100%; font-size:16px; }
  html[data-design-system="central-v2"] .product-audit-results-head { align-items:flex-start; flex-direction:column; gap:3px; }
  html[data-design-system="central-v2"] .product-audit-desktop { display:none; }
  html[data-design-system="central-v2"] .product-audit-mobile { display:block; }
  html[data-design-system="central-v2"] .product-audit-mobile-list { display:grid; gap:9px; }
  html[data-design-system="central-v2"] .product-audit-mobile-card {
    display:grid; gap:9px; padding:11px; border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-md); background:var(--tgm-surface-raised);
  }
  html[data-design-system="central-v2"] .product-audit-mobile-card--warning { border-color:color-mix(in srgb,var(--tgm-warning) 55%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-mobile-card--success { border-color:color-mix(in srgb,var(--tgm-success) 45%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-mobile-card__head { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
  html[data-design-system="central-v2"] .product-audit-mobile-card__head strong { display:block; font-size:.85rem; line-height:1.45; }
  html[data-design-system="central-v2"] .product-audit-mobile-card__head small { display:block; margin-top:3px; color:var(--tgm-text-muted); font-size:.69rem; }
  html[data-design-system="central-v2"] .product-audit-mobile-card__head .product-audit-badge { max-width:46%; white-space:normal; text-align:center; flex:0 0 auto; }
  html[data-design-system="central-v2"] .product-audit-mobile-compare { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  html[data-design-system="central-v2"] .product-audit-mobile-compare > div { padding:8px; border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-sm); background:var(--tgm-surface-inset); }
  html[data-design-system="central-v2"] .product-audit-mobile-compare b { display:block; margin-bottom:5px; font-size:.7rem; color:var(--tgm-text-muted); }
  html[data-design-system="central-v2"] .product-audit-mobile-history summary { cursor:pointer; font-size:.75rem; font-weight:900; color:var(--tgm-accent-soft-text); }
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid { display:grid; gap:6px; margin-top:8px; }
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid > div { display:grid; grid-template-columns:58px minmax(0,1fr); gap:8px; align-items:start; padding:7px 0; border-top:1px solid var(--tgm-border-color); }
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid b { font-size:.68rem; color:var(--tgm-text-muted); }
}

/* 8.20.22 — Product audit density + central Latin-digit visual polish. */
html[data-design-system="central-v2"] .product-audit-compact-summary { display:none; }
html[data-design-system="central-v2"] .product-audit-quick-filters {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px;
}
html[data-design-system="central-v2"] .product-audit-quick-filter {
  appearance:none; border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-md);
  background:var(--tgm-surface-inset); color:var(--tgm-text); padding:8px 10px;
  display:flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; min-width:0;
}
html[data-design-system="central-v2"] .product-audit-quick-filter span { font-size:.76rem; font-weight:800; }
html[data-design-system="central-v2"] .product-audit-quick-filter b { font-size:.78rem; font-variant-numeric:tabular-nums; }
html[data-design-system="central-v2"] .product-audit-quick-filter.is-active {
  border-color:var(--tgm-accent-border); background:var(--tgm-accent-soft); color:var(--tgm-accent-soft-text);
}
html[data-design-system="central-v2"] .product-audit-matrix th,
html[data-design-system="central-v2"] .product-audit-matrix td {
  padding:8px 8px; min-width:92px;
}
html[data-design-system="central-v2"] .product-audit-sticky--product { right:0; min-width:220px!important; max-width:240px; }
html[data-design-system="central-v2"] .product-audit-sticky--category { right:220px; min-width:96px!important; max-width:110px; }
html[data-design-system="central-v2"] .product-audit-sticky--code { right:316px; min-width:84px!important; max-width:92px; }
html[data-design-system="central-v2"] .product-audit-sticky--product strong { font-size:.88rem; line-height:1.45; font-weight:900; }
html[data-design-system="central-v2"] .product-audit-sticky--product small { font-size:.67rem; line-height:1.35; }
html[data-design-system="central-v2"] .product-audit-cell { min-width:82px; gap:3px; }
html[data-design-system="central-v2"] .product-audit-cell > span { font-size:.82rem; font-weight:800; line-height:1.35; }
html[data-design-system="central-v2"] .product-audit-cell__marker {
  width:18px; height:18px; display:inline-grid; place-items:center; border-radius:999px;
  font-size:.68rem!important; font-weight:950; line-height:1; margin-top:2px;
  background:color-mix(in srgb,currentColor 12%,transparent); color:inherit;
}
html[data-design-system="central-v2"] .product-audit-badge { padding:4px 7px; font-size:.65rem; }
html[data-design-system="central-v2"] .product-audit-results-head strong { font-size:.78rem; }
html[data-design-system="central-v2"] .product-audit-results-head span { line-height:1.45; }

@media(min-width:1500px){
  html[data-design-system="central-v2"] .product-audit-matrix th,
  html[data-design-system="central-v2"] .product-audit-matrix td { min-width:88px; }
  html[data-design-system="central-v2"] .product-audit-cell { min-width:78px; }
}

@media(max-width:760px){
  html[data-design-system="central-v2"] #section-metrics.section-metrics--product-audit { display:none!important; }
  html[data-design-system="central-v2"] .product-audit-workspace { gap:9px; }
  html[data-design-system="central-v2"] .product-audit-heading {
    padding:9px 10px; align-items:center; gap:8px;
  }
  html[data-design-system="central-v2"] .product-audit-heading h3 { font-size:1rem; }
  html[data-design-system="central-v2"] .product-audit-heading p { font-size:.72rem; margin-top:2px; }
  html[data-design-system="central-v2"] .product-audit-heading .secondary-button { padding:6px 8px; font-size:.68rem; }
  html[data-design-system="central-v2"] .product-audit-review-status {
    padding:9px 10px; gap:3px 8px; align-items:flex-start;
  }
  html[data-design-system="central-v2"] .product-audit-review-status strong { width:100%; font-size:.82rem; }
  html[data-design-system="central-v2"] .product-audit-review-status span { font-size:.69rem; line-height:1.45; }
  html[data-design-system="central-v2"] .product-audit-compact-summary {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px;
  }
  html[data-design-system="central-v2"] .product-audit-summary-chip {
    min-width:0; padding:9px 10px; border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-md);
    background:var(--tgm-surface-raised); display:flex; align-items:center; justify-content:space-between; gap:8px;
  }
  html[data-design-system="central-v2"] .product-audit-summary-chip span { font-size:.69rem; color:var(--tgm-text-muted); line-height:1.35; }
  html[data-design-system="central-v2"] .product-audit-summary-chip strong { font-size:1.02rem; font-variant-numeric:tabular-nums; }
  html[data-design-system="central-v2"] .product-audit-summary-chip--warning { border-color:color-mix(in srgb,var(--tgm-warning) 55%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-summary-chip--success { border-color:color-mix(in srgb,var(--tgm-success) 50%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-summary-chip--changed { border-color:color-mix(in srgb,var(--tgm-info) 45%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-summary-chip--new { border-color:var(--tgm-accent-border); }
  html[data-design-system="central-v2"] .product-audit-summary-chip--wide { grid-column:1/-1; padding-block:7px; }
  html[data-design-system="central-v2"] .product-audit-controls {
    grid-template-columns:repeat(2,minmax(0,1fr)); padding:8px; gap:6px; border-radius:var(--tgm-radius-md);
  }
  html[data-design-system="central-v2"] .product-audit-controls .product-audit-search { grid-column:1/-1; }
  html[data-design-system="central-v2"] .product-audit-quick-filters { gap:5px; }
  html[data-design-system="central-v2"] .product-audit-quick-filter { padding:7px 5px; gap:4px; border-radius:12px; }
  html[data-design-system="central-v2"] .product-audit-quick-filter span { font-size:.64rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  html[data-design-system="central-v2"] .product-audit-quick-filter b { font-size:.72rem; }
  html[data-design-system="central-v2"] .product-audit-results-head { gap:2px; }
  html[data-design-system="central-v2"] .product-audit-results-head strong { font-size:.7rem; line-height:1.45; }
  html[data-design-system="central-v2"] .product-audit-results-head span { font-size:.64rem; line-height:1.4; }
  html[data-design-system="central-v2"] .product-audit-mobile-list { gap:7px; }
  html[data-design-system="central-v2"] .product-audit-mobile-card { gap:7px; padding:9px; }
  html[data-design-system="central-v2"] .product-audit-mobile-card__head strong { font-size:.82rem; }
  html[data-design-system="central-v2"] .product-audit-mobile-card__head small { font-size:.64rem; }
  html[data-design-system="central-v2"] .product-audit-mobile-compare { gap:5px; }
  html[data-design-system="central-v2"] .product-audit-mobile-compare > div { padding:7px; }
  html[data-design-system="central-v2"] .product-audit-cell > span { font-size:.77rem; }
  html[data-design-system="central-v2"] .product-audit-pager { gap:6px; }
  html[data-design-system="central-v2"] .product-audit-pager .secondary-button { padding:7px 10px; font-size:.72rem; }
  html[data-design-system="central-v2"] .product-audit-pager span { min-width:0; font-size:.68rem; }
}

/* 8.20.23 — Product audit polish: compact review/export, multi-category filters,
   two-value month cells, two-column mobile history, and stable semantic colors. */
html[data-design-system="central-v2"] .product-audit-export {
  flex:0 0 auto; white-space:nowrap;
}
html[data-design-system="central-v2"] .product-audit-review-status {
  min-height:0; padding:7px 10px; gap:5px 9px; border-radius:12px;
}
html[data-design-system="central-v2"] .product-audit-review-status strong { font-size:.78rem; }
html[data-design-system="central-v2"] .product-audit-review-status span { font-size:.7rem; }
html[data-design-system="central-v2"] .product-audit-category-multi { position:relative; }
html[data-design-system="central-v2"] .product-audit-category-picker {
  position:relative; width:100%; min-width:0;
}
html[data-design-system="central-v2"] .product-audit-category-picker > summary {
  list-style:none; min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:8px;
  border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-sm); background:var(--tgm-surface-inset);
  color:var(--tgm-text); padding:8px 11px; cursor:pointer; font-size:.82rem; font-weight:800;
}
html[data-design-system="central-v2"] .product-audit-category-picker > summary::-webkit-details-marker { display:none; }
html[data-design-system="central-v2"] .product-audit-category-picker > summary::after { content:"⌄"; color:var(--tgm-text-muted); font-weight:900; }
html[data-design-system="central-v2"] .product-audit-category-picker[open] > summary::after { content:"⌃"; }
html[data-design-system="central-v2"] .product-audit-category-picker__panel {
  position:absolute; inset-inline:0; top:calc(100% + 5px); z-index:30; min-width:260px;
  padding:8px; border:1px solid var(--tgm-border-color); border-radius:var(--tgm-radius-md);
  background:var(--tgm-surface-raised); box-shadow:var(--tgm-shadow-lg);
}
html[data-design-system="central-v2"] .product-audit-category-picker__list {
  max-height:280px; overflow:auto; display:grid; gap:3px; padding-inline-end:2px;
}
html[data-design-system="central-v2"] .product-audit-category-picker__list label {
  display:flex; align-items:center; gap:8px; padding:7px 8px; border-radius:9px; cursor:pointer; min-width:0;
}
html[data-design-system="central-v2"] .product-audit-category-picker__list label:hover { background:var(--tgm-surface-inset); }
html[data-design-system="central-v2"] .product-audit-category-picker__list input { width:16px!important; min-width:16px!important; height:16px; margin:0; }
html[data-design-system="central-v2"] .product-audit-category-picker__list span { font-size:.75rem!important; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html[data-design-system="central-v2"] .product-audit-category-picker__actions {
  display:flex; justify-content:flex-end; gap:6px; padding-top:7px; margin-top:6px; border-top:1px solid var(--tgm-border-color);
}
html[data-design-system="central-v2"] .product-audit-category-picker__actions button { padding:6px 10px; font-size:.72rem; }
html[data-design-system="central-v2"] .product-audit-cell__empty { color:var(--tgm-text-muted); }

@media(max-width:760px){
  html[data-design-system="central-v2"] .product-audit-heading { padding:7px 9px; }
  html[data-design-system="central-v2"] .product-audit-heading .secondary-button { padding:5px 7px; font-size:.64rem; }
  html[data-design-system="central-v2"] .product-audit-review-status {
    display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; padding:6px 8px; gap:4px 8px;
  }
  html[data-design-system="central-v2"] .product-audit-review-status strong { width:auto; font-size:.72rem; white-space:nowrap; }
  html[data-design-system="central-v2"] .product-audit-review-status span { font-size:.62rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  html[data-design-system="central-v2"] .product-audit-category-picker__panel {
    position:fixed; inset-inline:14px; top:auto; bottom:86px; min-width:0; max-height:min(64vh,520px);
  }
  html[data-design-system="central-v2"] .product-audit-category-picker__list { max-height:min(48vh,390px); }
  html[data-design-system="central-v2"] .product-audit-mobile-compare .product-audit-cell,
  html[data-design-system="central-v2"] .product-audit-mobile-history__item .product-audit-cell {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; gap:4px 8px; min-width:0;
  }
  html[data-design-system="central-v2"] .product-audit-mobile-compare .product-audit-cell > span,
  html[data-design-system="central-v2"] .product-audit-mobile-history__item .product-audit-cell > span {
    min-width:0; font-size:.72rem; font-weight:850; white-space:nowrap;
  }
  html[data-design-system="central-v2"] .product-audit-mobile-compare .product-audit-cell__marker,
  html[data-design-system="central-v2"] .product-audit-mobile-history__item .product-audit-cell__marker {
    grid-column:1/-1; justify-self:end; margin:0;
  }
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid {
    grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin-top:7px;
  }
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid > div {
    display:grid; grid-template-columns:1fr; gap:4px; align-items:start; padding:7px;
    border:1px solid var(--tgm-border-color); border-radius:10px; background:var(--tgm-surface-inset);
  }
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid > div:first-child { border-top:1px solid var(--tgm-border-color); }
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid b { font-size:.65rem; margin:0; }
  html[data-design-system="central-v2"] .product-audit-mobile-history__item--warning { border-color:color-mix(in srgb,var(--tgm-warning) 52%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-mobile-history__item--success { border-color:color-mix(in srgb,var(--tgm-success) 45%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-mobile-history__item--changed { border-color:color-mix(in srgb,var(--tgm-info) 42%,var(--tgm-border-color)); }
  html[data-design-system="central-v2"] .product-audit-mobile-history__item--new { border-color:var(--tgm-accent-border); }
}

@media(min-width:600px) and (max-width:900px){
  html[data-design-system="central-v2"] .product-audit-mobile-history__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:760px){
  html[data-design-system="central-v2"] .product-audit-mobile-history .product-audit-cell__empty::after {
    content:" لا توجد لقطة"; font-size:.58rem; color:var(--tgm-text-muted);
  }
}

/* 8.20.24 — Central product variant identity visibility.
   Keep the OXO property readable without increasing card density materially. */
.product-audit-variant-property,
.product-audit-mobile-card__variant {
  display:block;
  margin-top:2px;
  color:var(--text-secondary);
  font-size:.78rem;
  line-height:1.35;
  font-weight:650;
  overflow-wrap:anywhere;
}
.product-audit-mobile-card__meta {
  display:block;
  margin-top:2px;
}
@media (max-width: 760px) {
  .product-audit-mobile-card__variant { font-size:.76rem; }
}

/* 8.20.27 — compact bulk recount checklist */
html[data-design-system="central-v2"] .modal-field--checklist{display:grid;gap:10px}
html[data-design-system="central-v2"] .checklist-toolbar{display:flex;gap:8px;flex-wrap:wrap}
html[data-design-system="central-v2"] .checklist-toolbar__button{min-height:38px;padding:7px 12px}
html[data-design-system="central-v2"] .checklist-options{display:grid;gap:7px;max-height:min(42vh,420px);overflow:auto;padding:2px}
html[data-design-system="central-v2"] .checklist-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--tgm-border-color);border-radius:var(--tgm-radius-sm);background:var(--tgm-surface-raised);cursor:pointer}
html[data-design-system="central-v2"] .checklist-option.is-selected{border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft)}
html[data-design-system="central-v2"] .checklist-option input{width:18px;height:18px;accent-color:var(--tgm-accent)}
html[data-design-system="central-v2"] .checklist-option span{font-weight:750;line-height:1.45}


/* ==========================================================================
   8.20.56 — Central Outline Action System (Owner-approved option C)
   --------------------------------------------------------------------------
   One action vocabulary for current and future Web/PWA buttons:
   dark/quiet surface + semantic colored border + restrained hover tint.
   Purple remains a brand/navigation accent, but is no longer used as a
   filled action-button treatment. Tabs/chips/navigation/recovery controls are
   intentionally outside this action contract.
   ========================================================================== */
:root {
  --tgm-action-surface: color-mix(in srgb, var(--tgm-surface) 92%, var(--tgm-surface-inset) 8%);
  --tgm-action-neutral-accent: color-mix(in srgb, var(--tgm-text-muted) 72%, var(--tgm-border-strong-color));
  --tgm-action-info-accent: var(--tgm-info-strong);
  --tgm-action-success-accent: var(--tgm-success-strong);
  --tgm-action-warning-accent: var(--tgm-warning-strong);
  --tgm-action-danger-accent: var(--tgm-danger-strong);
  --tgm-action-hover-mix: 8%;
  --tgm-action-ring-mix: 18%;
}
html[data-theme="dark"] {
  --tgm-action-surface: color-mix(in srgb, var(--tgm-surface-inset) 70%, var(--tgm-surface) 30%);
  --tgm-action-neutral-accent: #64748b;
  --tgm-action-info-accent: #60a5fa;
  --tgm-action-success-accent: #4ade80;
  --tgm-action-warning-accent: #fbbf24;
  --tgm-action-danger-accent: #f04438;
}

html[data-button-system="outline-v1"] :is(
  .tgm-button,
  .primary-button,
  .secondary-button,
  .danger-button,
  .management-action,
  .account-action-button,
  .action-card__button,
  .pagination-button,
  .shell-update-banner__button,
  .suites-export-button,
  .smart-action-fab,
  .assistant-attach-button,
  .offline-outbox-status
) {
  --tgm-action-accent: var(--tgm-action-neutral-accent);
  appearance: none;
  background: var(--tgm-action-surface) !important;
  color: var(--tgm-text) !important;
  border: 1px solid var(--tgm-action-accent) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--tgm-action-accent) 7%, transparent) !important;
  text-shadow: none;
  transition: background var(--tgm-motion-fast) var(--tgm-ease), border-color var(--tgm-motion-fast) var(--tgm-ease), box-shadow var(--tgm-motion-fast) var(--tgm-ease), transform var(--tgm-motion-fast) var(--tgm-ease), opacity var(--tgm-motion-fast) var(--tgm-ease);
}

html[data-button-system="outline-v1"] :is(
  .primary-button,
  .management-action--primary,
  .account-action-button--primary,
  .tgm-button--primary,
  .tgm-action--info
) { --tgm-action-accent: var(--tgm-action-info-accent); }

html[data-button-system="outline-v1"] :is(
  .tgm-action--success,
  .management-action--success,
  .account-action-button--success,
  .tgm-button--success
) { --tgm-action-accent: var(--tgm-action-success-accent); }

html[data-button-system="outline-v1"] :is(
  .tgm-action--warning,
  .management-action--warning,
  .account-action-button--warning,
  .tgm-button--warning
) { --tgm-action-accent: var(--tgm-action-warning-accent); }

html[data-button-system="outline-v1"] :is(
  .danger-button,
  .management-action--danger,
  .account-action-button--danger,
  .tgm-button--danger,
  .danger-outline,
  .tgm-action--danger
) { --tgm-action-accent: var(--tgm-action-danger-accent); }

html[data-button-system="outline-v1"] :is(
  .secondary-button,
  .management-action,
  .account-action-button,
  .action-card__button,
  .pagination-button,
  .tgm-button--secondary,
  .tgm-action--neutral
) { --tgm-action-accent: var(--tgm-action-neutral-accent); }

/* Semantic utilities and legacy variants must win over the base-class neutral mapping. */
html[data-button-system="outline-v1"] :is(.primary-button,.management-action--primary,.account-action-button--primary,.tgm-button--primary) { --tgm-action-accent: var(--tgm-action-info-accent); }
html[data-button-system="outline-v1"] :is(.danger-button,.management-action--danger,.account-action-button--danger,.tgm-button--danger,.danger-outline) { --tgm-action-accent: var(--tgm-action-danger-accent); }
html[data-button-system="outline-v1"] :is(.management-action--success,.account-action-button--success,.tgm-button--success) { --tgm-action-accent: var(--tgm-action-success-accent); }
html[data-button-system="outline-v1"] :is(.management-action--warning,.account-action-button--warning,.tgm-button--warning) { --tgm-action-accent: var(--tgm-action-warning-accent); }
html[data-button-system="outline-v1"] .tgm-action--info { --tgm-action-accent: var(--tgm-action-info-accent); }
html[data-button-system="outline-v1"] :is(.smart-action-fab,.shell-update-banner__button,.offline-outbox-status) { --tgm-action-accent: var(--tgm-action-info-accent); }
html[data-button-system="outline-v1"] .offline-outbox-status[data-state="attention"] { --tgm-action-accent: var(--tgm-action-danger-accent); }
html[data-button-system="outline-v1"] .assistant-attach-button { --tgm-action-accent: var(--tgm-action-neutral-accent); }
html[data-button-system="outline-v1"] .tgm-action--success { --tgm-action-accent: var(--tgm-action-success-accent); }
html[data-button-system="outline-v1"] .tgm-action--warning { --tgm-action-accent: var(--tgm-action-warning-accent); }
html[data-button-system="outline-v1"] .tgm-action--danger { --tgm-action-accent: var(--tgm-action-danger-accent); }

html[data-button-system="outline-v1"] :is(
  .tgm-button,
  .primary-button,
  .secondary-button,
  .danger-button,
  .management-action,
  .account-action-button,
  .action-card__button,
  .pagination-button,
  .shell-update-banner__button,
  .suites-export-button,
  .smart-action-fab,
  .assistant-attach-button,
  .offline-outbox-status
):is(:hover,:focus-visible) {
  background: color-mix(in srgb, var(--tgm-action-surface) 92%, var(--tgm-action-accent) var(--tgm-action-hover-mix)) !important;
  border-color: color-mix(in srgb, var(--tgm-action-accent) 88%, var(--tgm-text) 12%) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tgm-action-accent) var(--tgm-action-ring-mix), transparent) !important;
  outline: 0;
}
html[data-button-system="outline-v1"] :is(
  .tgm-button,
  .primary-button,
  .secondary-button,
  .danger-button,
  .management-action,
  .account-action-button,
  .action-card__button,
  .pagination-button,
  .shell-update-banner__button,
  .suites-export-button,
  .smart-action-fab,
  .assistant-attach-button,
  .offline-outbox-status
):active {
  transform: translateY(1px) scale(.995);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--tgm-action-accent) 16%, transparent) !important;
}
html[data-button-system="outline-v1"] :is(
  .tgm-button,
  .primary-button,
  .secondary-button,
  .danger-button,
  .management-action,
  .account-action-button,
  .action-card__button,
  .pagination-button,
  .shell-update-banner__button,
  .suites-export-button,
  .smart-action-fab,
  .assistant-attach-button,
  .offline-outbox-status
):disabled {
  opacity: var(--tgm-control-disabled-opacity);
  cursor: not-allowed;
  transform: none;
}

/* Legacy action-tone aliases are normalized centrally. New code should use
   tgm-action--info/success/warning/danger/neutral directly. */
html[data-button-system="outline-v1"] :is(.tgm-action--blue,.tgm-action--violet) { --tgm-action-accent: var(--tgm-action-info-accent); }
html[data-button-system="outline-v1"] .tgm-action--green { --tgm-action-accent: var(--tgm-action-success-accent); }
html[data-button-system="outline-v1"] .tgm-action--orange { --tgm-action-accent: var(--tgm-action-warning-accent); }
html[data-button-system="outline-v1"] .tgm-action--red { --tgm-action-accent: var(--tgm-action-danger-accent); }

@media (max-width: 760px) {
  html[data-button-system="outline-v1"] :is(.primary-button,.secondary-button,.danger-button,.management-action,.account-action-button,.action-card__button) {
    min-height: 44px;
  }
}

/* ==========================================================================
   8.20.57 — Central Detail Surface + Dialog + Adaptive Typography
   --------------------------------------------------------------------------
   One reusable visual language for detail cards, service cards, and all
   confirmation/prompt/notice dialogs. Business logic and permissions remain
   unchanged; only presentation and the task online fast path are affected.
   ========================================================================== */
html.tgm-dialog-open,
html.tgm-dialog-open body { overflow: hidden !important; }

.tgm-dialog-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: grid;
  place-items: center;
  padding: max(16px, env(safe-area-inset-top, 0px)) 16px max(16px, env(safe-area-inset-bottom, 0px));
  background: color-mix(in srgb, #020617 64%, transparent);
  backdrop-filter: blur(10px) saturate(.88);
  -webkit-backdrop-filter: blur(10px) saturate(.88);
  animation: backdropIn var(--tgm-motion-fast) var(--tgm-ease);
}
.tgm-dialog {
  width: min(100%, 520px);
  max-height: min(86dvh, 720px);
  overflow: auto;
  direction: rtl;
  color: var(--tgm-text);
  background: color-mix(in srgb, var(--tgm-surface) 96%, var(--tgm-surface-inset) 4%);
  border: 1px solid var(--tgm-border-strong-color);
  border-radius: 22px;
  box-shadow: 0 26px 80px rgba(0,0,0,.34);
  overscroll-behavior: contain;
}
.tgm-dialog[data-tone="critical"] { border-color: color-mix(in srgb, var(--tgm-action-danger-accent) 76%, var(--tgm-border-color)); }
.tgm-dialog[data-tone="warning"] { border-color: color-mix(in srgb, var(--tgm-action-warning-accent) 72%, var(--tgm-border-color)); }
.tgm-dialog[data-tone="success"] { border-color: color-mix(in srgb, var(--tgm-action-success-accent) 68%, var(--tgm-border-color)); }
.tgm-dialog[data-tone="info"] { border-color: color-mix(in srgb, var(--tgm-action-info-accent) 68%, var(--tgm-border-color)); }
.tgm-dialog__header {
  display: grid;
  gap: 4px;
  padding: 18px 20px 13px;
  border-bottom: 1px solid var(--tgm-border-color);
}
.tgm-dialog__eyebrow { color: var(--tgm-text-muted); font-size: .68rem; font-weight: 750; }
.tgm-dialog__title { margin: 0; color: var(--tgm-text); font-size: 1.16rem; line-height: 1.35; font-weight: 900; }
.tgm-dialog__content { display: grid; gap: 13px; padding: 16px 20px 10px; }
.tgm-dialog__message {
  margin: 0;
  padding: 13px 14px;
  white-space: pre-line;
  overflow-wrap: anywhere;
  color: var(--tgm-text);
  background: var(--tgm-surface-inset);
  border: 1px solid var(--tgm-border-color);
  border-radius: 14px;
  font-size: .95rem;
  line-height: 1.75;
  font-weight: 670;
}
.tgm-dialog__field { display: grid; gap: 7px; color: var(--tgm-text-muted); font-size: .76rem; font-weight: 800; }
.tgm-dialog__field input {
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  color: var(--tgm-text);
  background: var(--tgm-surface-inset);
  border: 1px solid var(--tgm-border-strong-color);
  border-radius: 12px;
  font: inherit;
  font-size: 1rem;
  outline: none;
}
.tgm-dialog__field input:focus { border-color: var(--tgm-accent); box-shadow: 0 0 0 3px var(--tgm-focus-ring); }
.tgm-dialog__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 8px;
  padding: 12px 20px 18px;
}
.tgm-dialog__actions > :only-child { grid-column: 1 / -1; }
.tgm-dialog__button { min-height: 48px; border-radius: 13px !important; font-weight: 850; }

/* Values, not empty card space, carry the visual weight. */
html[data-design-system="central-v2"] .presentation-card:not(.presentation-card--long-content) {
  justify-content: center;
}
html[data-design-system="central-v2"] .presentation-card:not(.presentation-card--long-content) > span {
  line-height: 1.25;
}
html[data-design-system="central-v2"] .presentation-card[data-value-size="short"]:not(.presentation-card--long-content) > strong:not(.presentation-status-value) {
  font-size: 1.08rem;
  line-height: 1.3;
  font-weight: 900;
}
html[data-design-system="central-v2"] .presentation-card[data-value-size="medium"]:not(.presentation-card--long-content) > strong:not(.presentation-status-value) {
  font-size: .96rem;
  line-height: 1.38;
  font-weight: 850;
}
html[data-design-system="central-v2"] .presentation-card[data-value-size="long"]:not(.presentation-card--long-content) > strong:not(.presentation-status-value) {
  font-size: .84rem;
  line-height: 1.42;
  font-weight: 780;
}
html[data-design-system="central-v2"] .presentation-card[data-value-kind="numeric"] > strong:not(.presentation-status-value) {
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
}

/* One compact renderer for every task state: new, in progress, proof review, closed. */
html[data-design-system="central-v2"] .modal-body--task .presentation-section--variant-task-summary-compact .presentation-metadata-grid {
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 7px;
}
html[data-design-system="central-v2"] .modal-body--task .presentation-section--variant-task-summary-compact .presentation-card {
  min-height: 62px;
  padding: 8px 9px;
  border-radius: 12px;
}

/* Leave balance: 3 primary outcomes first, secondary facts compact, long cycle isolated. */
html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-summary-compact .presentation-metrics-grid {
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 8px;
}
html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-facts-compact .presentation-metadata-grid {
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 7px;
}
html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-summary-compact .presentation-card,
html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-facts-compact .presentation-card,
html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-cycle-compact .presentation-card {
  min-height: 64px;
  padding: 8px 9px;
  border-radius: 12px;
}
html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-cycle-compact .presentation-metadata-grid { grid-template-columns: 1fr; }

/* Employee service hub: request actions and persistent reply history stay compact. */
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-request-compact {
  gap: 8px;
  padding: 10px;
  border-radius: 14px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-request-compact .record-card__head {
  gap: 7px;
  align-items: center;
}
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-request-compact .record-card__head h4 { font-size: .98rem; }
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-request-compact .record-card__body {
  min-height: 0;
  padding: 8px 10px;
  border-radius: 10px;
  font-size: .82rem;
  line-height: 1.5;
}
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-request-compact .record-card__meta {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 6px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-request-compact .record-card__meta > div {
  min-height: 52px;
  padding: 6px 7px;
  border-radius: 10px;
}

@media (max-width: 640px) {
  .tgm-dialog-backdrop { place-items: center; padding-inline: 12px; }
  .tgm-dialog { width: min(100%, 500px); border-radius: 18px; }
  .tgm-dialog__header { padding: 15px 15px 11px; }
  .tgm-dialog__content { padding: 12px 15px 8px; }
  .tgm-dialog__message { padding: 11px 12px; font-size: .88rem; line-height: 1.65; }
  .tgm-dialog__actions { padding: 10px 15px 15px; gap: 7px; }
  .tgm-dialog__button { min-height: 46px; font-size: .82rem; }

  html[data-design-system="central-v2"] .presentation-card:not(.presentation-card--long-content) {
    min-height: 56px;
    padding: 7px 7px;
    gap: 2px;
  }
  html[data-design-system="central-v2"] .presentation-card:not(.presentation-card--long-content) > span {
    font-size: .60rem !important;
  }
  html[data-design-system="central-v2"] .presentation-card[data-value-size="short"]:not(.presentation-card--long-content) > strong:not(.presentation-status-value) {
    font-size: .92rem !important;
    line-height: 1.28 !important;
  }
  html[data-design-system="central-v2"] .presentation-card[data-value-size="medium"]:not(.presentation-card--long-content) > strong:not(.presentation-status-value) {
    font-size: .80rem !important;
    line-height: 1.32 !important;
  }
  html[data-design-system="central-v2"] .presentation-card[data-value-size="long"]:not(.presentation-card--long-content) > strong:not(.presentation-status-value) {
    font-size: .69rem !important;
    line-height: 1.35 !important;
  }

  html[data-design-system="central-v2"] .modal-body--task .presentation-section--variant-task-summary-compact .presentation-metadata-grid {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 5px !important;
  }
  html[data-design-system="central-v2"] .modal-body--task .presentation-section--variant-task-summary-compact .presentation-card {
    min-height: 57px !important;
    padding: 6px 6px !important;
    border-radius: 10px !important;
  }

  html[data-design-system="central-v2"] .modal-body--leave-balance { gap: 9px; padding-inline: 11px; }
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section { margin-bottom: 7px; }
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section > h3 { font-size: 1rem; margin-bottom: 7px; }
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-summary-compact .presentation-metrics-grid,
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-facts-compact .presentation-metadata-grid {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 5px !important;
  }
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-summary-compact .presentation-card,
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-facts-compact .presentation-card,
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-cycle-compact .presentation-card {
    min-height: 58px !important;
    padding: 6px !important;
    border-radius: 10px !important;
  }
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-facts-compact .presentation-card:last-child:nth-child(3n+1) {
    grid-column: 1 / -1;
  }

  html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .section-actions {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 6px !important;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .section-actions .management-action {
    min-height: 46px;
    padding: 7px 5px;
    font-size: .76rem;
    line-height: 1.25;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-request-compact .record-card__meta {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  }
}

/* 8.20.58 — Leave Workspace + Central Compact List Surface
   Month-first filtering prevents unbounded archive growth on mobile. Lists
   stay scan-friendly; full text remains available in the detail surface. */
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-filters {
  align-items: center;
  gap: 8px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .quick-options {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 7px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .quick-options .chip {
  min-width: 0;
  min-height: 40px;
  padding-inline: 8px;
  font-size: .78rem;
  font-weight: 800;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-actions[data-action-count="1"] {
  width: 100%;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-actions[data-action-count="1"] .management-action {
  width: 100%;
  flex: 1 1 100%;
  min-height: 48px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-metrics {
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 8px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-metric {
  min-height: 78px;
  padding: 10px 11px;
  border-radius: 14px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-metric strong {
  font-size: 1.18rem;
  margin: 1px 0;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-metric span,
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-metric small {
  font-size: .72rem;
}

html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact,
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact,
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact {
  gap: 7px;
  padding: 9px 10px;
  border-radius: 13px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__head,
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact .record-card__head,
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact .record-card__head {
  align-items: center;
  gap: 7px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__head h4,
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact .record-card__head h4,
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact .record-card__head h4 {
  font-size: .94rem;
  line-height: 1.35;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__body,
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact .record-card__body {
  min-height: 0;
  padding: 6px 8px;
  border-radius: 9px;
  font-size: .78rem;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__meta,
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact .record-card__meta,
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact .record-card__meta {
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 5px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__meta > div,
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact .record-card__meta > div,
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact .record-card__meta > div {
  min-height: 46px;
  padding: 5px 6px;
  border-radius: 9px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact .record-card__open {
  font-size: .68rem;
}

/* Leave balance cycle is easier to understand as start / end / remaining. */
html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-cycle-compact .presentation-metadata-grid {
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 7px;
}

@media (max-width: 640px) {
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-controlbar {
    gap: 9px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="selected_month"],
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="employee_id"] {
    width: 100%;
    min-width: 0;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="selected_month"] input,
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="employee_id"] select {
    min-height: 44px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-tables {
    gap: 10px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-table-heading {
    padding: 11px 12px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-table-heading h3 {
    font-size: 1rem;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-table-heading p {
    font-size: .7rem;
    margin-top: 3px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-collapsible-table__summary {
    min-height: 58px;
    padding: 10px 12px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-collapsible-table__summary strong {
    font-size: .95rem;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__meta,
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact .record-card__meta,
  html[data-design-system="central-v2"] .section-workspace[data-section="communications"] .record-card--service-list-compact .record-card__meta {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  }
  html[data-design-system="central-v2"] .modal-body--leave-balance .presentation-section--variant-leave-balance-cycle-compact .presentation-metadata-grid {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 5px !important;
  }
}

/* 8.20.59 — Shared Navigation Hierarchy + Leave Polish
   Device scope: Shared (desktop + mobile) for Tech Guys navigation.
   Role scope: Shared presentation only; server permission filtering remains authoritative. */
:root {
  --tgm-nav-parent-surface: color-mix(in srgb, var(--tgm-sidebar-soft) 58%, transparent);
  --tgm-nav-parent-surface-hover: color-mix(in srgb, var(--tgm-sidebar-soft) 82%, transparent);
  --tgm-nav-parent-border: color-mix(in srgb, var(--tgm-accent) 24%, transparent);
  --tgm-nav-parent-border-active: color-mix(in srgb, var(--tgm-accent) 58%, transparent);
  --tgm-nav-child-line: color-mix(in srgb, var(--tgm-accent) 22%, transparent);
  --tgm-nav-child-surface-active: color-mix(in srgb, var(--tgm-accent) 13%, transparent);
  --tgm-nav-parent-text: var(--tgm-text-inverse);
  --tgm-nav-child-text: #b8c1d1;
}
html[data-theme="dark"] {
  --tgm-nav-parent-surface: color-mix(in srgb, var(--tgm-sidebar-soft) 52%, transparent);
  --tgm-nav-parent-surface-hover: color-mix(in srgb, var(--tgm-sidebar-soft) 78%, transparent);
  --tgm-nav-child-text: #aeb8c8;
}
html[data-theme="light"] {
  --tgm-nav-parent-surface: color-mix(in srgb, var(--tgm-sidebar-soft) 62%, transparent);
  --tgm-nav-parent-surface-hover: color-mix(in srgb, var(--tgm-sidebar-soft) 86%, transparent);
  --tgm-nav-child-text: #c1c9d6;
}

html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation {
  display: grid;
  gap: 5px;
}
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-item,
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-group > .nav-group-toggle {
  min-height: 43px;
  padding: 9px 11px;
  border: 1px solid transparent;
  border-radius: 13px;
  background: var(--tgm-nav-parent-surface);
  color: var(--tgm-nav-parent-text);
  font-size: .91rem;
  font-weight: 760;
  line-height: 1.25;
}
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-item > span:first-child,
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-group > .nav-group-toggle > span:first-child {
  display: inline-grid;
  place-items: center;
  width: 22px;
  min-width: 22px;
  font-size: .96rem;
}
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-item:hover,
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-group > .nav-group-toggle:hover {
  background: var(--tgm-nav-parent-surface-hover);
  border-color: var(--tgm-nav-parent-border);
}
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-item.is-active,
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-group.is-expanded > .nav-group-toggle,
html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-group > .nav-group-toggle.is-active {
  background: color-mix(in srgb, var(--tgm-accent) 10%, var(--tgm-nav-parent-surface));
  border-color: var(--tgm-nav-parent-border-active);
  box-shadow: inset -3px 0 0 var(--tgm-accent), 0 0 0 1px color-mix(in srgb, var(--tgm-accent) 4%, transparent);
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-group {
  margin: 0;
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-group-caret {
  font-size: .82rem;
  opacity: .72;
  transition: transform var(--tgm-motion-fast) var(--tgm-ease), opacity var(--tgm-motion-fast) var(--tgm-ease);
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-group.is-expanded .nav-group-caret {
  transform: rotate(180deg);
  opacity: 1;
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-submenu {
  position: relative;
  display: grid;
  gap: 1px;
  margin: 3px 0 5px;
  padding: 3px 15px 3px 3px;
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-submenu::before {
  content: "";
  position: absolute;
  inset-block: 7px;
  inset-inline-start: 5px;
  width: 1px;
  background: var(--tgm-nav-child-line);
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem {
  position: relative;
  min-height: 32px;
  padding: 6px 10px;
  border-radius: 9px;
  color: var(--tgm-nav-child-text);
  font-size: .79rem;
  font-weight: 540;
  line-height: 1.3;
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem::before {
  content: "";
  position: absolute;
  inset-inline-start: -10px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--tgm-nav-child-text) 58%, transparent);
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem:hover {
  background: color-mix(in srgb, var(--tgm-sidebar-soft) 42%, transparent);
  color: var(--tgm-text-inverse);
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem.is-active {
  background: var(--tgm-nav-child-surface-active);
  color: var(--tgm-text-inverse);
  box-shadow: inset -2px 0 0 var(--tgm-accent);
  font-weight: 680;
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem.is-active::before {
  background: var(--tgm-accent);
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem--cluster-start {
  margin-top: 8px;
}
html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem--cluster-start::after {
  content: "";
  position: absolute;
  inset-inline: 8px;
  top: -5px;
  height: 1px;
  background: color-mix(in srgb, var(--tgm-nav-child-line) 78%, transparent);
}
html[data-design-system="central-v2"][data-activity="techguys"] .sidebar__status {
  border: 1px solid color-mix(in srgb, var(--tgm-accent) 16%, transparent);
  background: color-mix(in srgb, var(--tgm-sidebar-soft) 46%, transparent);
}

/* Leave header-scoped month control. The employee selector stays page-scoped. */
html[data-design-system="central-v2"] .section-table-heading__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  margin-inline-start: auto;
}
html[data-design-system="central-v2"] .table-header-filter {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
html[data-design-system="central-v2"] .table-header-filter__select,
html[data-design-system="central-v2"] .table-header-filter__month {
  min-height: 34px;
  border: 1px solid var(--tgm-border-color);
  border-radius: 10px;
  background: var(--tgm-surface);
  color: var(--tgm-text);
  padding: 5px 9px;
  font: inherit;
  font-size: .76rem;
  font-weight: 750;
}
html[data-design-system="central-v2"] .table-header-filter__select:focus,
html[data-design-system="central-v2"] .table-header-filter__month:focus {
  outline: 0;
  border-color: var(--tgm-accent);
  box-shadow: 0 0 0 3px var(--tgm-focus-ring);
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-filters {
  width: auto;
  min-width: 0;
  padding: 6px;
  gap: 6px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="employee_id"] {
  width: min(100%, 300px);
  min-width: 210px;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 7px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="employee_id"] label {
  margin: 0;
  font-size: .72rem;
  white-space: nowrap;
}
html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="employee_id"] select {
  min-height: 36px;
  padding-block: 5px;
  font-size: .78rem;
}

@media (max-width: 720px) {
  html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-item,
  html[data-design-system="central-v2"][data-activity="techguys"] #main-navigation > .nav-group > .nav-group-toggle {
    min-height: 42px;
    font-size: .9rem;
  }
  html[data-design-system="central-v2"][data-activity="techguys"] .nav-subitem {
    min-height: 31px;
    font-size: .78rem;
  }

  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-metric {
    min-height: 66px;
    padding: 8px 10px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-metric strong {
    font-size: 1.08rem;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-filters {
    width: 100%;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="employee_id"] {
    width: 100%;
    min-width: 0;
    grid-template-columns: auto minmax(0,1fr);
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .filter-field[data-field-name="employee_id"] select {
    min-height: 38px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-table-heading {
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 7px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-table-heading > div:first-child {
    min-width: 120px;
    flex: 1 1 auto;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-table-heading__actions {
    flex: 0 1 auto;
    gap: 5px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .table-header-filter__select,
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .table-header-filter__month {
    min-height: 32px;
    max-width: 142px;
    padding: 4px 7px;
    font-size: .72rem;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .section-table-heading .table-count {
    min-height: 27px;
    font-size: .68rem;
  }

  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact {
    gap: 5px;
    padding: 8px 10px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__head {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__head > div:first-child {
    min-width: 0;
    flex: 1 1 auto;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__head h4 {
    margin: 0;
    font-size: .94rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__leave-status {
    min-height: 23px;
    padding: 3px 7px;
    font-size: .65rem;
    white-space: nowrap;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__leave-status::before {
    width: 5px;
    height: 5px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__open {
    min-width: 18px;
    font-size: .82rem;
    text-align: center;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .leave-request-compact__period {
    color: var(--tgm-text);
    font-size: .78rem;
    font-weight: 780;
    text-align: right;
    direction: ltr;
    unicode-bidi: isolate;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .leave-request-compact__facts {
    color: var(--tgm-text-muted-strong);
    font-size: .73rem;
    font-weight: 650;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-request-compact .record-card__body {
    margin-top: 1px;
    padding: 4px 0 0;
    border-radius: 0;
    background: transparent;
    color: var(--tgm-text-muted);
    font-size: .72rem;
    line-height: 1.4;
    -webkit-line-clamp: 2;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact .record-card__meta {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="leaves"] .record-card--leave-balance-list-compact .record-card__meta > div {
    min-height: 41px;
    padding: 4px 5px;
  }
}


/* ==========================================================================
   8.20.60 — Leave Detail + Recruitment PDF Preview + Bulk Sale UX
   ========================================================================== */
html[data-design-system="central-v2"] .modal-body--leave-request {
  gap: 10px;
  padding-block: 14px;
}
html[data-design-system="central-v2"] .modal-body--leave-request .detail-inline-status {
  margin: 0;
  justify-content: flex-start;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section {
  margin: 0;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section > h3 {
  margin: 0 0 7px;
  font-size: .92rem;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-summary-compact .presentation-metadata-grid {
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 7px;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-summary-compact .presentation-card,
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-decision .presentation-card,
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card {
  min-height: 58px;
  padding: 7px 9px;
  border-radius: 11px;
  background: var(--tgm-surface-inset);
  box-shadow: none;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-metadata-grid {
  grid-template-columns: 1fr;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card {
  min-height: 54px;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card > strong {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-decision .presentation-metadata-grid {
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 7px;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-reason .presentation-long-grid,
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-decision-note .presentation-long-grid {
  grid-template-columns: 1fr;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-reason .presentation-card,
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-decision-note .presentation-card {
  min-height: 0;
  padding: 11px 12px;
  border-radius: 12px;
}

html[data-design-system="central-v2"] .modal-field--compact-textarea textarea {
  min-height: 72px;
  max-height: 150px;
}
html[data-design-system="central-v2"] .device-bulk-sale__list {
  gap: 7px;
}
html[data-design-system="central-v2"] .device-bulk-sale__row {
  gap: 7px;
  padding: 9px 10px;
}
html[data-design-system="central-v2"] .device-bulk-sale__select {
  gap: 8px;
}
html[data-design-system="central-v2"] .device-bulk-sale__controls {
  gap: 6px;
}
html[data-design-system="central-v2"] .device-bulk-sale__all {
  min-height: 42px;
  padding-inline: 7px;
}

@media (max-width: 640px) {
  html[data-design-system="central-v2"] .modal-body--leave-request {
    gap: 8px;
    padding: 10px 11px;
  }
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-summary-compact .presentation-metadata-grid {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 6px !important;
  }
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-summary-compact .presentation-card,
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-decision .presentation-card,
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card {
    min-height: 54px !important;
    padding: 6px 7px !important;
    border-radius: 10px !important;
  }
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-decision .presentation-metadata-grid {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 6px !important;
  }
  html[data-design-system="central-v2"] .device-bulk-sale__controls {
    grid-template-columns: minmax(72px,.72fr) minmax(92px,.82fr) minmax(108px,1.15fr) !important;
    gap: 6px !important;
  }
  html[data-design-system="central-v2"] .device-bulk-sale__controls label:last-child {
    grid-column: auto !important;
  }
  html[data-design-system="central-v2"] .device-bulk-sale__controls label > span {
    font-size: .68rem;
    line-height: 1.2;
  }
  html[data-design-system="central-v2"] .device-bulk-sale__row {
    padding: 8px;
  }
  html[data-design-system="central-v2"] .modal-field--compact-textarea textarea {
    min-height: 66px !important;
  }
}

@media (max-width: 360px) {
  html[data-design-system="central-v2"] .device-bulk-sale__controls {
    grid-template-columns: 1fr 1fr !important;
  }
  html[data-design-system="central-v2"] .device-bulk-sale__controls label:last-child {
    grid-column: 1 / -1 !important;
  }
}


/* ==========================================================================
   8.20.61 — Device Sales Ledger + Central Custody Time Contract
   ========================================================================== */
html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] {
  padding: 8px;
  border: 1px solid var(--tgm-border-color);
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface-subtle);
}
html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .filter-field > span:first-child { display:none; }
html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .filter-field { margin:0; width:100%; }
html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 6px;
}
html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter__button {
  min-width: 0;
  min-height: 42px;
  padding: 7px 8px;
  border-radius: 11px;
  font-size: .82rem;
  font-weight: 800;
}
html[data-design-system="central-v2"] .section-workspace[data-section="device-ledger"] #section-actions {
  gap: 8px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="device-ledger"] #section-actions .management-action {
  min-height: 42px;
  padding: 8px 14px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="device-ledger"] .record-card--compact-device .record-card__meta {
  grid-template-columns: repeat(3,minmax(0,1fr));
}
html[data-design-system="central-v2"] .device-bulk-sale__grand-total {
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
  gap:8px;
  padding-top:10px;
  border-top:1px solid var(--tgm-accent-border);
}
html[data-design-system="central-v2"] .device-bulk-sale__grand-total > span {
  display:grid;
  gap:3px;
  padding:9px 10px;
  border:1px solid var(--tgm-border-color);
  border-radius:11px;
  background:var(--tgm-surface-raised);
}
html[data-design-system="central-v2"] .device-bulk-sale__grand-total small { color:var(--tgm-text-muted); font-size:.72rem; }
html[data-design-system="central-v2"] .device-bulk-sale__grand-total strong { font-size:1rem; }
html[data-design-system="central-v2"] .modal-body--device-sale .presentation-section { margin-block: 0; }
html[data-design-system="central-v2"] .modal-body--device-sale .presentation-section--variant-device-sale-summary .presentation-metadata-grid {
  grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px;
}
html[data-design-system="central-v2"] .modal-body--device-sale .presentation-section--variant-device-sale-total .presentation-metrics-grid {
  grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px;
}
@media(max-width:720px){
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter__button:nth-child(4),
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter__button:nth-child(5) {
    grid-column:auto;
  }
  html[data-design-system="central-v2"] .modal-body--device-sale .presentation-section--variant-device-sale-summary .presentation-metadata-grid,
  html[data-design-system="central-v2"] .modal-body--device-sale .presentation-section--variant-device-sale-total .presentation-metrics-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:430px){
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] { padding:6px; }
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter__button:last-child { grid-column:1/-1; }
  html[data-design-system="central-v2"] .device-bulk-sale__grand-total { grid-template-columns:1fr; }
}


/* 8.20.62 — Friday Deal Control + Connectivity Status Pill */


/* 8.20.63 — Friday Deal UX & Stock Safety */
@media (min-width: 900px) {
  html[data-design-system="central-v2"] .management-modal--store-offer {
    width: min(96vw, 1280px);
    max-height: min(94dvh, 1040px);
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-metadata-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card {
    min-height: 66px;
    padding: 10px 12px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .data-table {
    min-width: 1080px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-metrics-grid,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-metadata-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run-item .detail-product-image-box {
    max-height: 260px;
  }
}
html[data-design-system="central-v2"] .modal-body--store-run .presentation-section h3,
html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-section h3 {
  margin-block: 0 8px;
  font-size: .94rem;
}
html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary {
  padding: 10px;
  border: 1px solid var(--tgm-border-color);
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface-soft);
}
html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products {
  overflow: hidden;
  border-color: var(--tgm-accent-border-soft);
}
html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .product-name-cell {
  min-width: 250px;
}
html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .product-list-thumbnail {
  width: 42px; height: 42px; flex: 0 0 42px; border-radius: 10px; overflow: hidden;
  background: var(--tgm-surface-elevated); border: 1px solid var(--tgm-border-color);
}
html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .product-list-thumbnail img {
  width: 100%; height: 100%; object-fit: cover;
}
html[data-design-system="central-v2"] .modal-body--store-run-item .detail-product-image-box {
  min-height: 150px;
  border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface-soft);
}
html[data-design-system="central-v2"] .modal-body--store-run-item .detail-product-image {
  width: min(100%, 420px); max-height: 240px; object-fit: contain; margin-inline: auto;
}
html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-card {
  min-height: 72px; padding: 10px 12px;
}
html[data-design-system="central-v2"] .modal-body--store-run .detail-actions,
html[data-design-system="central-v2"] .modal-body--store-run-item .detail-actions {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 8px;
}
@media (max-width: 899px) {
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-metadata-grid,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-metrics-grid,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-metadata-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .detail-actions,
  html[data-design-system="central-v2"] .modal-body--store-run-item .detail-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 520px) {
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-metadata-grid,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-metrics-grid,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-metadata-grid {
    grid-template-columns: 1fr 1fr;
  }
}


/* 8.20.65 — Store & Friday Deal control cleanup */
@media (min-width: 900px) {
  html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .data-table td:first-child,
  html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .data-table th:first-child {
    min-width: 300px;
  }
  html[data-design-system="central-v2"] .presentation-section--variant-offer-template-core .presentation-metadata-grid,
  html[data-design-system="central-v2"] .presentation-section--variant-offer-template-schedule .presentation-metadata-grid,
  html[data-design-system="central-v2"] .presentation-section--variant-offer-template-scope .presentation-metadata-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px;
  }
}
html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products td:first-child {
  white-space: normal; line-height: 1.35;
}
html[data-design-system="central-v2"] .presentation-section--variant-offer-template-core,
html[data-design-system="central-v2"] .presentation-section--variant-offer-template-schedule,
html[data-design-system="central-v2"] .presentation-section--variant-offer-template-scope {
  padding: 10px; border: 1px solid var(--tgm-border-color); border-radius: var(--tgm-radius-lg); background: var(--tgm-surface-soft);
}


/* 8.20.66 — Friday Deal launch safety & final UX */
html[data-design-system="central-v2"] .presentation-section--variant-offer-preflight {
  padding: 10px; border: 1px solid var(--tgm-border-color); border-radius: var(--tgm-radius-lg);
  background: var(--tgm-surface-soft);
}
@media (min-width: 900px) {
  html[data-design-system="central-v2"] .presentation-section--variant-offer-preflight .presentation-metadata-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .product-name-cell {
    min-width: 320px; max-width: 520px;
  }
}

/* 8.20.68 — Offer Archive Hotfix + Mobile Offer UX Polish */
@media (max-width: 640px) {
  html[data-design-system="central-v2"] .section-workspace[data-section="store"] .section-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="store"] .section-metric {
    min-height: 82px;
    padding: 10px;
  }
  html[data-design-system="central-v2"] #section-actions[data-section="store"] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 7px;
    align-items: stretch;
  }
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action {
    min-height: 46px;
    padding: 8px 7px;
    font-size: .78rem;
    line-height: 1.25;
  }
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(1),
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(2),
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(3),
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(6),
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(7),
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(8) {
    grid-column: span 2;
  }
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(4),
  html[data-design-system="central-v2"] #section-actions[data-section="store"] .management-action:nth-child(5) {
    grid-column: span 3;
  }

  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-metadata-grid,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-metadata-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card {
    min-height: 52px;
    padding: 7px 8px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card > span,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card > span {
    font-size: .67rem;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card > strong,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card > strong {
    font-size: .82rem;
  }

  html[data-design-system="central-v2"] .record-card--store-offer-compact {
    padding: 10px;
    gap: 7px;
    border-radius: 14px;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: 8px;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__head > div {
    min-width: 0;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__head h4 {
    margin: 0;
    font-size: .9rem;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__eyebrow {
    font-size: .64rem;
    margin-bottom: 2px;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__open {
    font-size: 0;
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: var(--tgm-accent-soft);
    color: var(--tgm-accent);
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__open::after {
    content: "←";
    font-size: .78rem;
    font-weight: 900;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .product-list-thumbnail {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
    border-radius: 11px;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__meta > div {
    min-height: 44px;
    padding: 5px 7px;
    border-radius: 9px;
    align-content: center;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__meta span {
    font-size: .62rem;
    line-height: 1.2;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__meta strong {
    font-size: .76rem;
    line-height: 1.25;
  }
  html[data-design-system="central-v2"] .record-card--store-offer-compact .record-card__meta-emphasis strong {
    font-size: .86rem;
  }
}


/* 8.20.78 — Suites Inn responsive booking identity + calendar state polish. */
.suites-room-chip__top{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.suites-room-chip__top strong{font-size:1.08rem}.suites-room-chip__mode{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:900;line-height:1;background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);border:1px solid var(--tgm-accent-border)}.suites-room-chip__mode[data-mode="monthly"]{background:color-mix(in srgb,#8b5cf6 22%,var(--tgm-surface-inset));border-color:color-mix(in srgb,#8b5cf6 68%,var(--tgm-border-color));color:#d8c8ff}.suites-room-chip__mode[data-mode="daily"]{background:color-mix(in srgb,#2563eb 22%,var(--tgm-surface-inset));border-color:color-mix(in srgb,#3b82f6 70%,var(--tgm-border-color));color:#cfe0ff}.suites-room-chip__detail{display:grid;gap:4px;width:100%;text-align:start}.suites-room-chip__detail>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:800}.suites-room-chip__detail>small{font-size:.66rem;color:var(--tgm-text-muted)}
.suites-calendar-booking.is-active{border-color:color-mix(in srgb,var(--tgm-success-strong) 88%,var(--tgm-border-color));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tgm-success-strong) 30%,transparent)}.suites-calendar-booking.is-ended{border-color:#dc2626}
@media(min-width:901px){.suites-room-chip{min-height:104px;padding:11px 12px;place-items:stretch;text-align:start}.suites-room-chip>.suites-room-chip__status{justify-self:start}.suites-room-chip-grid{gap:10px}}
@media(max-width:900px){.suites-room-chip__detail{display:none}.suites-room-chip:has(.suites-room-chip__mode)>.suites-room-chip__status{display:none}.suites-room-chip:has(.suites-room-chip__mode){place-items:stretch}.suites-room-chip:has(.suites-room-chip__mode) .suites-room-chip__top{flex-direction:column;justify-content:center;gap:5px}.suites-room-chip:has(.suites-room-chip__mode) .suites-room-chip__mode{padding:3px 8px;min-height:22px;font-size:.66rem}.suites-room-chip:has(.suites-room-chip__mode) .suites-room-chip__top strong{font-size:1rem}}

/* 8.20.79 — central navigation receipt/duplicate-navigation guard. */
html.tgm-navigation-busy::after{
  content:"";
  position:fixed;
  z-index:2147483000;
  inset-block-start:0;
  inset-inline-start:0;
  width:38%;
  height:3px;
  pointer-events:none;
  border-radius:999px;
  background:var(--tgm-accent);
  box-shadow:0 0 10px color-mix(in srgb,var(--tgm-accent) 45%,transparent);
  animation:tgm-navigation-receipt 1.05s ease-in-out infinite alternate;
}
@keyframes tgm-navigation-receipt{from{transform:translateX(0);opacity:.58}to{transform:translateX(160%);opacity:1}}
@media(prefers-reduced-motion:reduce){html.tgm-navigation-busy::after{animation:none;width:100%;opacity:.72}}


/* 8.20.80 — Central Motion / iOS-like micro-interactions.
 * Pure compositor-friendly motion only (opacity/transform); no timer, worker or
 * background activity is introduced. The existing Web/PWA shell remains the owner.
 */
:where(button:not(:disabled), a[href], [role="button"]:not([aria-disabled="true"])) {
  -webkit-tap-highlight-color: transparent;
}
:where(button:not(:disabled), a[href], [role="button"]:not([aria-disabled="true"])):active {
  opacity: .84;
}
#overview-content.is-revealing,
.section-workspace.is-revealing,
#assistant-workspace.is-revealing,
#suites-workspace.is-revealing {
  animation: tgm-central-view-enter var(--tgm-motion-normal) var(--tgm-ease);
}
@keyframes tgm-central-view-enter {
  from { opacity: .74; transform: translate3d(0, 6px, 0) scale(.998); }
  to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  :root { --tgm-motion-fast: 1ms; --tgm-motion-normal: 1ms; --tgm-motion-slow: 1ms; }
  #overview-content.is-revealing,
  .section-workspace.is-revealing,
  #assistant-workspace.is-revealing,
  #suites-workspace.is-revealing { animation: none !important; }
  :where(button:not(:disabled), a[href], [role="button"]:not([aria-disabled="true"])):active { opacity: 1; }
}


/* 8.20.81 — Central Light Theme Contrast + Visual Consistency Polish.
 * Extends the existing Central Design System only. No business logic, worker,
 * timer, network path or permission surface is introduced.
 */
html[data-theme="light"] {
  --tgm-text-muted: #586579;
  --tgm-text-muted-strong: #344054;
  --tgm-text-subtle: #7a8798;
  --tgm-text-disabled: #8993a3;
  --tgm-border-color: #d9dee7;
  --tgm-border-strong-color: #c7ced9;
  --tgm-border-subtle-color: #eaedf2;
}

/* The Assistant home card owns a dark welcome-card ancestor style. In Light
   mode it must return to a true light surface instead of dark text on navy. */
html[data-theme="light"][data-design-system="central-v2"] .ai-home-hero {
  color: var(--tgm-text);
  background:
    radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--tgm-accent) 12%, transparent), transparent 40%),
    linear-gradient(135deg, var(--tgm-surface), color-mix(in srgb, var(--tgm-accent-soft) 58%, var(--tgm-surface)));
  border-color: var(--tgm-accent-border-soft);
}
html[data-theme="light"][data-design-system="central-v2"] .ai-home-hero h2 {
  color: var(--tgm-text);
}
html[data-theme="light"][data-design-system="central-v2"] .ai-home-hero .ai-home-copy {
  color: var(--tgm-text-muted-strong);
}
html[data-theme="light"][data-design-system="central-v2"] .ai-home-hero .welcome-badge {
  background: var(--tgm-accent-soft);
  color: var(--tgm-accent-strong);
  border: 1px solid var(--tgm-accent-border-soft);
}
html[data-theme="light"][data-design-system="central-v2"] .ai-home-hero .healthy-badge {
  color: var(--tgm-success-strong);
  background: var(--tgm-success-soft);
  border: 1px solid var(--tgm-success-border);
}

/* Mobile service strips keep a small protected edge and always reveal the
   currently active service. app.js performs the actual active-tab centering. */
@media (max-width: 760px) {
  html[data-design-system="central-v2"] .section-workspace[data-section] .section-services {
    box-sizing: border-box;
    padding-inline: 10px;
    scroll-padding-inline: 10px;
  }
}

/* Suites status/mode chips need readable semantic color in Light mode. Dark
   mode keeps the existing luminous palette. */
html[data-theme="light"] .suites-room-chip__mode[data-mode="monthly"] {
  background: #f3efff;
  border-color: #a78bfa;
  color: #6d28d9;
}
html[data-theme="light"] .suites-room-chip__mode[data-mode="daily"] {
  background: #eff6ff;
  border-color: #60a5fa;
  color: #1d4ed8;
}
html[data-theme="light"] .suites-room-chip--ready .suites-room-chip__status {
  color: var(--tgm-success-strong);
  font-weight: 800;
}
html[data-theme="light"] .suites-floor-card__head span,
html[data-theme="light"] .suites-room-chip__detail > small,
html[data-theme="light"] .suites-room-chip small {
  color: var(--tgm-text-muted-strong);
}

/* Numeric-only presentation values are direction-isolated so negative values
   remain visually correct inside RTL cards (−6,164 rather than 6,164-). */
html[data-design-system="central-v2"] .presentation-card[data-value-kind="numeric"] > strong,
html[data-design-system="central-v2"] .detail-transaction__top > b {
  direction: ltr;
  unicode-bidi: isolate;
  font-variant-numeric: tabular-nums;
}

/* Generic secondary copy and borders in Light mode must remain readable on the
   white canvas without making the interface visually heavy. */
html[data-theme="light"][data-design-system="central-v2"] :is(
  .section-hero p,
  .section-note,
  .record-card__meta,
  .presentation-card > span,
  .presentation-card > small,
  .smart-section__description,
  .stat-card__copy > span,
  .stat-card__copy > small
) {
  color: var(--tgm-text-muted);
}


/* 8.20.83 — Central Settings Picker + Light Theme Surface Assurance.
 * Extends the existing Web/PWA shell and Central Design System only; no worker,
 * timer, background sync, permission surface or extra network polling.
 */
html[data-design-system="central-v2"] .modal-body--settings-picker{display:block!important}
html[data-design-system="central-v2"] .settings-picker{display:grid;gap:12px;width:100%}
html[data-design-system="central-v2"] .settings-picker__intro{display:grid;gap:4px;padding:2px 2px 4px}
html[data-design-system="central-v2"] .settings-picker__intro>strong{font-size:1rem;color:var(--tgm-text)}
html[data-design-system="central-v2"] .settings-picker__intro>small{color:var(--tgm-text-muted);line-height:1.55}
html[data-design-system="central-v2"] .settings-picker__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
html[data-design-system="central-v2"] .settings-picker__card{min-width:0;min-height:76px;padding:11px 12px;border:1px solid var(--tgm-border-color);border-radius:15px;background:var(--tgm-surface);color:var(--tgm-text);display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:start;cursor:pointer}
html[data-design-system="central-v2"] .settings-picker__card.is-active{border-color:var(--tgm-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tgm-accent) 34%,transparent);background:color-mix(in srgb,var(--tgm-accent-soft) 58%,var(--tgm-surface))}
html[data-design-system="central-v2"] .settings-picker__card-copy{display:grid;gap:5px;min-width:0}
html[data-design-system="central-v2"] .settings-picker__card-copy>strong{font-size:.9rem;line-height:1.45}
html[data-design-system="central-v2"] .settings-picker__card-copy>small{font-size:.74rem;color:var(--tgm-text-muted-strong)}
html[data-design-system="central-v2"] .settings-picker__arrow{color:var(--tgm-accent);font-weight:900;font-size:1.05rem}
html[data-design-system="central-v2"] .settings-picker__editor{display:grid;gap:8px;padding:12px;border:1px solid var(--tgm-accent-border-soft);border-radius:16px;background:var(--tgm-surface-raised)}
html[data-design-system="central-v2"] .settings-picker__editor-title{font-size:.96rem}
html[data-design-system="central-v2"] .settings-picker__editor-meta{color:var(--tgm-text-muted-strong)}
html[data-design-system="central-v2"] .settings-picker__control{display:flex;align-items:center;gap:8px;min-width:0}
html[data-design-system="central-v2"] .settings-picker__input{flex:1;min-width:0}
html[data-design-system="central-v2"] .settings-picker__unit{font-size:.8rem;color:var(--tgm-text-muted-strong);white-space:nowrap}
html[data-design-system="central-v2"] .settings-picker__segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
html[data-design-system="central-v2"] .settings-picker__choice{min-height:44px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface);color:var(--tgm-text);font-weight:800}
html[data-design-system="central-v2"] .settings-picker__choice.is-active{border-color:var(--tgm-accent);background:var(--tgm-accent-soft);color:var(--tgm-accent-strong)}
html[data-design-system="central-v2"] .settings-picker__empty{grid-column:1/-1;margin:0;color:var(--tgm-text-muted)}
@media(max-width:680px){html[data-design-system="central-v2"] .settings-picker__grid{grid-template-columns:1fr}html[data-design-system="central-v2"] .settings-picker__card{min-height:70px}}

/* Recruitment cards were still inheriting dark raised surfaces in Light mode.
   Keep semantic gender/status colors, but return the card canvas to the central
   Light surface so names and metadata stay readable. */
html[data-theme="light"][data-design-system="central-v2"] :is(.recruitment-card,.recruitment-state-tab,.recruitment-access-note,.recruitment-qr-card__url){background:var(--tgm-surface);color:var(--tgm-text);border-color:var(--tgm-border-color)}
html[data-theme="light"][data-design-system="central-v2"] .recruitment-state-tab.is-active{background:var(--tgm-accent-soft);border-color:var(--tgm-accent)}
html[data-theme="light"][data-design-system="central-v2"] .recruitment-card__role{color:var(--tgm-text-muted-strong)}
html[data-theme="light"][data-design-system="central-v2"] :is(.recruitment-card__meta,.recruitment-card__interview,.recruitment-access-note span){color:var(--tgm-text-muted)}
html[data-theme="light"][data-design-system="central-v2"] .recruitment-card__score{background:#f3efff;color:#6d28d9}
html[data-theme="light"][data-design-system="central-v2"] .recruitment-card__gender--male{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}
html[data-theme="light"][data-design-system="central-v2"] .recruitment-card__gender--female{background:#fdf2f8;border-color:#f9a8d4;color:#be185d}


/* 8.20.84 — Inline Settings Editor + Risk-Based Step-up UX.
 * Keeps the existing central shell: no new worker, timer, background sync or
 * polling. The editor lives immediately under the selected setting card.
 */
html[data-design-system="central-v2"] .settings-picker--inline .settings-picker__grid{align-items:start}
html[data-design-system="central-v2"] .settings-picker__item{display:grid;gap:7px;min-width:0}
html[data-design-system="central-v2"] .settings-picker__item .settings-picker__card{width:100%}
html[data-design-system="central-v2"] .settings-picker__editor--inline{padding:10px 11px 12px;border-radius:14px;background:color-mix(in srgb,var(--tgm-surface-raised) 90%,var(--tgm-accent-soft));animation:tgm-settings-inline-reveal 150ms ease-out both}
html[data-design-system="central-v2"] .settings-picker__editor--inline[hidden]{display:none!important}
html[data-design-system="central-v2"] .settings-picker__item:has(.settings-picker__card.is-active){padding:1px;border-radius:16px;background:color-mix(in srgb,var(--tgm-accent) 12%,transparent)}
html[data-design-system="central-v2"] .settings-picker__card[aria-expanded="true"] .settings-picker__arrow{transform:translateY(1px);font-size:.95rem}
html[data-design-system="central-v2"] .settings-picker__editor--inline .settings-picker__editor-meta{font-size:.76rem;line-height:1.45}
html[data-design-system="central-v2"] .settings-picker__editor--inline .settings-picker__input{min-height:46px;font-size:1rem}
@keyframes tgm-settings-inline-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){html[data-design-system="central-v2"] .settings-picker__editor--inline{animation:none}}
@media(max-width:680px){html[data-design-system="central-v2"] .settings-picker--inline .settings-picker__grid{gap:9px}html[data-design-system="central-v2"] .settings-picker__editor--inline{margin-inline:1px}}

/* 8.21.11 — Government Documents Center V1 UX closure.
 * Specialized presentation only: central permissions, storage, upload API,
 * Online-first behavior and document lifecycle remain unchanged. */
html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-hero {
  min-height:0;
  padding-block:10px 12px;
  margin-bottom:8px;
  align-items:center;
}
html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-hero h2 {
  margin-top:2px;
  font-size:clamp(1.25rem,2vw,1.65rem);
  line-height:1.25;
}
html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-hero p {
  margin-top:3px;
  font-size:.78rem;
  line-height:1.45;
  max-width:720px;
}
html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-kicker {
  font-size:.68rem;
}
html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-controlbar,
html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] > .section-metrics,
html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] > .section-note {
  display:none!important;
}
html[data-design-system="central-v2"] .government-documents-workspace {
  display:grid;
  gap:10px;
  width:100%;
}
html[data-design-system="central-v2"] .government-documents-toolbar {
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto auto;
  gap:8px;
  align-items:center;
}
html[data-design-system="central-v2"] .government-documents-toolbar.has-branch {
  grid-template-columns:minmax(260px,1fr) minmax(150px,220px) auto auto;
}
html[data-design-system="central-v2"] .government-documents-search {
  min-height:44px;
  display:flex;
  align-items:center;
  gap:8px;
  padding-inline:12px;
  border:var(--tgm-border);
  border-radius:var(--tgm-radius-md);
  background:var(--tgm-surface);
  color:var(--tgm-text-muted);
  transition:border-color var(--tgm-motion-fast) var(--tgm-ease),box-shadow var(--tgm-motion-fast) var(--tgm-ease);
}
html[data-design-system="central-v2"] .government-documents-search:focus-within {
  border-color:var(--tgm-accent-border);
  box-shadow:0 0 0 3px var(--tgm-focus-ring);
}
html[data-design-system="central-v2"] .government-documents-search > span {
  font-size:1.15rem;
  font-weight:900;
}
html[data-design-system="central-v2"] .government-documents-search input,
html[data-design-system="central-v2"] .government-documents-branch select,
html[data-design-system="central-v2"] .government-documents-advanced__field select {
  width:100%;
  min-width:0;
  min-height:42px;
  border:0;
  outline:0;
  background:transparent;
  color:var(--tgm-text);
  font:inherit;
}
html[data-design-system="central-v2"] .government-documents-search input {
  min-height:40px;
  padding:0;
}
html[data-design-system="central-v2"] .government-documents-branch {
  min-height:44px;
  display:flex;
  align-items:center;
  padding-inline:10px;
  border:var(--tgm-border);
  border-radius:var(--tgm-radius-md);
  background:var(--tgm-surface);
}
html[data-design-system="central-v2"] .government-documents-filter-button,
html[data-design-system="central-v2"] .government-documents-clear-filter,
html[data-design-system="central-v2"] .government-document-row__action {
  min-height:38px;
  padding:7px 12px;
  border:var(--tgm-border);
  border-radius:var(--tgm-radius-sm);
  background:var(--tgm-surface);
  color:var(--tgm-text-muted-strong);
  font:inherit;
  font-size:.78rem;
  font-weight:800;
  cursor:pointer;
}
html[data-design-system="central-v2"] .government-documents-filter-button {
  min-height:44px;
  white-space:nowrap;
}
html[data-design-system="central-v2"] .government-documents-filter-button.is-active,
html[data-design-system="central-v2"] .government-documents-filter-button[aria-expanded="true"] {
  border-color:var(--tgm-accent-border);
  background:var(--tgm-accent-soft);
  color:var(--tgm-accent-strong);
}
html[data-design-system="central-v2"] .government-documents-upload {
  min-height:44px;
  white-space:nowrap;
}
html[data-design-system="central-v2"] .government-documents-advanced {
  padding:10px;
  border:var(--tgm-border);
  border-radius:var(--tgm-radius-md);
  background:var(--tgm-surface-soft);
  animation:tgm-government-filter-reveal var(--tgm-motion-fast) var(--tgm-ease) both;
}
html[data-design-system="central-v2"] .government-documents-advanced[hidden] { display:none!important; }
html[data-design-system="central-v2"] .government-documents-advanced__grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
html[data-design-system="central-v2"] .government-documents-advanced__field {
  display:grid;
  gap:4px;
  padding:5px 10px 2px;
  border:var(--tgm-border);
  border-radius:12px;
  background:var(--tgm-surface);
}
html[data-design-system="central-v2"] .government-documents-advanced__field > span {
  font-size:.68rem;
  color:var(--tgm-text-muted);
  font-weight:700;
}
html[data-design-system="central-v2"] .government-documents-clear-filter {
  margin-top:8px;
  min-height:34px;
}
html[data-design-system="central-v2"] .government-documents-summary {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
}
html[data-design-system="central-v2"] .government-documents-summary__item {
  min-width:0;
  min-height:58px;
  padding:8px 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  border:var(--tgm-border);
  border-radius:13px;
  background:var(--tgm-surface);
  color:var(--tgm-text);
  text-align:start;
  cursor:pointer;
  transition:transform var(--tgm-motion-fast) var(--tgm-ease),border-color var(--tgm-motion-fast) var(--tgm-ease),background var(--tgm-motion-fast) var(--tgm-ease);
}
html[data-design-system="central-v2"] .government-documents-summary__item > span {
  min-width:0;
  font-size:.74rem;
  color:var(--tgm-text-muted-strong);
}
html[data-design-system="central-v2"] .government-documents-summary__item > strong {
  font-size:1.16rem;
  font-variant-numeric:tabular-nums;
}
html[data-design-system="central-v2"] .government-documents-summary__item.is-active {
  border-color:var(--tgm-accent-border);
  background:var(--tgm-accent-soft);
}
html[data-design-system="central-v2"] .government-documents-summary__item[data-tone="success"] > strong { color:var(--tgm-success-strong); }
html[data-design-system="central-v2"] .government-documents-summary__item[data-tone="warning"] > strong { color:var(--tgm-warning-strong); }
html[data-design-system="central-v2"] .government-documents-summary__item[data-tone="danger"] > strong { color:var(--tgm-danger-strong); }
html[data-design-system="central-v2"] .government-documents-summary__item[data-tone="info"] > strong { color:var(--tgm-info-strong); }
html[data-design-system="central-v2"] .government-documents-result-meta {
  min-height:20px;
  display:flex;
  align-items:center;
  color:var(--tgm-text-muted);
  font-size:.74rem;
}
html[data-design-system="central-v2"] .government-documents-list {
  display:grid;
  gap:7px;
}
html[data-design-system="central-v2"] .government-document-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:9px 10px;
  border:var(--tgm-border);
  border-radius:var(--tgm-radius-md);
  background:var(--tgm-surface);
  box-shadow:var(--tgm-shadow-sm);
}
html[data-design-system="central-v2"] .government-document-row__main {
  min-width:0;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:0;
  border:0;
  background:transparent;
  color:var(--tgm-text);
  text-align:start;
  cursor:pointer;
}
html[data-design-system="central-v2"] .government-document-row__icon {
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:var(--tgm-surface-soft);
  border:var(--tgm-border);
  font-size:1.25rem;
}
html[data-design-system="central-v2"] .government-document-row__copy { min-width:0; display:grid; gap:3px; }
html[data-design-system="central-v2"] .government-document-row__heading {
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
}
html[data-design-system="central-v2"] .government-document-row__heading > strong {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.93rem;
}
html[data-design-system="central-v2"] .government-document-row__copy > small {
  color:var(--tgm-text-muted);
  font-size:.7rem;
}
html[data-design-system="central-v2"] .government-document-row__status { flex:0 0 auto; }
html[data-design-system="central-v2"] .government-document-row__facts {
  display:flex;
  flex-wrap:wrap;
  gap:4px 12px;
  margin-top:2px;
  color:var(--tgm-text-muted-strong);
  font-size:.7rem;
}
html[data-design-system="central-v2"] .government-document-row__facts b {
  color:var(--tgm-text-muted);
  font-weight:700;
  margin-inline-end:3px;
}
html[data-design-system="central-v2"] .government-document-row__actions {
  display:flex;
  align-items:center;
  gap:5px;
}
html[data-design-system="central-v2"] .government-document-row__action {
  min-height:34px;
  padding:6px 9px;
  font-size:.7rem;
}
html[data-design-system="central-v2"] .government-document-row__action--more {
  border-color:var(--tgm-accent-border-soft);
  color:var(--tgm-accent-strong);
}
html[data-design-system="central-v2"] .government-documents-empty { margin:0; }

html[data-design-system="central-v2"] .modal-body--government-document-upload {
  gap:9px;
}
html[data-design-system="central-v2"] .modal-body--government-document-upload .modal-field {
  padding:9px 10px;
  border:var(--tgm-border);
  border-radius:12px;
  background:var(--tgm-surface-soft);
}
html[data-design-system="central-v2"] .modal-body--government-document-upload .modal-field > span:first-child {
  font-weight:800;
  color:var(--tgm-text-muted-strong);
}
html[data-design-system="central-v2"] .government-document-upload-preview {
  grid-column:1/-1;
  min-height:72px;
  display:grid;
  gap:8px;
  padding:10px;
  border:1px dashed var(--tgm-border-strong-color);
  border-radius:13px;
  background:var(--tgm-surface);
  overflow:hidden;
}
html[data-design-system="central-v2"] .government-document-upload-preview__empty {
  align-self:center;
  color:var(--tgm-text-muted);
  font-size:.78rem;
  line-height:1.5;
}
html[data-design-system="central-v2"] .government-document-upload-preview__meta {
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
html[data-design-system="central-v2"] .government-document-upload-preview__meta strong {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.82rem;
}
html[data-design-system="central-v2"] .government-document-upload-preview__meta small {
  flex:0 0 auto;
  color:var(--tgm-text-muted);
  font-variant-numeric:tabular-nums;
}
html[data-design-system="central-v2"] .government-document-upload-preview__image,
html[data-design-system="central-v2"] .government-document-upload-preview__pdf {
  width:100%;
  max-height:260px;
  border:0;
  border-radius:10px;
  background:var(--tgm-surface-inset);
  object-fit:contain;
}
html[data-design-system="central-v2"] .government-document-upload-preview__pdf { height:240px; }

@keyframes tgm-government-filter-reveal {
  from { opacity:0; transform:translateY(-3px); }
  to { opacity:1; transform:translateY(0); }
}
@media (prefers-reduced-motion:reduce) {
  html[data-design-system="central-v2"] .government-documents-advanced { animation:none; }
}
@media (hover:hover) {
  html[data-design-system="central-v2"] .government-document-row:hover,
  html[data-design-system="central-v2"] .government-documents-summary__item:hover {
    border-color:var(--tgm-border-strong-color);
  }
  html[data-design-system="central-v2"] .government-documents-summary__item:hover { transform:translateY(-1px); }
}
@media (max-width:900px) {
  html[data-design-system="central-v2"] .government-documents-toolbar.has-branch {
    grid-template-columns:minmax(0,1fr) auto auto;
  }
  html[data-design-system="central-v2"] .government-documents-branch {
    grid-column:1/-1;
    grid-row:2;
  }
}
@media (max-width:720px) {
  html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-hero {
    padding-block:6px 8px;
    margin-bottom:5px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-hero p,
  html[data-design-system="central-v2"] .section-workspace[data-section="government-documents"] .section-kicker {
    display:none;
  }
  html[data-design-system="central-v2"] .government-documents-workspace { gap:8px; }
  html[data-design-system="central-v2"] .government-documents-toolbar {
    grid-template-columns:minmax(0,1fr) auto;
    gap:7px;
  }
  html[data-design-system="central-v2"] .government-documents-search { grid-column:1/-1; min-height:43px; }
  html[data-design-system="central-v2"] .government-documents-branch { grid-column:1/-1; grid-row:auto; min-height:40px; }
  html[data-design-system="central-v2"] .government-documents-filter-button,
  html[data-design-system="central-v2"] .government-documents-upload { min-height:40px; }
  html[data-design-system="central-v2"] .government-documents-summary {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  html[data-design-system="central-v2"] .government-documents-summary__item {
    min-height:48px;
    padding:7px 9px;
  }
  html[data-design-system="central-v2"] .government-documents-summary__item > span { font-size:.68rem; }
  html[data-design-system="central-v2"] .government-documents-summary__item > strong { font-size:1.02rem; }
  html[data-design-system="central-v2"] .government-documents-advanced__grid { grid-template-columns:1fr; }
  html[data-design-system="central-v2"] .government-document-row {
    grid-template-columns:1fr;
    gap:7px;
    padding:9px;
  }
  html[data-design-system="central-v2"] .government-document-row__main { grid-template-columns:38px minmax(0,1fr); gap:8px; }
  html[data-design-system="central-v2"] .government-document-row__icon { width:38px; height:38px; border-radius:10px; font-size:1.1rem; }
  html[data-design-system="central-v2"] .government-document-row__heading { align-items:flex-start; }
  html[data-design-system="central-v2"] .government-document-row__heading > strong { font-size:.87rem; white-space:normal; line-height:1.35; }
  html[data-design-system="central-v2"] .government-document-row__facts { gap:3px 9px; font-size:.66rem; }
  html[data-design-system="central-v2"] .government-document-row__actions { justify-content:flex-end; border-top:var(--tgm-border); padding-top:7px; }
  html[data-design-system="central-v2"] .government-document-row__action { flex:1; max-width:110px; min-height:32px; }
  html[data-design-system="central-v2"] .government-document-upload-preview__pdf { height:190px; }
}
\n\n/* 8.20.87 — Smart daily sales reconciliation archive + mobile density.\n * Visual-only rules; no polling, worker, timer or background mutation. */\nhtml[data-design-system="central-v2"] .sales-audit-period-tools{\n  display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 2px;\n}\nhtml[data-design-system="central-v2"] .sales-audit-period-toggle,\nhtml[data-design-system="central-v2"] .sales-audit-period-clear{\n  min-height:34px;padding:6px 12px;border:var(--tgm-border);border-radius:999px;\n  background:var(--tgm-surface);color:var(--tgm-text-muted-strong);font:inherit;font-weight:800;cursor:pointer;\n}\nhtml[data-design-system="central-v2"] .sales-audit-period-toggle.is-active{\n  border-color:var(--tgm-accent-border);background:var(--tgm-accent-soft);color:var(--tgm-accent-strong);\n}\n@media (max-width:720px){\n  html[data-design-system="central-v2"] .section-workspace[data-section="sales"] .section-metrics{\n    grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;\n  }\n  html[data-design-system="central-v2"] .section-workspace[data-section="sales"] .section-metric{\n    min-height:76px;padding:9px 10px;border-radius:16px;\n  }\n  html[data-design-system="central-v2"] .section-workspace[data-section="sales"] .section-metric span{font-size:.7rem;line-height:1.2}\n  html[data-design-system="central-v2"] .section-workspace[data-section="sales"] .section-metric strong{font-size:1.18rem;line-height:1.15;margin:3px 0}\n  html[data-design-system="central-v2"] .section-workspace[data-section="sales"] .section-metric small{font-size:.65rem;line-height:1.25}\n  html[data-design-system="central-v2"] .section-workspace[data-section="sales"] .sales-audit-period-tools{margin-inline:auto}\n  html[data-design-system="central-v2"] .section-table-card--mobile-sales-audit-day-compact .section-table-heading{padding-bottom:8px}\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact{\n    padding:10px 11px;border-radius:16px;gap:7px;min-height:0;\n  }\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact .record-card__head{align-items:center;gap:8px}\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact .record-card__head h4{font-size:1rem;line-height:1.2;margin:0}\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact .record-card__open{font-size:.68rem;white-space:nowrap}\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact .record-card__meta{\n    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:0;\n  }\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact .record-card__meta>div{\n    min-width:0;padding:6px 5px;border-radius:10px;background:color-mix(in srgb,var(--tgm-surface-raised) 82%,transparent);\n  }\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact .record-card__meta span{font-size:.59rem;line-height:1.15}\n  html[data-design-system="central-v2"] .record-card--sales-audit-day-compact .record-card__meta strong{font-size:.76rem;line-height:1.2;overflow-wrap:anywhere}\n}\n
/* 8.21.28 — Smart Notification V1 priority + safe grouping */
.notification-item__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.notification-priority{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:.68rem;font-weight:900;border:1px solid var(--tgm-border-color);background:var(--tgm-surface-inset);color:var(--tgm-text-muted)}
.notification-priority--urgent{background:var(--status-danger-bg);color:var(--tgm-danger-strong);border-color:color-mix(in srgb,var(--tgm-danger) 38%,var(--tgm-border-color))}
.notification-priority--decision{background:var(--status-warning-bg);color:var(--tgm-warning-strong);border-color:color-mix(in srgb,var(--tgm-warning) 38%,var(--tgm-border-color))}
.notification-priority--follow_up{background:var(--tgm-accent-soft);color:var(--tgm-accent-soft-text);border-color:var(--tgm-accent-border)}
.notification-priority--info{background:var(--status-info-bg);color:var(--tgm-info-strong)}
.notification-item.is-grouped{border-style:dashed}

/* ==========================================================================
   8.21.39 — leave decision compact header + visible rejection reason UX
   ========================================================================== */
html[data-design-system="central-v2"] .management-modal--leave-request .modal-header>div:first-child{
  flex:1 1 auto;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  column-gap:8px;
}
html[data-design-system="central-v2"] .management-modal--leave-request .modal-header .section-kicker{
  grid-column:1/-1;
}
html[data-design-system="central-v2"] .management-modal--leave-request #modal-title{
  grid-column:1;
  grid-row:2;
  margin:3px 0 0;
  text-align:right;
}
html[data-design-system="central-v2"] .management-modal--leave-request .detail-header-status{
  grid-column:2;
  grid-row:2;
  margin:3px 0 0!important;
  justify-content:flex-start!important;
}
html[data-design-system="central-v2"] .management-modal--leave-request #modal-subtitle{
  grid-column:1/-1;
}
html[data-design-system="central-v2"] .modal-body--leave-request{
  gap:7px;
  padding-block:10px;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section>h3{
  margin-bottom:5px;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-summary-compact .presentation-card,
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card{
  min-height:48px;
  padding:6px 8px;
}
html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card>strong{
  font-size:1.08rem;
  font-weight:900;
  letter-spacing:.01em;
}
@media(max-width:640px){
  html[data-design-system="central-v2"] .management-modal--leave-request .modal-header{padding:11px 12px 9px}
  html[data-design-system="central-v2"] .management-modal--leave-request #modal-title{font-size:1.14rem}
  html[data-design-system="central-v2"] .management-modal--leave-request .detail-header-status .status-badge{font-size:.68rem;padding:4px 7px}
  html[data-design-system="central-v2"] .modal-body--leave-request{gap:6px!important;padding:8px 10px!important}
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-summary-compact .presentation-card,
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card{min-height:46px!important;padding:5px 7px!important}
  html[data-design-system="central-v2"] .modal-body--leave-request .presentation-section--variant-leave-request-period .presentation-card>strong{font-size:1.05rem!important}
}


/* 8.21.42 — User-approved administrative correspondence layout.
   Dedicated components intentionally do not inherit generic .presentation-card
   density/font selectors. No change to decision or finance semantics. */
html[data-design-system="central-v2"] .management-modal--management-submission .modal-header {
  display:grid; grid-template-columns:32px auto minmax(0,1fr);
  grid-template-areas:"close status copy"; align-items:center;
  gap:10px; direction:ltr; padding:16px 14px;
}
html[data-design-system="central-v2"] .management-modal--management-submission .modal-header>div:first-child {
  grid-area:copy; direction:rtl; text-align:right; min-width:0; align-self:center;
}
html[data-design-system="central-v2"] .management-modal--management-submission #modal-kicker {
  display:block; font-size:.65rem; line-height:1.5; margin:0 0 6px; color:var(--tgm-text-muted);
}
html[data-design-system="central-v2"] .management-modal--management-submission #modal-title {
  margin:0; font-size:clamp(1.05rem,4.8vw,1.45rem); line-height:1.5; font-weight:900; overflow-wrap:normal;
}
html[data-design-system="central-v2"] .management-modal--management-submission .modal-header>.modal-close {
  grid-area:close; width:32px; height:36px; min-width:32px; min-height:36px;
  align-self:start; margin:0; padding:0; display:grid; place-items:center;
}
html[data-design-system="central-v2"] .management-modal--management-submission .detail-header-status--management-submission {
  grid-area:status; display:flex; flex-direction:column; align-items:flex-start;
  justify-self:start; align-self:center; direction:ltr; gap:6px; margin:0;
}
html[data-design-system="central-v2"] .management-modal--management-submission .detail-header-status--management-submission .status-badge {
  direction:rtl; font-size:.65rem; padding:5px 8px; line-height:1.5; white-space:nowrap;
}
html[data-design-system="central-v2"] .management-modal--management-submission #modal-subtitle {
  display:inline-flex; align-items:center; direction:rtl; margin:0; padding:3px 10px;
  border-radius:999px; font-size:.69rem; line-height:1.5; font-weight:800;
  color:var(--tgm-accent-strong); background:var(--tgm-accent-soft); width:max-content;
}
html[data-design-system="central-v2"] .management-modal--management-submission #modal-subtitle[hidden] { display:none!important; }
html[data-design-system="central-v2"] .modal-body--management-submission {
  display:grid; gap:16px; padding:14px; direction:rtl;
}
.submission-panel { min-width:0; padding:12px; border:1px solid var(--tgm-border-color); border-radius:18px; background:var(--tgm-surface-soft); }
.submission-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.submission-summary-card { min-width:0; display:flex; align-items:center; gap:8px; padding:12px 10px; border:1px solid var(--tgm-border-color); border-radius:14px; background:var(--tgm-surface); }
.submission-field-copy { min-width:0; display:grid; gap:5px; text-align:right; }
.submission-field-label { color:var(--tgm-text-muted); font-size:.72rem; line-height:1.5; font-weight:600; }
.submission-field-value { display:block; min-width:0; color:var(--tgm-text); font-size:1rem; line-height:1.6; font-weight:800; overflow-wrap:anywhere; }
.submission-icon { width:32px; height:36px; flex:0 0 32px; display:inline-grid; place-items:center; border-radius:10px; background:var(--tgm-accent-softer); color:var(--tgm-accent-strong); }
.submission-icon svg { width:21px; height:21px; }
.submission-amount-grid, .submission-details-grid { display:grid; gap:10px; min-width:0; }
.submission-panel--amount { padding:0; border-color:var(--tgm-accent); background:linear-gradient(135deg,var(--tgm-accent-soft),var(--tgm-surface)); }
.submission-amount-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; min-height:94px; padding:16px 14px; gap:12px; direction:rtl; }
.submission-amount-label { display:flex; align-items:center; gap:8px; min-width:0; align-self:stretch; border-inline-end:1px solid var(--tgm-accent-border-soft); padding-inline-end:10px; }
.submission-amount-label .submission-field-label { font-size:.9rem; font-weight:800; color:var(--tgm-accent-strong); }
.submission-amount-value { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; gap:.22em; direction:ltr; unicode-bidi:isolate; white-space:nowrap; text-align:left; font-size:clamp(2.1rem,9.5vw,3.6rem); line-height:1.15; font-weight:900; font-variant-numeric:tabular-nums; overflow-wrap:normal; }
.submission-amount-value bdi { font:inherit; color:var(--tgm-text); }
.submission-riyal { color:var(--tgm-accent-strong); font-size:.72em; line-height:1; flex:0 0 auto; }
.submission-amount-card[data-amount-size="long"] { grid-template-columns:1fr; }
.submission-amount-card[data-amount-size="long"] .submission-amount-label { border:0; padding:0; }
.submission-amount-card[data-amount-size="long"] .submission-amount-value { justify-self:start; font-size:clamp(1.65rem,6.8vw,2.8rem); }
.submission-details-card { min-width:0; display:grid; gap:10px; }
.submission-details-heading { display:flex; align-items:center; gap:8px; }
.submission-details-heading .submission-field-label { font-size:.85rem; font-weight:750; }
.submission-details-card>.submission-field-value { min-height:58px; display:block; padding:12px; border:1px solid var(--tgm-border-color); border-radius:12px; background:var(--tgm-surface); white-space:pre-wrap; text-align:start; }
.submission-details-card>.submission-field-value[dir="rtl"] { direction:rtl; text-align:right; }
.submission-details-card>.submission-field-value[dir="auto"] { unicode-bidi:plaintext; }
/* Central prose contract: Arabic is never laid out like an English value.
   Keep numeric fields, dates and currency outside this selector. */
html[data-design-system="central-v2"] .presentation-card--long-content>strong.presentation-prose-value { text-align:start!important; white-space:pre-wrap; overflow-wrap:anywhere; }
html[data-design-system="central-v2"] .presentation-card--long-content>strong.presentation-prose-value[dir="rtl"] { direction:rtl!important; text-align:right!important; }
html[data-design-system="central-v2"] .modal-body--management-submission>.detail-actions { margin-top:2px; padding-top:14px; border-top:1px solid var(--tgm-border-color); align-items:stretch; }
html[data-design-system="central-v2"] .modal-body--management-submission>.detail-actions>button { min-height:48px; font-size:.93rem; font-weight:850; }
@media(max-width:420px) {
  .submission-panel { padding:9px; border-radius:16px; }
  .submission-panel--amount { padding:0; }
  .submission-summary-card { padding:10px 8px; gap:6px; }
  .submission-summary-card .submission-icon { width:26px; height:30px; flex-basis:26px; }
  .submission-field-value { font-size:.91rem; }
  .submission-field-label { font-size:.66rem; }
  .submission-amount-value { font-size:clamp(2.1rem,9.5vw,2.6rem); }
  .submission-amount-label { gap:6px; padding-inline-end:6px; }
  .submission-amount-label .submission-icon { width:24px; flex-basis:24px; background:transparent; }
  .submission-amount-label .submission-field-label { font-size:.78rem; }
}
@media(max-width:360px) {
  html[data-design-system="central-v2"] .management-modal--management-submission .modal-header { grid-template-columns:32px minmax(0,1fr); grid-template-areas:"close copy" "status status"; gap:8px; }
  .submission-summary-card { gap:5px; padding:9px 7px; }
  .submission-summary-card .submission-icon { display:none; }
  .submission-amount-card { gap:8px; padding:14px 10px; }
}

.submission-riyal { display:inline-flex; align-items:center; width:.82em; height:.92em; }
.submission-riyal svg { display:block; width:100%; height:100%; }

/* 8.21.43 — Advance step continuity and compact Attention header. */
html[data-design-system="central-v2"] .pending-panel > .attention-panel-heading {
  display:flex; flex-direction:row; align-items:center; justify-content:space-between;
  gap:8px; margin:0 0 8px!important; min-width:0; direction:rtl;
}
.attention-panel-heading__copy { flex:1 1 48%; min-width:0; text-align:right; }
.attention-panel-heading__copy h2 { margin:0; overflow-wrap:anywhere; }
html[data-design-system="central-v2"] .attention-panel-heading > .attention-center-summary {
  display:flex; flex:0 1 48%; justify-content:flex-end; align-items:center; flex-wrap:wrap;
  min-width:0; gap:4px!important; margin:0!important;
}
.attention-panel-heading .attention-summary-chip { max-width:100%; white-space:normal; overflow-wrap:anywhere; text-align:center; }
html[data-design-system="central-v2"] .modal-body--management-submission > .advance-flow-host {
  min-width:0; display:grid; gap:10px; margin:0; direction:rtl; text-align:right;
}
.advance-flow-host[hidden], .advance-flow-step[hidden], .advance-flow-notice[hidden] { display:none!important; }
.advance-flow-notice { margin:0; padding:10px 12px; border:1px solid var(--tgm-border-color); border-radius:12px;
  background:var(--tgm-surface); color:var(--tgm-text); font-size:.86rem; line-height:1.7; overflow-wrap:anywhere; }
.advance-flow-notice[data-tone="success"] { border-inline-start:3px solid var(--tgm-accent); }
.advance-flow-notice[data-tone="warning"] { border-inline-start:3px solid var(--attention-warning); }
.advance-flow-step { display:grid; min-width:0; gap:12px; padding:14px; border:1px solid var(--tgm-accent-border-soft);
  border-radius:16px; background:var(--tgm-surface); color:var(--tgm-text); }
.advance-flow-step > h3 { margin:0; font-size:1rem; color:var(--tgm-text); }
.advance-flow-hint { margin:0; font-size:.83rem; line-height:1.65; color:var(--tgm-text-muted); }
.advance-flow-fields { display:grid; gap:12px; min-width:0; }
.advance-flow-fields .modal-field { min-width:0; width:100%; }
.advance-flow-fields input, .advance-flow-fields textarea, .advance-flow-fields select { box-sizing:border-box; width:100%; min-width:0; max-width:100%; font-size:16px; }
.advance-flow-fields textarea { text-align:start; }
.advance-flow-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:8px; min-width:0; }
html[data-design-system="central-v2"] .advance-flow-buttons button { min-width:0; min-height:48px; height:auto!important; padding:10px 12px!important; white-space:normal; line-height:1.5; overflow-wrap:anywhere; }
.advance-flow-recovery button:only-child { grid-column:1/-1; }
.advance-flow-enter { animation:advance-flow-enter 140ms ease-out; }
@keyframes advance-flow-enter { from { opacity:.45; transform:translateY(4px); } to { opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion:reduce) { .advance-flow-enter { animation:none!important; } }
/* Legacy detail-actions uses display:grid!important; hidden must win for the
   inactive stage as well, not just for individual buttons. */
html[data-design-system="central-v2"] .modal-body--management-submission > .detail-actions[hidden] { display:none!important; }

/* 8.21.44 — Optional announcement images, preview and safe publication receipt. */
html[data-design-system="central-v2"] .modal-body--announcement-compose { display:block!important; min-width:0; }
.announcement-editor { display:grid; gap:14px; min-width:0; }
.announcement-editor .modal-field { min-width:0; }
.announcement-editor [name="message"] { min-height:210px; max-height:420px; resize:vertical; line-height:1.9; direction:rtl; text-align:right; }
.announcement-editor input,.announcement-editor textarea,.announcement-editor select { box-sizing:border-box; width:100%; min-width:0; max-width:100%; font-size:16px; }
.announcement-counter { direction:ltr; text-align:right; color:var(--tgm-text-muted); font-size:.78rem; }
.announcement-add-photos { width:100%; min-height:46px; }
.announcement-thumbnails { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:10px; }
.announcement-thumbnail { border:1px solid var(--tgm-border-color); border-radius:12px; padding:8px; display:grid; gap:8px; min-width:0; background:var(--tgm-surface); }
.announcement-thumbnail>small { color:var(--tgm-text-muted); font-size:.72rem; }
.announcement-thumbnail__image,.announcement-preview-image { padding:0!important; border:1px solid var(--tgm-border-color); background:var(--tgm-surface); border-radius:10px; overflow:hidden; cursor:zoom-in; min-width:0; }
.announcement-thumbnail__image img { width:100%; height:110px; object-fit:contain; display:block; }
.announcement-thumbnail__tools { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; }
.announcement-thumbnail__tools>button:last-child { grid-column:1/-1; }
html[data-design-system="central-v2"] .announcement-thumbnail__tools>button { min-height:38px; padding:5px!important; font-size:.76rem; white-space:normal; }
.announcement-preview { padding:16px; border:1px solid var(--tgm-border-color); border-radius:16px; background:var(--tgm-surface); min-width:0; display:grid; gap:12px; text-align:right; direction:rtl; }
.announcement-preview>.status-badge { justify-self:start; }
.announcement-preview h3 { font-size:1.18rem; margin:0; overflow-wrap:anywhere; }
.announcement-audience { font-size:.85rem; color:var(--tgm-text-muted); margin:0; overflow-wrap:anywhere; }
.announcement-prose { white-space:pre-wrap; overflow-wrap:anywhere; font-size:1rem; line-height:1.95; color:var(--tgm-text); text-align:right; }
.announcement-preview-images { display:grid; gap:12px; min-width:0; }
.announcement-preview-image img { display:block; width:100%; max-height:460px; object-fit:contain; }
.announcement-notice { border:1px solid var(--tgm-border-color); border-radius:12px; background:var(--tgm-surface); color:var(--tgm-text-muted); padding:12px; font-size:.86rem; line-height:1.8; text-align:right; overflow-wrap:anywhere; }
.announcement-review-tools { display:grid; gap:8px; margin-top:10px; }
.announcement-editor[hidden],.announcement-preview[hidden],.announcement-notice[hidden],.announcement-thumbnails[hidden],.announcement-editor input[hidden] { display:none!important; }
@media (max-width:360px) { .announcement-preview { padding:10px; } .announcement-thumbnails { gap:7px; } }

/* Keep the complete chip group on one row; narrow cards move the WHOLE
   group below the title, not a single badge below two others. Counts untouched. */
.pending-panel { container-type:inline-size; }
html[data-design-system="central-v2"] .attention-panel-heading > .attention-center-summary {
  display:grid; grid-auto-flow:column; grid-auto-columns:minmax(0,1fr);
  flex:0 1 auto; flex-wrap:nowrap; gap:6px!important; align-items:stretch;
}
.attention-panel-heading .attention-panel-heading__copy { flex:1 1 auto; }
.attention-panel-heading .attention-summary-chip { height:auto; min-height:32px; margin:0; display:flex; align-items:center; justify-content:center; padding:5px 8px; line-height:1.5; font-size:.78rem; }
@container (max-width:560px) {
  html[data-design-system="central-v2"] .pending-panel > .attention-panel-heading { flex-wrap:wrap; }
  .attention-panel-heading .attention-panel-heading__copy { flex:1 1 100%; }
  html[data-design-system="central-v2"] .attention-panel-heading > .attention-center-summary { flex:1 1 100%; width:100%; }
}

/* 8.21.45 — scoped inventory report hierarchy and shortage composer/preview. */
.section-table-card--variant-inventory-report-compact .inventory-report-round-group {
  grid-column: 1 / -1; min-width: 0; padding: 12px; border-radius: var(--tgm-radius-lg);
  border: 1px solid var(--tgm-accent-border-soft); background: var(--tgm-surface-soft);
}
.inventory-report-round-group__header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding: 2px 3px 12px; }
.inventory-report-round-group__header h3 { margin:0; font-size:1rem; color:var(--tgm-text); }
.inventory-report-round-group__header p { margin:4px 0 0; color:var(--tgm-text-muted); font-size:.78rem; }
.inventory-report-round-group__count { border:var(--tgm-border-strong); border-radius:var(--tgm-radius-pill); padding:5px 10px; white-space:nowrap; color:var(--tgm-accent-soft-text); font-size:.8rem; }
.inventory-report-round-group__items { display:grid; gap:10px; min-width:0; }
.inventory-report-round-group__items>.record-card { margin:0; min-width:0; }
.modal-body--stock-shortages { display:block!important; }
.stock-shortages-editor, .stock-shortage-report { width:100%; min-width:0; color:var(--tgm-text); direction:rtl; }
.stock-shortages-editor [hidden], .stock-shortage-report [hidden] { display:none!important; }
.shortage-editor-fields { border:0; margin:0; padding:0; display:grid; gap:16px; min-width:0; }
.shortage-notice { padding:10px 13px; border:1px solid var(--tgm-info-border); border-radius:var(--tgm-radius-sm); background:var(--tgm-surface-soft); color:var(--tgm-text-muted-strong); font-size:.83rem; line-height:1.8; margin:0 0 14px; }
.shortage-notice[data-tone="warning"] { border-color:var(--tgm-warning-border); }
.shortage-notice[data-tone="success"] { border-color:var(--tgm-success-border); }
.shortage-warehouse-label, .shortage-mode-label { display:grid; gap:8px; min-width:0; }
.shortage-warehouse-label>select, .shortage-mode-label>select { width:100%; min-width:0; min-height:44px; }
.shortage-source-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0 0 8px; min-width:0; }
.shortage-fact { display:grid; align-content:center; gap:4px; border-radius:var(--tgm-radius-sm); background:var(--tgm-surface-inset); padding:9px 10px; min-width:0; }
.shortage-fact>span { font-size:.74rem; color:var(--tgm-text-muted); }
.shortage-fact>strong { font-size:.84rem; line-height:1.6; overflow-wrap:anywhere; unicode-bidi:plaintext; }
.shortage-stage-heading { display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:space-between; margin-bottom:10px; }
.shortage-stage-heading h3 { margin:0; font-size:.96rem; }
.shortage-selection-count { font-size:.8rem; color:var(--tgm-accent-soft-text); border:1px solid var(--tgm-accent-border-soft); padding:5px 9px; border-radius:var(--tgm-radius-pill); }
.shortage-category-tools { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.shortage-category-tools>input { flex:1 1 180px; min-width:0; min-height:40px; }
.shortage-category-tools>.management-action { flex:0 0 auto; }
.shortage-category-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; max-height:370px; overflow-y:auto; overscroll-behavior:contain; padding:3px; scrollbar-gutter:stable; }
.shortage-category { border:var(--tgm-border-strong); border-radius:var(--tgm-radius-md); min-width:0; background:var(--tgm-surface); }
.shortage-category.is-selected { border-color:var(--tgm-accent-border); background:var(--tgm-surface-soft); }
.shortage-category__choice { display:flex; align-items:center; gap:10px; padding:12px; cursor:pointer; min-width:0; }
.shortage-category__choice>input, .shortage-save-label>input { width:18px!important; height:18px; flex:0 0 18px; accent-color:var(--tgm-accent); min-height:0; }
.shortage-category__copy { display:grid; gap:3px; min-width:0; }
.shortage-category__copy strong { font-size:.87rem; overflow-wrap:anywhere; }
.shortage-category__copy small { color:var(--tgm-text-muted); font-size:.72rem; }
.shortage-category__numbers { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:0 12px 12px; }
.shortage-number-label { display:grid; gap:5px; min-width:0; font-size:.75rem; }
.shortage-number-label>input { width:100%; min-width:0; min-height:40px; direction:ltr; text-align:center; font-variant-numeric:tabular-nums; }
.shortage-bulk { margin-top:10px; border:var(--tgm-border); border-radius:var(--tgm-radius-sm); padding:10px; }
.shortage-bulk>summary { cursor:pointer; color:var(--tgm-text-muted-strong); font-size:.8rem; }
.shortage-bulk__fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; align-items:end; gap:8px; padding-top:12px; }
.shortage-mode-settings { display:grid; gap:12px; }
.shortage-save-label { display:flex; gap:10px; align-items:center; font-size:.81rem; line-height:1.8; }
.stock-shortages-editor>.management-action { margin-top:10px; }
.shortage-report-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:12px; }
.shortage-report-actions>.shortage-selection-count { margin-inline-start:auto; }
.shortage-report-source { margin:8px 0; color:var(--tgm-text-muted); font-size:.77rem; line-height:1.8; overflow-wrap:anywhere; }
.shortage-report-category { font-size:.92rem; border-inline-start:3px solid var(--tgm-accent); background:var(--tgm-surface-soft); padding:9px 12px; margin:16px 0 8px; border-radius:var(--tgm-radius-sm); }
.shortage-product-row { display:grid; grid-template-columns:minmax(230px,1.8fr) repeat(5,minmax(58px,.48fr)) minmax(70px,.55fr); align-items:center; gap:8px; padding:9px; margin-bottom:7px; border:var(--tgm-border-strong); border-radius:var(--tgm-radius-md); background:var(--tgm-surface); }
.shortage-product-identity { display:flex; gap:10px; align-items:center; min-width:0; }
.shortage-product-picture { width:54px; height:54px; flex:0 0 54px; border:var(--tgm-border); border-radius:var(--tgm-radius-sm); background:var(--tgm-surface-inset); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.shortage-product-picture:has(img:not([hidden])) { cursor:zoom-in; }
.shortage-product-picture>img { width:100%; height:100%; object-fit:contain; }
.shortage-image-missing { display:block; font-size:.62rem; text-align:center; color:var(--tgm-text-muted); line-height:1.5; padding:3px; }
.shortage-product-copy { min-width:0; overflow-wrap:anywhere; }
.shortage-product-copy>h4 { font-size:.85rem; line-height:1.7; margin:0; }
.shortage-product-copy>small, .shortage-product-code { font-size:.72rem; color:var(--tgm-text-muted); line-height:1.7; }
.shortage-product-code bdi { font-variant-numeric:tabular-nums; color:var(--tgm-text-muted-strong); }
.shortage-product-row>.shortage-fact { text-align:center; padding:7px 3px; min-height:54px; border:1px solid transparent; }
.shortage-product-row>.shortage-fact>strong { direction:ltr; unicode-bidi:isolate; font-size:.91rem; }
.shortage-product-row>.shortage-fact[data-quantity="replenish"] { border-color:var(--tgm-accent-border-soft); }
.shortage-product-row>.shortage-fact[data-quantity="replenish"]>strong { color:var(--tgm-accent-soft-text); }
.shortage-product-status { font-size:.73rem; line-height:1.5; text-align:center; padding:6px; border-radius:var(--tgm-radius-pill); color:var(--tgm-text-muted-strong); border:var(--tgm-border); }
.shortage-product-status[data-tone="danger"] { color:var(--tgm-danger-strong); border-color:var(--tgm-danger-border); background:var(--tgm-danger-soft); }
.shortage-product-status[data-tone="warning"] { color:var(--tgm-warning-strong); border-color:var(--tgm-warning-border); background:var(--tgm-warning-soft); }
.shortage-product-status[data-tone="info"] { color:var(--tgm-info-strong); border-color:var(--tgm-info-border); background:var(--tgm-info-soft); }
.shortage-product-status[data-tone="success"] { color:var(--tgm-success-strong); border-color:var(--tgm-success-border); background:var(--tgm-success-soft); }
.shortage-report-pager { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; padding:12px 0; font-size:.83rem; }
@media(max-width:850px) {
  .shortage-product-row { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .shortage-product-identity { grid-column:1 / -1; }
  .shortage-product-status { grid-column:1 / -1; justify-self:end; min-width:70px; }
}
@media(max-width:540px) {
  .shortage-category-grid { grid-template-columns:minmax(0,1fr); max-height:340px; }
  .shortage-bulk__fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .shortage-bulk__fields>.management-action { grid-column:1 / -1; }
  .shortage-product-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .shortage-report-actions>.management-action { flex:1 1 100px; }
  .shortage-report-actions>.shortage-selection-count { margin:0; }
  .section-table-card--variant-inventory-report-compact .inventory-report-round-group { padding:8px; }
}

/* Technical reports stay visible, without inflating the business-action badges. */
.guard-technical-summary{margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--border);display:grid;gap:8px;text-align:start;font-size:.86rem}
.guard-technical-summary>strong{color:var(--text)}
.guard-technical-summary>small{color:var(--muted);line-height:1.7}
.guard-technical-summary__open{background:var(--panel-soft);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:flex;justify-content:space-between;gap:10px;align-items:center;cursor:pointer;text-align:start;min-height:42px;font:inherit}
.guard-technical-summary__open span:last-child{white-space:nowrap;color:var(--muted)}

/* Manual shortage controls share central theme tokens, never browser-white fields. */
.stock-shortages-editor :is(input[type="number"],input[type="search"],select) {
  box-sizing:border-box; background:var(--tgm-surface-inset); color:var(--tgm-text);
  border:var(--tgm-border-strong); border-radius:var(--tgm-radius-sm);
  padding:9px 11px; font:inherit; line-height:1.5; min-height:42px;
}
.stock-shortages-editor :is(input[type="number"],input[type="search"],select):focus-visible {
  outline:2px solid var(--tgm-accent); outline-offset:2px;
}
.stock-shortages-editor input::placeholder { color:var(--tgm-text-muted); }
.stock-shortages-editor select option { color:var(--tgm-text); background:var(--tgm-surface); }
.stock-shortages-editor :is(input,select):disabled { opacity:.6; cursor:not-allowed; }

/* 8.21.46 — scoped shortage home compactness + readable system-notice evidence.
   No business fields removed; filenames are exact text in accessible details. */
html[data-design-system="central-v2"] .record-card.stock-source-card { padding:10px!important; min-width:0; gap:3px; }
.stock-source-card__header { display:flex; align-items:center; justify-content:space-between; gap:10px; min-width:0; }
.stock-source-card__header h4 { margin:0; text-align:start; font-size:1rem; line-height:1.5; min-width:0; overflow-wrap:anywhere; }
.stock-source-card__count { flex-shrink:0; font-size:.8rem; color:var(--tgm-text); padding:4px 8px; border:1px solid var(--border); border-radius:var(--radius-md,8px); white-space:nowrap; }
.stock-source-card__uploaded { display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; margin-top:4px; font-size:.85rem; }
.stock-source-card__uploaded span { color:var(--muted); }
.stock-source-card__uploaded bdi { white-space:nowrap; color:var(--text); font-weight:600; }
.stock-source-card__details { margin-top:4px; border-top:1px solid var(--border); padding-top:4px; }
.stock-source-card__details summary { cursor:pointer; color:var(--muted); font-size:.82rem; padding:9px 0; min-height:36px; }
.stock-source-card__details summary:focus-visible { outline:2px solid var(--tgm-accent); outline-offset:2px; }
.stock-source-card__fact { display:grid; grid-template-columns:minmax(0,1fr); gap:3px; margin:8px 0; font-size:.85rem; text-align:start; }
.stock-source-card__fact span { color:var(--muted); font-size:.8rem; }
.stock-source-card__fact bdi { white-space:normal; overflow-wrap:anywhere; unicode-bidi:plaintext; min-width:0; }
.stock-source-card__fact bdi.stock-source-card__filename { direction:ltr; unicode-bidi:isolate; text-align:right; }
.notification-item__notice-hint { font-size:.78rem; line-height:1.6; }
.notification-item__detail-link { color:var(--tgm-accent); font-size:.85rem; padding-top:4px; }
.section-metric[data-metric-variant="stock-source-time"]>strong { font-size:1.05rem!important; line-height:1.7; }
.section-metric[data-metric-variant^="stock-source-"] { min-width:0; min-height:0!important; align-content:start; gap:6px; }
.section-metric[data-metric-variant^="stock-source-"]>small { font-size:.78rem; line-height:1.55; }
@media(max-width:720px) {
  .section-workspace--stock-shortages .section-hero { padding:16px!important; }
  .section-workspace--stock-shortages .section-hero h2 { font-size:1.45rem!important; line-height:1.5; }
  .section-workspace--stock-shortages .section-hero p { font-size:.87rem; line-height:1.65; }
  .section-workspace--stock-shortages #section-metrics { grid-template-columns:minmax(0,1fr); gap:8px; }
  .section-workspace--stock-shortages .section-metric[data-metric-variant^="stock-source-"] { padding:12px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; }
  .section-workspace--stock-shortages .section-metric[data-metric-variant^="stock-source-"]>small { grid-column:1/-1; }
  .section-workspace--stock-shortages .section-metric[data-metric-variant="stock-source-count"]>strong { font-size:1.4rem!important; }
  .section-workspace--stock-shortages .section-metric[data-metric-variant="stock-source-time"]>strong { white-space:normal; font-size:.92rem!important; }
  .section-table-card--variant-stock-sources-compact .record-card-list { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; padding:10px; }
  .section-table-card--variant-stock-sources-compact .section-table-heading { padding:12px; }
  .section-table-card--variant-stock-sources-compact .section-table-heading h3 { font-size:1rem; }
  .section-table-card--variant-stock-sources-compact .section-table-heading p { font-size:.82rem; line-height:1.65; }
  .section-table-card--variant-stock-archive-compact .record-card-list { grid-template-columns:minmax(0,1fr); gap:8px; padding:10px; }
  .section-table-card--variant-stock-archive-compact .record-card { padding:12px; }
  .section-table-card--variant-stock-archive-compact .record-card__head h4 { font-size:.95rem; }
  .section-table-card--variant-stock-archive-compact .record-card__meta { gap:6px; }
  .section-table-card--variant-stock-archive-compact .record-card__meta>div { padding:7px; min-height:0; }
  .section-table-card--variant-stock-archive-compact .record-card__meta>div[data-meta-key="source"] { grid-column:1/-1; }
  .section-table-card--variant-stock-archive-compact .record-card__meta strong { font-size:.85rem; overflow-wrap:anywhere; unicode-bidi:plaintext; }
}

/* 8.21.50 — scoped ledger/detail layout. No document/viewport/scroll rules. */
.ledger-money { display:inline-flex;align-items:center;gap:.3em;direction:ltr;unicode-bidi:isolate;max-width:100%;overflow-wrap:anywhere; }
.ledger-money .submission-riyal { flex:0 0 auto; width:.8em; height:1em; }
.modal-body--device-product .device-detail-identity { display:flex;align-items:center;gap:14px;margin:0 0 12px;min-width:0; }
.device-detail-identity__image { flex:0 0 94px;width:94px;height:94px;position:relative;display:grid;place-items:center;padding:5px;border:1px solid var(--tgm-border-color);border-radius:16px;background:var(--tgm-surface-inset);color:var(--tgm-text-muted);overflow:hidden; }
.device-detail-identity__image img { width:100%;height:100%;object-fit:contain;border-radius:10px;grid-area:1/1; }
.device-detail-identity__image span { grid-area:1/1;font-size:.7rem; }
.device-detail-identity__image:focus-visible { outline:3px solid var(--tgm-info);outline-offset:2px; }
.device-detail-identity__copy { min-width:0;display:grid;gap:8px; }
.device-detail-identity__copy h3 { margin:0;font-size:1.1rem;line-height:1.6;overflow-wrap:anywhere; }
.modal-body--device-product .presentation-section--variant-device-summary { margin:0 0 12px;padding:0; }
.modal-body--device-product .presentation-section--variant-device-summary>h3,
.modal-body--device-product .presentation-section--variant-device-specs>h3 { display:none; }
.modal-body--device-product .presentation-section--variant-device-summary .presentation-metrics-grid { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px; }
.modal-body--device-product .presentation-section--variant-device-summary .presentation-card { grid-column:span 2;min-height:0;padding:9px 10px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface); }
.modal-body--device-product .presentation-section--variant-device-summary .presentation-card:nth-child(n+4) { grid-column:span 3; }
.modal-body--device-product .presentation-card>span { font-size:.72rem; }
.modal-body--device-product .presentation-section--variant-device-summary .presentation-card>strong { font-size:clamp(.88rem,2.4vw,1.08rem);line-height:1.4; }
.modal-body--device-product .presentation-section--variant-device-specs { margin:0 0 14px;padding:10px 12px;border:1px solid var(--tgm-border-color);border-radius:12px; }
.modal-body--device-product .presentation-section--variant-device-specs .presentation-metadata-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px; }
.modal-body--device-product .presentation-section--variant-device-specs .presentation-card { padding:3px 0;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none; }
.modal-body--device-product .presentation-section--variant-device-specs .presentation-card>strong { font-size:.9rem;overflow-wrap:anywhere; }
html[data-design-system="central-v2"] .modal-body--device-product>.device-detail-actions50 { display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0 0 14px;padding:0;border:0; }
html[data-design-system="central-v2"] .modal-body--device-product>.device-detail-actions50>.management-action { grid-column:auto!important;min-width:0;width:100%;min-height:46px;padding:8px 6px;font-size:.88rem;white-space:normal; }
html[data-design-system="central-v2"] .modal-body--device-product>.device-detail-actions50>[data-action-key="device.stock.adjust"] { grid-column:1/-1!important; }
html[data-design-system="central-v2"] .modal-body--device-product>.device-detail-actions50:has(>button:only-child) { grid-template-columns:minmax(0,1fr)!important; }
.device-history50 { margin-top:0; }
.device-history50__heading { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px; }
.device-history50__heading h3 { margin:0;font-size:1.05rem; }
.device-history50__heading small { color:var(--tgm-text-muted);font-size:.72rem; }
.device-history50__entry { border:1px solid var(--tgm-border-color);border-inline-start:3px solid var(--tgm-border-strong-color);border-radius:12px;margin-bottom:7px;background:var(--tgm-surface); }
.device-history50__entry[data-tone="green"] { border-inline-start-color:var(--tgm-success); }
.device-history50__entry[data-tone="red"] { border-inline-start-color:var(--tgm-danger); }
.device-history50__entry[data-tone="orange"] { border-inline-start-color:var(--tgm-warning); }
.device-history50__summary { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:11px 12px;cursor:pointer;list-style:none; }
.device-history50__summary::-webkit-details-marker { display:none; }
.device-history50__type { color:var(--tgm-text);font-size:.95rem; }
.device-history50__entry[data-tone="green"] .device-history50__type { color:var(--tgm-success-strong); }
.device-history50__entry[data-tone="red"] .device-history50__type { color:var(--tgm-danger-strong); }
.device-history50__entry[data-tone="orange"] .device-history50__type { color:var(--tgm-warning-strong); }
.device-history50__date { color:var(--tgm-text-muted);font-size:.77rem;align-self:center; }
.device-history50__price { display:flex;align-items:center;gap:7px;grid-column:2;grid-row:2;font-size:.87rem; }
.device-history50__price small { color:var(--tgm-text-muted);font-size:.68rem; }
.device-history50__context { min-width:0;grid-column:1;grid-row:2;font-size:.8rem;color:var(--tgm-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.device-history50__summary:focus-visible { outline:3px solid var(--tgm-info);outline-offset:1px;border-radius:12px; }
.device-history50__summary::after { content:"عرض التفاصيل ⌄";grid-column:1/-1;font-size:.7rem;color:var(--tgm-info); }
.device-history50__entry[open]>.device-history50__summary::after { content:"إخفاء التفاصيل ⌃"; }
.device-history50__facts { border-top:1px solid var(--tgm-border-color);padding:10px 12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
.device-history50__facts>div { display:grid;gap:3px;font-size:.85rem;min-width:0;overflow-wrap:anywhere; }
.device-history50__facts small { color:var(--tgm-text-muted);font-size:.7rem; }
.device-history50__facts>div:last-of-type,.device-history50__full-reason { grid-column:1/-1; }
.device-history50__full-reason { margin:2px 0;font-size:.82rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere; }
.device-funding,.device-image-editor { grid-column:1/-1;display:grid;gap:12px;padding:12px;border:1px solid var(--tgm-border-color);border-radius:14px;background:var(--tgm-surface);min-width:0; }
.device-funding h3,.device-image-editor h3 { margin:0;font-size:1.04rem; }
.device-funding__hint,.device-image-editor__hint { margin:0;font-size:.8rem;line-height:1.7;color:var(--tgm-text-muted); }
.device-funding__summary { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px; }
.device-funding__fact { display:grid;gap:4px;min-width:0;padding:8px;border:1px solid var(--tgm-border-color);border-radius:11px; }
.device-funding__fact>small { color:var(--tgm-text-muted);font-size:.72rem; }
.device-funding__fact>.ledger-money { font-size:clamp(.8rem,2.2vw,1rem); }
.device-funding__summary[data-over="true"] { border:1px solid var(--tgm-danger);border-radius:12px; }
.device-funding__options { display:grid;gap:9px; }
.device-funding__transfer { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(120px,1fr);gap:10px;padding:10px;border:1px solid var(--tgm-border-color);border-radius:12px; }
.device-funding__choice { display:flex;align-items:center;gap:9px;min-height:44px;cursor:pointer;font-size:.88rem;min-width:0; }
.device-funding__choice input[type="checkbox"] { width:22px;height:22px;flex:0 0 22px;accent-color:var(--tgm-accent); }
.device-funding__copy { display:grid;gap:4px;min-width:0;overflow-wrap:anywhere; }
.device-funding__copy small,.device-funding__remaining { color:var(--tgm-text-muted);font-size:.74rem;line-height:1.6; }
.device-funding__amount,.device-funding__reason,.device-image-editor__field { display:grid;gap:5px;min-width:0;font-size:.8rem; }
.device-funding__amount>input,.device-funding__reason>textarea { min-width:0;width:100%;min-height:44px;border:1px solid var(--tgm-border-strong-color);border-radius:10px;background:var(--tgm-surface-raised);color:var(--tgm-text);padding:8px;box-sizing:border-box; }
.device-funding__amount>input:disabled { opacity:.55; }
.device-funding__override { padding:10px;border:1px solid var(--tgm-warning-border);border-radius:12px;display:grid;gap:8px; }
.device-funding__reason[hidden] { display:none; }
.device-image-editor__preview { width:100%;height:150px;display:grid;place-items:center;background:var(--tgm-surface-inset);border-radius:12px;overflow:hidden; }
.device-image-editor__preview img { width:100%;height:150px;object-fit:contain; }
.device-image-editor__field input { max-width:100%;min-width:0; }
.device-image-editor__result { margin:0;font-size:.8rem;line-height:1.6; }
.debt-access-summary50 { display:grid;gap:10px;padding:12px;border:1px solid var(--tgm-info-border);border-radius:12px;background:var(--tgm-info-soft);margin-bottom:12px; }
.debt-access-summary50 p { margin:0;line-height:1.7;overflow-wrap:anywhere; }
@media(min-width:721px) {
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] { width:100%;max-width:none;display:grid;grid-template-columns:minmax(0,1fr);box-sizing:border-box;justify-self:stretch; }
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"]>.filter-field { grid-column:1/-1;width:100%;min-width:0; }
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter { display:flex;flex-wrap:nowrap;width:100%;gap:8px; }
  html[data-design-system="central-v2"] #section-filters[data-section="device-ledger"] .segmented-filter__button { flex:1 1 0;min-height:46px;font-size:.93rem;padding:10px 8px;white-space:normal; }
  html[data-design-system="central-v2"] .section-workspace[data-section="device-ledger"] .record-card-list[data-record-count="1"] { grid-template-columns:minmax(0,1fr); }
  html[data-design-system="central-v2"] .section-workspace[data-section="device-ledger"] .record-card[data-kind="device-purchase-transfer"] .record-card__meta { grid-template-columns:repeat(3,minmax(0,1fr)); }
  html[data-design-system="central-v2"] .section-workspace[data-section="device-ledger"] .record-card[data-kind="device-purchase-transfer"] [data-meta-key="note"] { grid-column:1/-1; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card-list { grid-template-columns:minmax(0,1fr);gap:10px;padding:14px; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card { display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,2fr);gap:12px 20px;padding:14px 16px;background:var(--tgm-surface);border:1px solid var(--tgm-border-color); }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card__head { align-items:flex-start;gap:10px; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card__head h4 { font-size:1rem; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card__eyebrow { font-size:.8rem; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card__open { white-space:nowrap;font-size:.8rem; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card__meta { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card__meta>div { min-height:0;padding:8px 10px; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive .record-card__meta strong { font-size:.97rem; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive [data-meta-key="note"] { grid-column:1/-1;background:transparent;border:0;padding:2px 0!important; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive [data-meta-key="note"] strong { display:block;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:.9rem; }
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive [data-meta-key="amount"] strong,
  html[data-design-system="central-v2"] .section-table-card--variant-current-account-responsive [data-meta-key="balance"] strong { direction:ltr;unicode-bidi:isolate;text-align:right; }
}
@media(max-width:380px) {
  .device-detail-identity__image { flex-basis:78px;width:78px;height:78px; }
  .device-detail-identity__copy h3 { font-size:.99rem; }
  .device-funding__transfer { grid-template-columns:minmax(0,1fr); }
  .device-funding__summary { grid-template-columns:minmax(0,1fr); }
  .device-funding__fact { display:flex;justify-content:space-between;gap:10px; }
  .device-history50__summary { grid-template-columns:minmax(0,1fr) auto;gap:6px; }
  .device-history50__price { grid-column:1/-1;grid-row:3; }
  .device-history50__context { grid-column:1/-1; }
}

/* Capability-dependent detail action counts retain useful width. */
.device-detail-actions50:has(>button:nth-child(2):last-child) { grid-template-columns:repeat(2,minmax(0,1fr)); }
.device-detail-actions50:has(>button:nth-child(2):last-child)>button { grid-column:auto!important; }


/* 8.21.52 — shortage clarity: primary workflow first, technical source evidence on demand. */
.shortage-source-details{border:var(--tgm-border);border-radius:var(--tgm-radius-md);background:var(--tgm-surface-soft);padding:0 10px}
.shortage-source-details>summary{cursor:pointer;padding:10px 2px;color:var(--tgm-text-muted-strong);font-size:.82rem;font-weight:700}
.shortage-source-details>.shortage-source-facts{margin:0 0 10px}
.shortage-product-code{display:flex;flex-wrap:wrap;gap:4px 12px}
.shortage-product-code>span{display:inline-flex;gap:4px;min-width:0}
@media(min-width:1000px){
  .management-modal--wide{width:min(1180px,calc(100vw - 48px))!important;max-width:1180px!important}
  .management-modal--shortage-report{width:min(1420px,calc(100vw - 72px))!important;max-width:1420px!important}
  .management-modal--shortage-report #modal-body{overflow-x:hidden}
  .shortage-product-row{grid-template-columns:minmax(340px,3fr) repeat(4,minmax(0,.72fr)) minmax(120px,.95fr) minmax(82px,.62fr);gap:8px;align-items:stretch}
  .shortage-product-row>*{min-width:0}
  .shortage-product-identity{min-width:0}
  .shortage-product-copy>h4{font-size:.95rem}
  .shortage-product-row>.shortage-fact{min-height:64px;padding:8px 6px}
}

/* 8.21.53 — shortage desktop hotfix: use viewport width, central stock identity, cost beside identifiers. */
.shortage-product-code .ledger-money{display:inline-flex;gap:3px;align-items:center;font-size:inherit;color:var(--tgm-text-muted-strong)}
.shortage-product-code .ledger-money>bdi{font-variant-numeric:tabular-nums}

/* 8.21.55 — Barcode inventory is a navigation mode over the protected count card. */
.inventory-barcode-mode-badge { width:max-content; max-width:100%; padding:6px 10px; border:var(--tgm-border); border-radius:999px; background:var(--tgm-surface-inset); font-weight:800; font-size:.82rem; }
.inventory-barcode-hint { margin-top:-4px; }

/* 8.21.55 Smart attendance correction: compact, record-driven and responsive. */
.attendance-correction-record,
.attendance-correction-summary {
  border: 1px solid var(--line, rgba(148,163,184,.22));
  border-radius: 16px;
  background: color-mix(in srgb, var(--panel, #111827) 94%, transparent);
  padding: 14px;
}
.attendance-correction-record__head,
.attendance-correction-record__shift {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.attendance-correction-record__head > div,
.attendance-correction-record__shift { min-width: 0; }
.attendance-correction-record__head strong,
.attendance-correction-record__head span,
.attendance-correction-record__shift strong,
.attendance-correction-record__shift span { display: block; }
.attendance-correction-record__head > div > span,
.attendance-correction-record__shift > span,
.attendance-correction-record__grid span { color: var(--muted, #94a3b8); font-size: .84rem; }
.attendance-correction-record__shift { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line, rgba(148,163,184,.18)); }
.attendance-correction-record__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 12px; }
.attendance-correction-record__grid > div { border: 1px solid var(--line, rgba(148,163,184,.16)); border-radius: 12px; padding: 10px; min-width: 0; }
.attendance-correction-record__grid strong { display: block; margin-top: 4px; }
.attendance-correction-chip { flex: 0 0 auto; border-radius: 999px; padding: 5px 9px; font-size: .78rem; border: 1px solid currentColor; }
.attendance-correction-chip[data-state="full"] { color: var(--success, #4ade80); }
.attendance-correction-chip[data-state="checkin_only"],
.attendance-correction-chip[data-state="checkout_only"] { color: var(--warning, #fbbf24); }
.attendance-correction-chip[data-state="empty"] { color: var(--muted, #94a3b8); }
.attendance-correction-chip[data-state="pending"] { color: var(--info, #60a5fa); }
.attendance-correction-summary { font-size: .9rem; line-height: 1.75; }
@media (max-width: 620px) {
  .attendance-correction-record__head,
  .attendance-correction-record__shift { align-items: flex-start; }
  .attendance-correction-record__grid { grid-template-columns: 1fr; }
}

/* 8.21.56 — Monthly Inventory Report preview is read-only over the saved Excel artifact. */
.inventory-monthly-report { width:100%; min-width:0; direction:rtl; color:var(--tgm-text); }
.inventory-monthly-toolbar { display:flex; align-items:end; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:12px; }
.inventory-monthly-month { display:grid; gap:5px; min-width:min(260px,100%); font-size:.76rem; color:var(--tgm-text-muted); }
.inventory-monthly-month select { min-height:42px; }
.inventory-monthly-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:0 0 12px; }
.inventory-monthly-metric { border:var(--tgm-border); border-radius:var(--tgm-radius-md); background:var(--tgm-surface); padding:12px 14px; display:flex; justify-content:space-between; align-items:center; gap:10px; }
.inventory-monthly-metric span { color:var(--tgm-text-muted); font-size:.78rem; }
.inventory-monthly-metric strong { font-size:1.25rem; font-variant-numeric:tabular-nums; }
.inventory-monthly-metric[data-tone="danger"] { border-color:var(--tgm-danger-border); background:var(--tgm-danger-soft); }
.inventory-monthly-metric[data-tone="danger"] strong { color:var(--tgm-danger-strong); }
.inventory-monthly-metric[data-tone="success"] { border-color:var(--tgm-success-border); background:var(--tgm-success-soft); }
.inventory-monthly-metric[data-tone="success"] strong { color:var(--tgm-success-strong); }
.inventory-monthly-metric[data-tone="info"] { border-color:var(--tgm-info-border); }
.inventory-monthly-filters { display:grid; grid-template-columns:minmax(250px,2fr) repeat(3,minmax(150px,1fr)); gap:8px; padding:10px; border:var(--tgm-border); border-radius:var(--tgm-radius-md); background:var(--tgm-surface-soft); margin-bottom:14px; }
.inventory-monthly-filters input,.inventory-monthly-filters select { width:100%; min-width:0; }
.inventory-monthly-group-head { position:sticky; top:-1px; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; margin:16px 0 8px; border:var(--tgm-border-strong); border-radius:var(--tgm-radius-md); background:color-mix(in srgb,var(--tgm-surface) 96%,transparent); backdrop-filter:blur(8px); }
.inventory-monthly-group-title { min-width:0; }
.inventory-monthly-group-title h3 { margin:0; font-size:.96rem; }
.inventory-monthly-group-title span { color:var(--tgm-text-muted); font-size:.72rem; }
.inventory-monthly-group-counts { display:flex; gap:6px; flex-wrap:wrap; }
.inventory-monthly-group-counts span { padding:5px 8px; border-radius:var(--tgm-radius-pill); border:var(--tgm-border); font-size:.72rem; font-weight:800; }
.inventory-monthly-group-counts [data-tone="danger"] { color:var(--tgm-danger-strong); border-color:var(--tgm-danger-border); background:var(--tgm-danger-soft); }
.inventory-monthly-group-counts [data-tone="success"] { color:var(--tgm-success-strong); border-color:var(--tgm-success-border); background:var(--tgm-success-soft); }
.inventory-monthly-group-list { display:grid; gap:7px; }
.inventory-monthly-product { display:grid; grid-template-columns:minmax(330px,2.6fr) repeat(4,minmax(90px,.72fr)) minmax(78px,.55fr); gap:8px; align-items:stretch; border:var(--tgm-border-strong); border-inline-start:3px solid var(--tgm-border-color); border-radius:var(--tgm-radius-md); background:var(--tgm-surface); padding:8px; min-width:0; }
.inventory-monthly-product[data-tone="danger"] { border-inline-start-color:var(--tgm-danger-strong); }
.inventory-monthly-product[data-tone="success"] { border-inline-start-color:var(--tgm-success-strong); }
.inventory-monthly-product-identity { display:flex; align-items:center; gap:10px; min-width:0; }
.inventory-monthly-picture { width:58px; height:58px; flex:0 0 58px; border:var(--tgm-border); border-radius:var(--tgm-radius-sm); background:var(--tgm-surface-inset); padding:3px; display:flex; align-items:center; justify-content:center; overflow:hidden; color:var(--tgm-text-muted); font-size:.65rem; }
.inventory-monthly-picture.is-ready { cursor:zoom-in; }
.inventory-monthly-picture:disabled { cursor:default; opacity:.78; }
.inventory-monthly-picture img { width:100%; height:100%; object-fit:contain; }
.inventory-monthly-copy { min-width:0; }
.inventory-monthly-copy h4 { margin:0 0 3px; font-size:.86rem; line-height:1.55; overflow-wrap:anywhere; }
.inventory-monthly-identifiers,.inventory-monthly-location { display:flex; gap:5px 12px; flex-wrap:wrap; color:var(--tgm-text-muted); font-size:.69rem; line-height:1.5; }
.inventory-monthly-identifiers bdi { color:var(--tgm-text-muted-strong); font-variant-numeric:tabular-nums; }
.inventory-monthly-details { margin-top:3px; font-size:.68rem; color:var(--tgm-text-muted); }
.inventory-monthly-details summary { cursor:pointer; width:max-content; color:var(--tgm-accent-soft-text); }
.inventory-monthly-detail-grid { display:flex; flex-wrap:wrap; gap:5px; padding-top:5px; }
.inventory-monthly-detail-grid .inventory-monthly-fact { min-height:0; padding:4px 6px; }
.inventory-monthly-fact { display:flex; flex-direction:column; justify-content:center; gap:3px; min-height:58px; padding:7px; border:1px solid transparent; border-radius:var(--tgm-radius-sm); background:var(--tgm-surface-inset); text-align:center; min-width:0; }
.inventory-monthly-fact span { color:var(--tgm-text-muted); font-size:.67rem; }
.inventory-monthly-fact strong { font-size:.86rem; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.inventory-monthly-fact[data-tone="danger"] { border-color:var(--tgm-danger-border); background:var(--tgm-danger-soft); }
.inventory-monthly-fact[data-tone="danger"] strong { color:var(--tgm-danger-strong); }
.inventory-monthly-fact[data-tone="success"] { border-color:var(--tgm-success-border); background:var(--tgm-success-soft); }
.inventory-monthly-fact[data-tone="success"] strong { color:var(--tgm-success-strong); }
.inventory-monthly-status { align-self:center; justify-self:center; padding:6px 9px; border-radius:var(--tgm-radius-pill); border:var(--tgm-border); font-size:.72rem; font-weight:800; min-width:62px; text-align:center; }
.inventory-monthly-status[data-tone="danger"] { color:var(--tgm-danger-strong); border-color:var(--tgm-danger-border); background:var(--tgm-danger-soft); }
.inventory-monthly-status[data-tone="success"] { color:var(--tgm-success-strong); border-color:var(--tgm-success-border); background:var(--tgm-success-soft); }
.inventory-monthly-footnote { color:var(--tgm-text-muted); font-size:.73rem; line-height:1.7; margin:12px 0 0; }
.inventory-monthly-muted { color:var(--tgm-text-muted); }
.attendance-correction-time-preview { display:block; margin-top:5px; color:var(--tgm-accent-soft-text); font-size:.76rem; font-weight:750; }

@media (max-width: 1050px) {
  .inventory-monthly-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .inventory-monthly-search { grid-column:1 / -1; }
  .inventory-monthly-product { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .inventory-monthly-product-identity { grid-column:1 / -1; }
  .inventory-monthly-status { grid-column:1 / -1; justify-self:end; }
}
@media (max-width: 620px) {
  .inventory-monthly-metrics { grid-template-columns:1fr; }
  .inventory-monthly-filters { grid-template-columns:1fr; }
  .inventory-monthly-search { grid-column:auto; }
  .inventory-monthly-product { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .inventory-monthly-product-identity { grid-column:1 / -1; align-items:flex-start; }
  .inventory-monthly-status { grid-column:1 / -1; }
  .inventory-monthly-group-head { position:static; align-items:flex-start; }
}

/* 8.21.67 — Friday Deal desktop density + trusted product thumbnails. */
@media (min-width: 900px) {
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-metadata-grid {
    grid-template-columns: repeat(6,minmax(0,1fr)); gap:6px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-metadata-grid {
    grid-template-columns: repeat(6,minmax(0,1fr)); gap:6px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card {
    min-height:54px;padding:7px 8px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-section--variant-offer-product-identity .presentation-metadata-grid,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-section--variant-offer-product-pricing .presentation-metadata-grid,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-section--variant-offer-product-eligibility .presentation-metadata-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-section--variant-offer-product-pricing .presentation-card,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-section--variant-offer-product-eligibility .presentation-card,
  html[data-design-system="central-v2"] .modal-body--store-run-item .presentation-section--variant-offer-product-identity .presentation-card {
    min-height:58px;padding:7px 9px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products .product-list-thumbnail {
    width:42px;height:42px;flex-basis:42px;border-radius:9px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .section-table-card--variant-store-offer-products td[data-column-key="selection_note"] {
    max-width:220px;
  }
}

/* 8.21.68 — Store mobile hierarchy + compact offer cards. Presentation only. */
@media(max-width:720px){
  html[data-design-system="central-v2"] .section-workspace[data-section="store"] .section-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-top:10px;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="store"] .section-metric{
    min-height:72px!important;padding:8px 9px!important;border-radius:15px;gap:2px;min-width:0;
  }
  html[data-design-system="central-v2"] .section-workspace[data-section="store"] .section-metric span{font-size:.67rem;line-height:1.15}
  html[data-design-system="central-v2"] .section-workspace[data-section="store"] .section-metric strong{font-size:1.12rem;line-height:1.05;margin:2px 0}
  html[data-design-system="central-v2"] .section-workspace[data-section="store"] .section-metric small{
    font-size:.59rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }

  html[data-design-system="central-v2"] #section-actions[data-section="store"].store-mobile-actionbar{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;align-items:stretch;width:100%;
  }
  html[data-design-system="central-v2"] #section-actions[data-section="store"].store-mobile-actionbar>.store-mobile-actionbar__primary{
    grid-column:span 1!important;min-height:42px!important;padding:6px 5px!important;font-size:.7rem!important;line-height:1.2;border-radius:12px;
  }
  html[data-design-system="central-v2"] #section-actions[data-section="store"].store-mobile-actionbar>.store-mobile-actionbar__create{
    grid-column:1 / -1!important;min-height:42px!important;padding:7px 9px!important;font-size:.76rem!important;border-radius:12px;
  }
  html[data-design-system="central-v2"] .store-mobile-offer-tabs{
    grid-column:1 / -1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface-inset);
  }
  html[data-design-system="central-v2"] .store-mobile-offer-tab{
    min-width:0;min-height:32px;padding:4px 2px;border:0;border-radius:9px;background:transparent;color:var(--tgm-text-muted);font:inherit;font-size:.62rem;font-weight:800;
  }
  html[data-design-system="central-v2"] .store-mobile-offer-tab.is-active{
    background:var(--tgm-accent-soft);color:var(--tgm-accent-strong);box-shadow:inset 0 0 0 1px var(--tgm-accent-border-soft);
  }
  html[data-design-system="central-v2"] .store-mobile-more-actions{
    grid-column:1 / -1;border:1px solid var(--tgm-border-color);border-radius:12px;background:var(--tgm-surface-inset);overflow:hidden;
  }
  html[data-design-system="central-v2"] .store-mobile-more-actions>summary{
    list-style:none;cursor:pointer;padding:8px 10px;color:var(--tgm-text-muted-strong);font-size:.7rem;font-weight:800;text-align:center;
  }
  html[data-design-system="central-v2"] .store-mobile-more-actions>summary::-webkit-details-marker{display:none}
  html[data-design-system="central-v2"] .store-mobile-more-actions>summary::after{content:" +";color:var(--tgm-accent-strong)}
  html[data-design-system="central-v2"] .store-mobile-more-actions[open]>summary::after{content:" −"}
  html[data-design-system="central-v2"] .store-mobile-more-actions__body{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:0 7px 7px;
  }
  html[data-design-system="central-v2"] .store-mobile-more-actions__body .management-action{
    min-height:38px!important;padding:6px!important;font-size:.67rem!important;line-height:1.2!important;
  }

  html[data-design-system="central-v2"] .record-card--store-run-compact{
    padding:9px 10px;border-radius:15px;gap:7px;min-height:0;
  }
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__head{align-items:center;gap:7px}
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__eyebrow{font-size:.62rem;color:var(--tgm-accent-strong);margin-bottom:2px}
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__head h4{font-size:.9rem;line-height:1.25;margin:0}
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__open{font-size:.62rem;white-space:nowrap}
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__meta{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:0;
  }
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__meta>div{
    min-width:0;min-height:42px;padding:5px 6px;border-radius:9px;background:color-mix(in srgb,var(--tgm-surface-raised) 84%,transparent);
  }
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__meta span{font-size:.57rem;line-height:1.15}
  html[data-design-system="central-v2"] .record-card--store-run-compact .record-card__meta strong{font-size:.7rem;line-height:1.2;overflow-wrap:anywhere}

  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight{padding:8px;border-radius:14px}
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-metadata-grid,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-metadata-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card{
    min-height:46px!important;padding:6px 7px!important;border-radius:10px;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card[data-value-size="long"] strong,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card[data-value-size="long"] strong{
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card>span,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card>span{font-size:.61rem!important}
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-summary .presentation-card>strong,
  html[data-design-system="central-v2"] .modal-body--store-run .presentation-section--variant-offer-preflight .presentation-card>strong{font-size:.75rem!important;line-height:1.25}
}

/* 8.21.71 — compact mobile section header + Product Search action-first layout.
 * Presentation only: no permission, data, stock, or business calculation changes. */
@media (max-width: 760px) {
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-hero.page-header {
    min-height: 0 !important;
    padding: 10px 12px !important;
    margin-bottom: 8px !important;
    border-radius: 16px !important;
    box-shadow: none !important;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-hero.page-header > div:first-child {
    width: 100%; min-width: 0;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto;
    grid-template-areas: "title back" "title kicker";
    column-gap: 10px; row-gap: 2px; align-items: center;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-hero.page-header .section-back.is-central-back {
    grid-area: back; margin: 0 !important; min-height: 30px !important;
    padding: 0 8px !important; font-size: .72rem !important; box-shadow: none !important;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-hero.page-header .section-kicker {
    grid-area: kicker; margin: 0 !important; font-size: .67rem !important; line-height: 1.2;
    white-space: nowrap;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-hero.page-header h2 {
    grid-area: title; margin: 0 !important; min-width: 0;
    font-size: clamp(1.15rem,5.6vw,1.48rem) !important; line-height: 1.2 !important;
    text-align: start; overflow-wrap: anywhere;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-hero.page-header p,
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-hero.page-header > .readonly-pill {
    display: none !important;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-services {
    margin-bottom: 8px !important; padding: 5px !important; gap: 4px !important;
    overflow-x: auto; flex-wrap: nowrap !important; scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-services::-webkit-scrollbar { display:none; }
  html[data-design-system="central-v2"] #section-workspace.section-workspace > .section-services .section-service-tab {
    flex: 0 0 auto; min-height: 36px !important; padding: 7px 10px !important;
    font-size: .78rem !important; white-space: nowrap;
  }

  html[data-design-system="central-v2"] #section-workspace.section-workspace[data-section="products"] > .section-metrics {
    display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 6px !important; margin: 0 0 8px !important;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace[data-section="products"] > .section-metrics .section-metric {
    min-width: 0; min-height: 70px !important; padding: 8px 6px !important;
    border-radius: 14px !important; gap: 2px !important; text-align: center;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace[data-section="products"] > .section-metrics .section-metric span {
    font-size: .62rem !important; line-height: 1.15 !important;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace[data-section="products"] > .section-metrics .section-metric strong {
    font-size: 1.05rem !important; line-height: 1.05 !important; margin: 2px 0 0 !important;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace[data-section="products"] > .section-metrics .section-metric small {
    display: none !important;
  }
  html[data-design-system="central-v2"] #section-workspace.section-workspace[data-section="products"] > .section-controlbar {
    margin-top: 0 !important;
  }
}
