@import url("https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700;750&display=swap");

/*
  STYLE 7 · SYSTEM
  One final visual layer for Control Deck and Fitbase AI Assistant.
  Legacy styles provide component geometry only; this file owns layout,
  typography, colour, surfaces and responsive behaviour.
*/

:root,
body.style7 {
  color-scheme: dark;
  --s7-bg: #070b0f;
  --s7-sidebar: #0b1117;
  --s7-card: #111820;
  --s7-card-2: #162029;
  --s7-field: #0a1016;
  --s7-text: #eef5f6;
  --s7-muted: #91a1aa;
  --s7-faint: #657780;
  --s7-line: rgba(151, 220, 224, .12);
  --s7-line-strong: rgba(84, 218, 222, .28);
  --s7-teal: #22c7c0;
  --s7-cyan: #51d8e5;
  --accent-rgb: 34, 199, 192;
  --s7-teal-deep: #0f827e;
  --s7-teal-soft: rgba(34, 199, 192, .11);
  --s7-glow: 0 14px 36px rgba(15, 130, 126, .12);
  --s7-green: #45c996;
  --s7-amber: #d7a84d;
  --s7-red: #e56f7a;
  --s7-radius: 16px;
  --s7-radius-sm: 11px;
  --s7-sidebar-w: 276px;
  --s7-content-max: 1920px;

  --s7-surface: var(--s7-card);
  --s7-surface-2: var(--s7-card-2);
  --s7-panel-2: var(--s7-card-2);
  --s7-accent: var(--s7-teal);
  --s7-accent-2: var(--s7-cyan);
  --s7-accent-soft: var(--s7-teal-soft);
  --s7-line-soft: var(--s7-line);
  --s7-radius-lg: var(--s7-radius);

  --bg: var(--s7-bg);
  --surface: var(--s7-card);
  --surface-2: var(--s7-card-2);
  --text: var(--s7-text);
  --muted: var(--s7-muted);
  --border: var(--s7-line);
  --accent: var(--s7-teal);
  --primary: var(--s7-teal);
  --purple: var(--s7-teal);
  --violet: var(--s7-cyan);
  --color-bg: var(--s7-bg);
  --color-background: var(--s7-bg);
  --color-surface: var(--s7-card);
  --color-surface-2: var(--s7-card-2);
  --color-surface-offset: rgba(255, 255, 255, .02);
  --color-border: var(--s7-line);
  --color-border-hover: var(--s7-line-strong);
  --color-text: var(--s7-muted);
  --color-text-strong: var(--s7-text);
  --color-text-muted: var(--s7-faint);
  --color-primary: var(--s7-teal);
  --color-primary-hover: var(--s7-cyan);
  --color-primary-soft: var(--s7-teal-soft);
  --color-success: var(--s7-green);
  --color-warning: var(--s7-amber);
  --color-danger: var(--s7-red);
  --deck-bg: var(--s7-bg);
  --deck-bg-2: var(--s7-card);
  --deck-surface: var(--s7-card);
  --deck-surface-2: var(--s7-card-2);
  --deck-card-bg: var(--s7-card);
  --deck-input-bg: var(--s7-field);
  --deck-line: var(--s7-line);
  --deck-line-strong: var(--s7-line-strong);
  --deck-text: var(--s7-muted);
  --deck-text-strong: var(--s7-text);
  --deck-muted: var(--s7-muted);
  --deck-primary: var(--s7-teal);
  --deck-primary-strong: var(--s7-cyan);
  --deck-primary-soft: var(--s7-teal-soft);
  --deck-accent: var(--s7-teal);
  --deck-violet: var(--s7-teal);
  --deck-warn: var(--s7-amber);
  --deck-danger: var(--s7-red);
}

html[data-theme="light"] body.style7,
body.style7.theme-light {
  color-scheme: light;
  --s7-bg: #f4f7f8;
  --s7-sidebar: #edf2f3;
  --s7-card: #ffffff;
  --s7-card-2: #f7fafb;
  --s7-field: #f7fafb;
  --s7-text: #112025;
  --s7-muted: #607178;
  --s7-faint: #839198;
  --s7-line: rgba(22, 76, 80, .10);
  --s7-line-strong: rgba(15, 143, 139, .25);
  --s7-teal: #0f948f;
  --s7-cyan: #07899b;
  --accent-rgb: 15, 148, 143;
  --s7-teal-deep: #0b6f6b;
  --s7-teal-soft: rgba(15, 148, 143, .09);
  --s7-glow: 0 12px 30px rgba(15, 111, 107, .08);
  --s7-green: #23865f;
  --s7-amber: #a76c18;
  --s7-red: #c84f5b;
  --color-surface-offset: rgba(10, 44, 48, .025);
}

body.style7,
body.style7 * {
  box-sizing: border-box;
}

body.style7 {
  margin: 0 !important;
  min-width: 320px;
  min-height: 100vh;
  overflow-x: hidden !important;
  color: var(--s7-text) !important;
  background: var(--s7-bg) !important;
  font-family: "Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 14px;
  line-height: 1.45;
  font-variant-numeric: tabular-nums lining-nums;
  -webkit-font-smoothing: antialiased;
}

body.style7 :is(button, input, select, textarea) {
  font: inherit;
}

body.style7 :is(a, button, input, select, textarea):focus-visible {
  outline: 2px solid color-mix(in srgb, var(--s7-cyan) 72%, transparent) !important;
  outline-offset: 2px;
}

body.style7 :is(h1, h2, h3, h4, p) {
  margin-top: 0;
}

body.style7 :is(h1, h2, .hero-title, .r-hero-title, .section-head h2) {
  color: var(--s7-text) !important;
  font-family: "Onest", sans-serif !important;
  letter-spacing: -.035em !important;
  text-wrap: balance;
}

body.style7 :is(h1, .hero-title, .r-hero-title) {
  font-size: clamp(30px, 3vw, 42px) !important;
  line-height: 1.05 !important;
  font-weight: 750 !important;
}

body.style7 :is(h2, .section-head h2) {
  font-size: clamp(27px, 2.4vw, 36px) !important;
  line-height: 1.12 !important;
  font-weight: 750 !important;
}

body.style7 h3 {
  color: var(--s7-text) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

body.style7 :is(p, .muted, .subtitle, .hero-sub, .r-hero-sub, .section-head p) {
  color: var(--s7-muted) !important;
}

/* Shared product navigation */
body.style7 > .topbar,
body.style7 .app > .topbar:not(#topbar) {
  position: fixed !important;
  z-index: 100 !important;
  inset: 0 auto 0 0 !important;
  display: flex !important;
  width: var(--s7-sidebar-w) !important;
  height: 100vh !important;
  padding: 22px 14px 18px !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 16px !important;
  overflow: hidden auto !important;
  border: 0 !important;
  border-right: 1px solid var(--s7-line) !important;
  background: var(--s7-sidebar) !important;
  box-shadow: none !important;
}

body.style7 .topbar .brand {
  display: flex !important;
  min-height: 44px;
  padding: 0 8px !important;
  align-items: center !important;
  gap: 11px !important;
}

/* Product switcher is the sidebar header. Standalone Deck pages previously
   rendered a second HQ/Control Deck brand above it and jumped vertically
   when switching to Assistant. */
body.style7:not(.assistant-admin) > .topbar > .brand {
  display: none !important;
}

body.style7:not(.assistant-admin) > .topbar {
  padding: 18px 14px 70px !important;
  gap: 0 !important;
}

body.style7 .topbar .logo {
  display: grid !important;
  width: 38px !important;
  height: 38px !important;
  flex: 0 0 38px !important;
  place-items: center !important;
  border: 1px solid rgba(81, 216, 229, .28) !important;
  border-radius: 11px !important;
  color: #eaffff !important;
  background: linear-gradient(145deg, #177d7a, #20aaa9) !important;
  box-shadow: 0 10px 24px rgba(15, 130, 126, .16) !important;
  font-size: 12px !important;
  font-weight: 750 !important;
}

body.style7 .brand-title {
  color: var(--s7-text) !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

body.style7 .brand-sub {
  margin-top: 3px;
  color: var(--s7-faint) !important;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
}

body.style7 .topbar :is(.nav, .deck-modes) {
  display: flex !important;
  width: 100% !important;
  flex-direction: column !important;
  align-items: stretch !important;
}

body.style7 .topbar .deck-modes {
  margin: 0 !important;
  padding: 4px !important;
  gap: 2px !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 13px !important;
  background: color-mix(in srgb, var(--s7-card) 66%, transparent) !important;
}

body.style7 :is(.deck-mode, .topbar .nav-item) {
  display: flex !important;
  min-height: 46px !important;
  padding: 8px 10px !important;
  align-items: center !important;
  gap: 10px !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: var(--s7-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* Same access labels as in the Assistant product switcher. */
body.style7:not(.assistant-admin) .topbar .deck-mode::after {
  content: "Админ";
  margin-left: auto;
  color: var(--s7-faint) !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

body.style7:not(.assistant-admin) .topbar .deck-mode[href^="/lk"]::after,
body.style7:not(.assistant-admin) .topbar .deck-mode[href^="./lk"]::after {
  content: "Все";
}

body.style7 :is(.deck-mode, .topbar .nav-item):hover {
  color: var(--s7-text) !important;
  background: rgba(81, 216, 229, .06) !important;
}

body.style7 :is(.deck-mode, .topbar .nav-item).active {
  color: var(--s7-text) !important;
  background: var(--s7-teal-soft) !important;
  box-shadow: inset 3px 0 0 var(--s7-teal) !important;
}

body.style7 :is(.deck-mode, .topbar .nav-item).active :is(svg, .nav-icon) {
  color: var(--s7-cyan) !important;
}

html body.style7 .topbar .nav-item.active :is(.nav-label, .nav-sub) {
  color: inherit !important;
}

body.style7 .nav-group-title {
  margin: 16px 10px 5px !important;
  color: var(--s7-faint) !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body.style7 .nav-icon {
  display: grid !important;
  width: 23px !important;
  height: 23px !important;
  flex: 0 0 23px !important;
  place-items: center !important;
  color: var(--s7-faint) !important;
}

body.style7 .nav-info,
body.style7 .dm-text {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
}

body.style7 :is(.nav-label, .dm-text b) {
  color: inherit !important;
  font-size: 12.5px !important;
  line-height: 1.2 !important;
  font-weight: 650 !important;
}

body.style7 :is(.nav-sub, .dm-text i) {
  margin-top: 2px !important;
  color: inherit !important;
  opacity: .62;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
  font-style: normal !important;
}

body.style7 #s2ExtActions {
  display: grid !important;
  width: calc(100% - 8px) !important;
  box-sizing: border-box !important;
  margin: 18px 4px 0 !important;
  padding-top: 12px !important;
  grid-template-columns: 38px minmax(0, 1fr) 60px !important;
  align-items: center !important;
  gap: 7px !important;
  border-top: 1px solid var(--s7-line) !important;
}

body.style7 #s2ExtActions > * {
  display: inline-flex !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 34px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 7px 9px !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 9px !important;
  color: var(--s7-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 10.5px !important;
  white-space: nowrap !important;
}

body.style7 #s2ExtActions #authBadge {
  display: none !important;
}

/* Shared page canvas */
body.style7 .main-content-wrap {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 100vh !important;
  margin: 0 0 0 var(--s7-sidebar-w) !important;
  padding: 30px clamp(22px, 2.6vw, 42px) 72px !important;
  overflow: visible !important;
  background: var(--s7-bg) !important;
}

body.style7 .main-content-wrap > :is(main, .wrap, .r-wrap, #audRoot, #iqsRoot, #impactRoot),
body.style7 .main-content-wrap > .shell,
body.style7 .main-content-wrap > #dashboard,
body.style7 #dashboard > :not(#operatorsTabs) {
  width: min(100%, var(--s7-content-max)) !important;
  max-width: var(--s7-content-max) !important;
  min-width: 0 !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body.style7 :is(.page-wrap, .app, #dashboard, .workspace) {
  min-width: 0 !important;
  background: transparent !important;
}

body.style7 :is(.hero, .r-hero, .iqs-hero, .aud-hero, .im-hero) {
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--s7-text) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.style7 :is(.hero, .r-hero) > * {
  color: inherit;
}

body.style7 .section-head {
  display: flex !important;
  min-height: 74px !important;
  margin: 0 0 24px !important;
  padding: 0 0 20px !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  border-bottom: 1px solid var(--s7-line) !important;
}

body.style7 .section-head p {
  max-width: 780px;
  margin: 7px 0 0 !important;
  font-size: 14px !important;
}

/* Surfaces */
html body.style7 :is(
  .card, .panel, .shell.panel, .r-card, .r-panel,
  .ext-ov-card, .ext-ov-kpi, .aud-sec, .aud-kpi,
  .iqs-card, .iqs-kpi, .im-card, .im-kpi,
  .stats-panel, .metrics-panel, .config-group-card,
  .asset-list-card, .asset-form-card, .preview-card
) {
  min-width: 0 !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius) !important;
  color: var(--s7-text) !important;
  background: var(--s7-card) !important;
  background-image: none !important;
  box-shadow: none !important;
}

html body.style7 :is(.kpi, .metric, .stat, .tile, .r-kpi-item, .ext-ov-kpi, .aud-kpi) {
  min-width: 0 !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius) !important;
  color: var(--s7-text) !important;
  background: var(--s7-card) !important;
  background-image: none !important;
  box-shadow: none !important;
}

html body.style7 :is(.kpi.violet, .aud-kpi.is-hero, .ext-ov-hero, .ov-hero-card) {
  border-color: var(--s7-line-strong) !important;
  color: var(--s7-text) !important;
  background: linear-gradient(145deg, var(--s7-card), rgba(34, 199, 192, .09)) !important;
  box-shadow: var(--s7-glow) !important;
}

body.style7 :is(.kpi-value, .metric-value, .stat-value, .r-kpi-val, .aud-v, .k-val, .ext-ov-val) {
  color: var(--s7-text) !important;
  font-family: "Onest", sans-serif !important;
  font-variant-numeric: tabular-nums lining-nums !important;
  letter-spacing: -.045em !important;
  text-shadow: none !important;
}

body.style7 :is(.kpi-label, .metric-label, .r-kpi-label, .aud-l, .k-lab, .eyebrow) {
  color: var(--s7-muted) !important;
  font-family: "Onest", sans-serif !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
}

/* Controls */
html body.style7 :is(button, .btn, .r-btn, .aud-btn, .button) {
  min-height: 38px;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius-sm) !important;
  color: var(--s7-text) !important;
  background: var(--s7-card-2) !important;
  box-shadow: none !important;
  font-weight: 650 !important;
}

html body.style7 :is(button, .btn, .r-btn, .aud-btn, .button):hover {
  border-color: var(--s7-line-strong) !important;
  background: color-mix(in srgb, var(--s7-card-2) 90%, var(--s7-teal) 10%) !important;
  transform: none !important;
}

html body.style7 :is(.btn-primary, .r-btn-primary, button.primary, .primary-btn, .action-primary, .apply-btn) {
  border-color: transparent !important;
  color: #021716 !important;
  background: linear-gradient(135deg, #49d7d3, #20b7b2) !important;
  box-shadow: 0 10px 24px rgba(15, 130, 126, .16) !important;
}

html[data-theme="light"] body.style7 :is(.btn-primary, .r-btn-primary, button.primary, .primary-btn, .action-primary, .apply-btn),
body.style7.theme-light :is(.btn-primary, .r-btn-primary, button.primary, .primary-btn, .action-primary, .apply-btn) {
  color: #fff !important;
  background: linear-gradient(135deg, #0f948f, #0b7774) !important;
}

html body.style7 :is(input, select, textarea, .r-input, .r-select) {
  min-height: 40px;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius-sm) !important;
  color: var(--s7-text) !important;
  background: var(--s7-field) !important;
  box-shadow: none !important;
}

body.style7 :is(input, textarea)::placeholder {
  color: var(--s7-faint) !important;
  opacity: 1;
}

/* Tables */
body.style7 :is(.table-wrap, .r-table-wrap) {
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius) !important;
}

body.style7 table {
  width: 100%;
  border-collapse: collapse;
  color: var(--s7-text) !important;
  background: var(--s7-card) !important;
}

body.style7 table :is(th, td) {
  padding: 13px 14px !important;
  border-color: var(--s7-line) !important;
  vertical-align: middle !important;
}

body.style7 table th {
  color: var(--s7-muted) !important;
  background: var(--s7-card-2) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
}

/* Status is content, never a fixed overlay. */
html body.style7 :is(#status, .status, .r-status-bar, .im-state) {
  position: static !important;
  inset: auto !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--s7-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Ratings */
html body.style7 .ratings-command {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 22px !important;
  padding: 22px !important;
  overflow: visible !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius) !important;
  color: var(--s7-text) !important;
  background: var(--s7-card) !important;
  box-shadow: none !important;
}

body.style7 .ratings-command__head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 20px !important;
}

body.style7 .ratings-command__eyebrow {
  margin-bottom: 6px !important;
  color: var(--s7-teal) !important;
  font-size: 11px !important;
  letter-spacing: .05em !important;
  text-transform: none !important;
}

body.style7 .ratings-command .r-hero-title {
  color: var(--s7-text) !important;
  font-size: 34px !important;
  line-height: 1.08 !important;
}

body.style7 .ratings-command__source {
  color: var(--s7-muted) !important;
}

body.style7 .ratings-command .r-quick {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 4px !important;
  margin: 18px 0 12px !important;
  padding: 4px !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 12px !important;
  background: var(--s7-field) !important;
}

body.style7 .ratings-command .r-quick .r-btn {
  min-height: 38px !important;
  color: var(--s7-muted) !important;
  background: transparent !important;
}

body.style7 .ratings-command .r-quick .r-btn-active {
  color: var(--s7-text) !important;
  background: var(--s7-teal-soft) !important;
  box-shadow: inset 0 0 0 1px var(--s7-line-strong) !important;
}

body.style7 .ratings-filter-card {
  padding: 14px !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 14px !important;
  background: var(--s7-card-2) !important;
}

body.style7 .ratings-filter-grid {
  display: grid !important;
  grid-template-columns: 1.2fr 1.5fr 1.2fr 1fr 1.2fr auto !important;
  gap: 10px !important;
  align-items: end !important;
}

body.style7 .ratings-filter-field > span {
  color: var(--s7-muted) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.style7 .ratings-command :is(.r-select, .r-input) {
  color: var(--s7-text) !important;
  background: var(--s7-field) !important;
}

body.style7 .ratings-filter-actions .r-btn-primary {
  color: #021716 !important;
  background: linear-gradient(135deg, #49d7d3, #20b7b2) !important;
}

body.style7 :is(.rw-gauge-box, .rw-hero, .s2-hero) {
  color: var(--s7-text) !important;
  background: transparent !important;
}

body.style7 .rw-gauge-box {
  border-radius: var(--s7-radius) !important;
  background: var(--s7-card-2) !important;
}

body.style7 .rw-gauge :is(.g-val, .g-sub, text) {
  fill: var(--s7-text) !important;
  color: var(--s7-text) !important;
}

/* Chats and Feedbacks */
body.style7 .hero[style],
body.style7 .r-hero:not(.ratings-command) {
  padding: 0 !important;
}

body.style7 .r-hero:not(.ratings-command) {
  display: block !important;
}

body.style7 .r-hero:not(.ratings-command) .r-hero-title {
  max-width: 820px;
}

body.style7 .r-hero:not(.ratings-command) .r-status-bar {
  margin-top: 8px !important;
}

body.style7 .aisearch {
  border-left: 1px solid var(--s7-line) !important;
}

body.style7 .feedback-table {
  table-layout: fixed;
}

html body.style7 .operator-score-legend {
  display: flex !important;
  margin: 0 0 14px !important;
  padding: 10px 13px !important;
  align-items: center !important;
  gap: 8px 14px !important;
  flex-wrap: wrap !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 12px !important;
  color: var(--s7-muted) !important;
  background: var(--s7-card) !important;
}

html body.style7 .operator-score-legend > span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}

html body.style7 .operator-score-legend__title {
  color: var(--s7-text) !important;
  font-weight: 650 !important;
}

html body.style7 .operator-score-legend__rule {
  margin-left: auto !important;
}

html body.style7 .score-dot {
  display: inline-block !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
}

/* Audit: neutral cards, teal selection, no legacy violet blocks. */
html body.style7 #audRoot {
  width: min(100%, var(--s7-content-max)) !important;
}

html body.style7 #audRoot :is(.aud-kpi, .aud-action, .aud-leader-hero, .aud-attention, .aud-signal) {
  color: var(--s7-text) !important;
  background: var(--s7-card) !important;
  background-image: none !important;
  border-color: var(--s7-line) !important;
  box-shadow: none !important;
}

html body.style7 #audRoot :is(.aud-kpi.is-hero, .aud-workspace.on, .aud-tab.on, .aud-period button.on) {
  color: var(--s7-text) !important;
  background: var(--s7-teal-soft) !important;
  background-image: none !important;
  border-color: var(--s7-line-strong) !important;
  box-shadow: inset 0 0 0 1px rgba(34, 199, 192, .05) !important;
}

html body.style7 #audRoot :is(.aud-kpi, .aud-action) {
  border-left: 1px solid var(--s7-line) !important;
}

html body.style7 #audRoot .aud-action:first-child {
  color: var(--s7-text) !important;
  background: var(--s7-teal-soft) !important;
}

html body.style7 #audRoot :is(.aud-v, .aud-l, .aud-kpi-drill, .aud-kpi *) {
  text-shadow: none !important;
}

/* Overview and Assistant summary grids */
body.style7 :is(.ov-top, .ext-ov-top) {
  display: grid !important;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 2fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
}

body.style7 :is(.ov-hero-card, .ext-ov-hero) {
  min-height: 220px !important;
  padding: 24px !important;
  border: 1px solid var(--s7-line-strong) !important;
  border-radius: var(--s7-radius) !important;
  color: var(--s7-text) !important;
  background: linear-gradient(145deg, var(--s7-card), rgba(34, 199, 192, .09)) !important;
}

body.style7 :is(.ov-kpi-grid, .ext-ov-kpis) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

body.style7 .ext-ov-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 14px !important;
}

body.style7 :is(.ext-ov-card, .ext-ov-kpi) {
  padding: 20px !important;
}

/* Assistant shell */
body.style7.assistant-admin #topbar {
  display: contents !important;
}

body.style7.assistant-admin #topbar .brand {
  display: none !important;
}

body.style7.assistant-admin #topbar .nav {
  position: fixed !important;
  z-index: 120 !important;
  left: 0 !important;
  bottom: 0 !important;
  display: grid !important;
  width: var(--s7-sidebar-w) !important;
  padding: 10px 14px !important;
  grid-template-columns: 38px minmax(0, 1fr) 60px !important;
  flex-direction: initial !important;
  align-items: center !important;
  gap: 6px !important;
  border-top: 1px solid var(--s7-line) !important;
  background: color-mix(in srgb, var(--s7-sidebar) 94%, transparent) !important;
  backdrop-filter: blur(14px) !important;
}

body.style7.assistant-admin #topbar .nav #authBadge {
  display: none !important;
}

body.style7.assistant-admin #topbar .nav :is(#themeToggleBtn, #openChangeCredsModalBtn, #logoutBtn) {
  display: inline-flex !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 34px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 9px !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 9px !important;
  color: var(--s7-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 10.5px !important;
  white-space: nowrap !important;
}

body.style7.assistant-admin #topbar .nav :is(#themeToggleBtn, #openChangeCredsModalBtn, #logoutBtn):hover {
  color: var(--s7-text) !important;
  border-color: var(--s7-line-strong) !important;
  background: var(--s7-teal-soft) !important;
}

body.style7.assistant-admin #operatorsTabs {
  position: fixed !important;
  z-index: 100 !important;
  inset: 0 auto 0 0 !important;
  display: block !important;
  width: var(--s7-sidebar-w) !important;
  height: 100vh !important;
  padding: 18px 14px 70px !important;
  overflow: hidden auto !important;
  border: 0 !important;
  border-right: 1px solid var(--s7-line) !important;
  background: var(--s7-sidebar) !important;
  box-shadow: none !important;
}

body.style7.assistant-admin .main-content-wrap {
  margin-left: var(--s7-sidebar-w) !important;
}

body.style7.assistant-admin #dashboard.workspace {
  display: block !important;
  width: min(100%, var(--s7-content-max)) !important;
  max-width: var(--s7-content-max) !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.style7.assistant-admin #operatorsTabs #appModeTabs {
  display: flex !important;
  margin: 0 0 18px !important;
  padding: 4px !important;
  flex-direction: column !important;
  gap: 2px !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 13px !important;
  background: color-mix(in srgb, var(--s7-card) 66%, transparent) !important;
}

body.style7.assistant-admin #operatorsTabs #appModeTabs .seg-tab {
  min-height: 46px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
}

body.style7.assistant-admin #operatorsTabs .seg-tab {
  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  min-height: 48px !important;
  padding: 9px 10px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: var(--s7-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

body.style7.assistant-admin #operatorsTabs .seg-tab:hover {
  color: var(--s7-text) !important;
  background: rgba(81, 216, 229, .06) !important;
}

body.style7.assistant-admin #operatorsTabs #appModeTabs .seg-tab:not(.active):hover {
  background: transparent !important;
}

body.style7.assistant-admin #operatorsTabs .seg-tab.active {
  color: var(--s7-text) !important;
  background: var(--s7-teal-soft) !important;
  box-shadow: inset 3px 0 0 var(--s7-teal) !important;
}

body.style7.assistant-admin #operatorsTabs .seg-tab.active :is(svg, .tab-icon) {
  color: var(--s7-cyan) !important;
}

body.style7.assistant-admin #operatorsTabs :is(.tab-text, .nav-label) {
  color: inherit !important;
  font-size: 12.5px !important;
  font-weight: 650 !important;
}

body.style7.assistant-admin #operatorsTabs :is(.tab-sub, .nav-sub) {
  color: inherit !important;
  opacity: .62;
  font-size: 10.5px !important;
}

body.style7.assistant-admin #operatorsTabs .mode-badge {
  margin-left: auto;
  color: var(--s7-faint) !important;
  background: transparent !important;
  font-size: 9px !important;
}

body.style7.assistant-admin .shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.style7.assistant-admin :is(.form-grid, .filters-grid, .filter-grid) {
  gap: 12px !important;
}

body.style7.assistant-admin #section-notices :is(.assets-layout, .content-grid, .notices-layout) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr) !important;
  gap: 16px !important;
  align-items: start !important;
}

body.style7.assistant-admin #section-usage .usage-controls,
body.style7.assistant-admin #section-usage .usage-filterbar {
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius) !important;
  background: var(--s7-card) !important;
}

body.style7.assistant-admin #section-usage .usage-period.active {
  color: var(--s7-text) !important;
  background: var(--s7-teal-soft) !important;
  border-color: var(--s7-line-strong) !important;
}

body.style7.assistant-admin :is(.ext-ov-live, .badge, .pill, .chip) {
  border-color: var(--s7-line) !important;
  color: var(--s7-muted) !important;
  background: var(--s7-card) !important;
  box-shadow: none !important;
}

/* Route-level structural repairs. These are geometry rules, not a legacy
   theme layer: Style 7 owns them because the old equivalents were style2-only. */
body.style7 {
  --u-indigo: var(--s7-teal);
  --u-indigo-2: var(--s7-teal-deep);
  --u-indigo-3: #0b6f6b;
  --u-indigo-deep: var(--s7-teal-deep);
  --u-indigo-soft: var(--s7-teal-soft);
  --u-indigo-soft-line: var(--s7-line-strong);
  --u-lavender: var(--s7-cyan);
}

/* Ratings summary */
html body.style7 .ratings-command .r-quick .r-btn.r-btn-active {
  color: var(--s7-text) !important;
  background: var(--s7-teal-soft) !important;
  box-shadow: inset 0 0 0 1px var(--s7-line-strong) !important;
}

html body.style7 .ratings-command :is(.r-input, .r-select):focus {
  border-color: var(--s7-line-strong) !important;
  outline: 2px solid color-mix(in srgb, var(--s7-cyan) 20%, transparent) !important;
}

html body.style7 .ratings-filter-actions .r-btn.r-btn-primary {
  border-color: transparent !important;
  color: #021716 !important;
  background: linear-gradient(135deg, #49d7d3, #20b7b2) !important;
  box-shadow: 0 10px 24px rgba(15, 130, 126, .16) !important;
}

html body.style7 .r-wrap .r-card.rw-summary {
  display: block !important;
  padding: 22px !important;
  overflow: hidden !important;
}

html body.style7 .rw-summary .s2-hero {
  display: grid !important;
  grid-template-columns: 230px minmax(0, 1fr) !important;
  gap: 22px !important;
  align-items: center !important;
}

html body.style7 .rw-gauge {
  display: flex !important;
  width: 220px !important;
  height: auto !important;
  min-width: 220px !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  flex-direction: column !important;
  align-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

html body.style7 .rw-gauge svg {
  display: block !important;
  width: 210px !important;
  height: 210px !important;
  max-width: 210px !important;
  overflow: visible !important;
}

html body.style7 .rw-gauge .g-track {
  stroke: color-mix(in srgb, var(--s7-teal) 16%, transparent) !important;
}

html body.style7 .rw-gauge.score-good .g-fill { stroke: var(--s7-teal) !important; }
html body.style7 .rw-gauge.score-watch .g-fill { stroke: var(--s7-amber) !important; }
html body.style7 .rw-gauge.score-critical .g-fill { stroke: var(--s7-red) !important; }

html body.style7 .rw-gauge .g-val {
  fill: var(--s7-text) !important;
  font-size: 38px !important;
  font-weight: 700 !important;
  letter-spacing: -.045em !important;
}

html body.style7 .rw-gauge .g-of {
  fill: var(--s7-muted) !important;
  font-size: 12px !important;
}

html body.style7 .rw-gauge .rw-cap {
  color: var(--s7-muted) !important;
  font-size: 12px !important;
}

html body.style7 .rw-summary .s2-facts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

html body.style7 .rw-summary .s2-fact {
  display: flex !important;
  min-width: 0 !important;
  min-height: 104px !important;
  padding: 17px 18px !important;
  flex-direction: column !important;
  justify-content: center !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 14px !important;
  background: var(--s7-card-2) !important;
}

html body.style7 .rw-summary .s2-fact b {
  margin-bottom: 4px !important;
  color: var(--s7-text) !important;
  font-size: 32px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: -.045em !important;
}

html body.style7 .rw-summary .s2-fact span {
  color: var(--s7-muted) !important;
  font-size: 12px !important;
}

html body.style7 .rw-summary .s2-fact em {
  margin-top: 3px !important;
  color: var(--s7-faint) !important;
  font-size: 11px !important;
  font-style: normal !important;
}

html body.style7 .s2-triple {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 14px 0 !important;
}

html body.style7 .s2-triple > .r-card {
  min-width: 0 !important;
  min-height: 150px !important;
  margin: 0 !important;
  padding: 18px !important;
}

html body.style7 .s2-triple .rw-delta {
  display: block !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--s7-text) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 30px !important;
  line-height: 1.05 !important;
  font-weight: 700 !important;
  letter-spacing: -.045em !important;
  font-variant-numeric: tabular-nums !important;
}

html body.style7 .s2-triple .rw-delta svg {
  display: none !important;
}

html body.style7 .s2-triple .rw-delta > span {
  display: block !important;
}

html body.style7 .s2-triple .rw-delta .s2-delta-sub {
  display: block !important;
  margin-top: 5px !important;
  color: var(--s7-muted) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

html body.style7 .rw-chart {
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  color: var(--s7-text) !important;
  background: transparent !important;
}

html body.style7 .rw-chart > svg {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  overflow: visible !important;
}

html body.style7 .rw-chart .c-grid {
  stroke: var(--s7-line) !important;
  stroke-width: 1 !important;
  stroke-dasharray: 3 6 !important;
}

html body.style7 .rw-chart .c-axis {
  fill: var(--s7-muted) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
}

html body.style7 .rw-chart #rwAreaFill stop:first-child {
  stop-color: var(--s7-cyan) !important;
  stop-opacity: .22 !important;
}

html body.style7 .rw-chart #rwAreaFill stop:last-child {
  stop-color: var(--s7-cyan) !important;
  stop-opacity: 0 !important;
}

html body.style7 .rw-chart .c-area {
  fill: url(#rwAreaFill) !important;
  stroke: none !important;
}

html body.style7 .rw-chart .c-avg {
  stroke: color-mix(in srgb, var(--s7-muted) 68%, transparent) !important;
  stroke-width: 1 !important;
  stroke-dasharray: 5 6 !important;
}

html body.style7 .rw-chart .c-line {
  fill: none !important;
  stroke: var(--s7-cyan) !important;
  stroke-width: 2.4 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

html body.style7 .rw-chart .c-dot {
  fill: var(--s7-cyan) !important;
  stroke: var(--s7-card) !important;
  stroke-width: 1.4 !important;
}

html body.style7 .rw-chart .c-dot.bad {
  fill: var(--s7-red) !important;
  color: var(--s7-red) !important;
}

html body.style7 .rw-chart .c-vol {
  fill: color-mix(in srgb, var(--s7-cyan) 34%, transparent) !important;
}

html body.style7 .rw-chart .c-tip {
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .14s ease !important;
}

html body.style7 .rw-chart .c-hit:hover + .c-tip {
  opacity: 1 !important;
}

html body.style7 .rw-chart .c-tip rect {
  fill: var(--s7-card-2) !important;
  stroke: var(--s7-line-strong) !important;
  stroke-width: 1 !important;
}

html body.style7 .rw-chart .c-tip text {
  fill: var(--s7-text) !important;
  font-size: 10px !important;
}

html body.style7 .rw-bar {
  display: flex !important;
  width: 100% !important;
  height: 9px !important;
  margin-top: 12px !important;
  gap: 3px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: transparent !important;
}

html body.style7 .rw-seg {
  display: block !important;
  height: 9px !important;
  border-radius: 999px !important;
}

html body.style7 .rw-legend {
  display: grid !important;
  grid-template-columns: repeat(3, auto) !important;
  margin-top: 12px !important;
  gap: 7px 16px !important;
  justify-content: start !important;
}

html body.style7 .rw-leg {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: var(--s7-muted) !important;
  font-size: 11.5px !important;
  white-space: nowrap !important;
}

/* Audit workspace */
html body.style7 #audRoot .aud-ops {
  margin: 0 0 22px !important;
  padding: 18px !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius) !important;
  background: var(--s7-card) !important;
}

html body.style7 #audRoot .aud-ops-copy {
  display: flex !important;
  margin-bottom: 13px !important;
  align-items: baseline !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}

html body.style7 #audRoot .aud-focus-list {
  display: grid !important;
  gap: 8px !important;
}

html body.style7 #audRoot .aud-focus-item {
  display: flex !important;
  min-width: 0 !important;
  padding: 11px 12px !important;
  align-items: flex-start !important;
  gap: 10px !important;
  color: var(--s7-text) !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 12px !important;
  background: var(--s7-card-2) !important;
}

html body.style7 #audRoot .aud-focus-icon {
  display: inline-grid !important;
  width: 22px !important;
  height: 22px !important;
  flex: 0 0 22px !important;
  place-items: center !important;
  color: var(--s7-cyan) !important;
  border: 1px solid var(--s7-line-strong) !important;
  border-radius: 7px !important;
  background: var(--s7-teal-soft) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

html body.style7 #audRoot .aud-ops-copy b {
  color: var(--s7-text) !important;
  font-size: 14px !important;
}

html body.style7 #audRoot .aud-ops-copy span,
html body.style7 #audRoot .aud-actions-note {
  color: var(--s7-muted) !important;
  font-size: 11.5px !important;
}

html body.style7 #audRoot .aud-action-buttons {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
  gap: 10px !important;
}

html body.style7 #audRoot .aud-action-buttons .aud-ops-divider {
  display: none !important;
}

html body.style7 #audRoot .aud-action-buttons .aud-btn {
  width: 100% !important;
  height: auto !important;
  min-height: 72px !important;
  padding: 12px !important;
  overflow: visible !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  row-gap: 3px !important;
}

html body.style7 #audRoot .aud-action-buttons .aud-btn span {
  color: inherit !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

html body.style7 #audRoot .aud-action-buttons .aud-btn small {
  color: var(--s7-muted) !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
}

html body.style7 #audRoot .aud-action-buttons .aud-btn-primary small {
  color: rgba(2, 23, 22, .68) !important;
}

html body.style7 #audRoot .aud-actions-note {
  display: block !important;
  margin-top: 11px !important;
}

html body.style7 #audRoot .aud-workspaces {
  display: flex !important;
  margin: 0 0 14px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 5px !important;
  flex-wrap: wrap !important;
}

html body.style7 #audRoot :is(.aud-workspace-pane, .aud-analysis-pane) {
  display: none !important;
}

html body.style7 #audRoot :is(.aud-workspace-pane, .aud-analysis-pane).on {
  display: block !important;
}

html body.style7 #audRoot .aud-analysis-tabs {
  display: flex !important;
  margin: 0 0 16px !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
}

html body.style7 #audRoot .aud-analysis-pane.on {
  display: flow-root !important;
}

html body.style7 #audRoot .aud-analysis-pane > .aud-fresh:first-child {
  margin: 0 0 20px !important;
}

html body.style7 #audRoot .aud-workspace {
  min-height: 36px !important;
  padding: 7px 12px !important;
  color: var(--s7-muted) !important;
  background: transparent !important;
}

html body.style7 #audRoot .aud-workspace.on {
  color: var(--s7-text) !important;
  border-color: var(--s7-line-strong) !important;
  background: var(--s7-teal-soft) !important;
}

html body.style7 #audRoot .aud-kpis {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)) !important;
  gap: 12px !important;
}

html body.style7 #audRoot .aud-kpi {
  min-height: 148px !important;
  padding: 17px !important;
}

html body.style7 #audRoot .aud-leader-actions {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)) !important;
  gap: 10px !important;
  margin: 0 0 18px !important;
}

html body.style7 #audRoot .aud-action-card {
  display: flex !important;
  width: 100% !important;
  min-height: 76px !important;
  padding: 14px 15px !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 4px !important;
  text-align: left !important;
}

html body.style7 #audRoot .aud-action-card b {
  color: var(--s7-text) !important;
  font-size: 12.5px !important;
}

html body.style7 #audRoot .aud-action-card span {
  color: var(--s7-muted) !important;
  font-size: 10.5px !important;
}

html body.style7 #audRoot .aud-kpi::after,
html body.style7 .aisearch::before,
html body.style7 .stat::before,
html body.style7 .stat::after {
  display: none !important;
}

/* Route accents and semantic state components that legacy deck.css painted indigo. */
html body.style7 #iqsRoot {
  --i-accent: var(--s7-teal) !important;
  --i-accent2: var(--s7-cyan) !important;
}

html body.style7 :is(.pill.good, .status-bar.good, .status-pill.ok) {
  color: var(--s7-green) !important;
  border-color: color-mix(in srgb, var(--s7-green) 32%, transparent) !important;
  background: color-mix(in srgb, var(--s7-green) 11%, transparent) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

html body.style7 .hero-card {
  border-color: var(--s7-line-strong) !important;
  background: linear-gradient(145deg, var(--s7-card), rgba(34, 199, 192, .08)) !important;
  box-shadow: var(--s7-glow) !important;
}

html body.style7 :is(.count-badge, .badge-soft.live, .folder-count-badge) {
  color: var(--s7-teal) !important;
  border-color: var(--s7-line-strong) !important;
  background: var(--s7-teal-soft) !important;
  box-shadow: none !important;
}

/* Bot export tables keep their long SQL inside the card. */
html body.style7 .card:has(> .exp-table) {
  max-width: 100% !important;
  overflow-x: auto !important;
}

html body.style7 .exp-table {
  width: 100% !important;
  table-layout: fixed !important;
}

html body.style7 .exp-table :is(th, td) {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

html body.style7 .exp-table :is(code, pre) {
  white-space: pre-wrap !important;
  overflow-wrap: anywhere !important;
}

html body.style7 .exp-card-note,
html body.style7 .exp-card-note code {
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

html body.style7 #kbList,
html body.style7 #kbList > .card {
  min-width: 0 !important;
  max-width: 100% !important;
}

html body.style7 #kbList > .card {
  overflow: hidden !important;
}

html body.style7 .card:has(.log-box) {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

html body.style7 .log-box {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  white-space: pre-wrap !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

/* Project map: deliberately dark technical canvas, with cold teal/cyan only. */
html body.style7 .rx-kpi,
html body.style7 .rx-legend {
  color: var(--s7-text) !important;
  border: 1px solid var(--s7-line) !important;
  background: var(--s7-card) !important;
  box-shadow: none !important;
}

html body.style7 .rx-kpi b { color: var(--s7-text) !important; }
html body.style7 .rx-kpi span,
html body.style7 .rx-legend { color: var(--s7-muted) !important; }

html body.style7 .card.rx-shell {
  border: 1px solid rgba(81, 216, 229, .18) !important;
  background: radial-gradient(110% 100% at 50% 40%, #0b2025 0%, #071216 56%, #050b0e 100%) !important;
  box-shadow: 0 22px 60px rgba(0, 20, 24, .18) !important;
}

html body.style7 .rx-aurora i:nth-child(1) {
  background: radial-gradient(circle, rgba(34, 199, 192, .30), transparent 65%) !important;
}

html body.style7 .rx-aurora i:nth-child(2) {
  background: radial-gradient(circle, rgba(81, 216, 229, .25), transparent 65%) !important;
}

html body.style7 .rx-aurora i:nth-child(3) {
  background: radial-gradient(circle, rgba(15, 130, 126, .24), transparent 65%) !important;
}

html body.style7 .rx-core {
  background: radial-gradient(circle at 50% 38%, rgba(81, 216, 229, .30), rgba(34, 199, 192, .10) 60%, transparent 72%) !important;
}

html body.style7 .rx-core .rx-ring { border-color: rgba(81, 216, 229, .38) !important; }
html body.style7 .rx-core .rx-ring.r2 { border-color: rgba(34, 199, 192, .20) !important; }
html body.style7 .rx-core .rx-ring.r3 { border-color: rgba(81, 216, 229, .14) !important; }

html body.style7 .rx-core .rx-orb {
  border-color: rgba(81, 216, 229, .45) !important;
  background: radial-gradient(circle at 40% 35%, #15515a, #082329 72%) !important;
  box-shadow: 0 0 44px rgba(34, 199, 192, .36), inset 0 0 30px rgba(81, 216, 229, .18) !important;
}

html body.style7 .rx-node {
  border-color: color-mix(in srgb, var(--nc) 28%, rgba(81, 216, 229, .10)) !important;
  color: #eefbfc !important;
  background: rgba(8, 25, 30, .84) !important;
  box-shadow: 0 12px 28px rgba(0, 8, 10, .38) !important;
}

html body.style7 .rx-node .rx-tt { color: #eefbfc !important; }
html body.style7 .rx-node .rx-bd { color: #8da9ae !important; }

/* Legacy top strips compete with the shared Style 7 card hierarchy. */
html body.style7 :is(.stats-card, .mini-stat, .metric-card)::after {
  display: none !important;
  content: none !important;
}

@media (max-width: 1100px) {
  html body.style7 .rw-summary .s2-hero {
    grid-template-columns: 1fr !important;
  }

  html body.style7 .s2-triple {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  html body.style7 .rw-summary .s2-facts,
  html body.style7 #audRoot .aud-kpis,
  html body.style7 #audRoot .aud-leader-actions {
    grid-template-columns: 1fr !important;
  }
}

/* Semantic colour stays semantic, never decorative. */
body.style7 :is(.ok, .positive, .success, .score-good) { color: var(--s7-green) !important; }
body.style7 :is(.warn, .warning, .score-watch) { color: var(--s7-amber) !important; }
body.style7 :is(.bad, .danger, .critical, .score-critical, .error) { color: var(--s7-red) !important; }

@media (max-width: 1180px) {
  :root,
  body.style7 { --s7-sidebar-w: 246px; }

  body.style7 .ratings-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.style7 .ratings-filter-actions {
    grid-column: span 3;
  }
}

@media (max-width: 900px) {
  body.style7 > .topbar,
  body.style7 .app > .topbar:not(#topbar),
  body.style7.assistant-admin #operatorsTabs {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--s7-line) !important;
  }

  body.style7 .main-content-wrap,
  body.style7.assistant-admin .main-content-wrap {
    margin-left: 0 !important;
    padding: 24px 18px 56px !important;
  }

  body.style7 :is(.ov-top, .ext-ov-top) {
    grid-template-columns: 1fr !important;
  }

  body.style7 :is(.ov-kpi-grid, .ext-ov-kpis) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.style7 .ratings-command .r-quick {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.style7 .ratings-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.style7.assistant-admin #section-notices :is(.assets-layout, .content-grid, .notices-layout) {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 600px) {
  body.style7 :is(.ov-kpi-grid, .ext-ov-kpis, .ext-ov-grid) {
    grid-template-columns: 1fr !important;
  }

  body.style7 .ratings-command__head,
  body.style7 .section-head {
    flex-direction: column !important;
  }

  body.style7 .ratings-command .r-quick,
  body.style7 .ratings-filter-grid {
    grid-template-columns: 1fr !important;
  }

  body.style7 .ratings-filter-actions {
    grid-column: auto;
  }
}

/* V7: one deliberate scroll model per admin shell. */
html:has(> body.style7) {
  overflow-x: hidden !important;
}

html body.style7:not(.assistant-admin) .main-content-wrap {
  height: 100vh !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

html body.style7.assistant-admin,
html body.style7.assistant-admin :is(.page-wrap, .app) {
  width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  overflow: visible !important;
}

html body.style7.assistant-admin .main-content-wrap {
  height: auto !important;
  min-height: 100vh !important;
  overflow: visible !important;
}

/* Every top-level page uses the same 1920px presentation grid. */
html body.style7 .main-content-wrap > .workspace {
  width: min(100%, var(--s7-content-max)) !important;
  max-width: var(--s7-content-max) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

html body.style7 .main-content-wrap > :is(.hero, .r-hero) {
  width: min(100%, var(--s7-content-max)) !important;
  max-width: var(--s7-content-max) !important;
  margin: 0 auto 22px !important;
}

html body.style7 .main-content-wrap > #status {
  width: min(100%, var(--s7-content-max)) !important;
  max-width: var(--s7-content-max) !important;
  margin: 10px auto 0 !important;
}

/* Overview: the lead signal and six platform KPIs form one balanced block. */
html body.style7 .ov-top {
  grid-template-columns: minmax(320px, .72fr) minmax(0, 2.45fr) !important;
  gap: 14px !important;
  margin-bottom: 22px !important;
}

html body.style7 .ov-hero-card {
  min-height: 250px !important;
  padding: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  background:
    radial-gradient(circle at 88% 12%, rgba(81, 216, 229, .13), transparent 42%),
    linear-gradient(145deg, var(--s7-card), color-mix(in srgb, var(--s7-card) 82%, var(--s7-teal) 18%)) !important;
}

html body.style7 .ov-hero-eyebrow {
  margin: 0 0 18px !important;
  color: var(--s7-cyan) !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

html body.style7 .ov-hero-val {
  color: var(--s7-text) !important;
  font-size: clamp(58px, 4.4vw, 78px) !important;
  line-height: .92 !important;
  font-weight: 750 !important;
  letter-spacing: -.055em !important;
}

html body.style7 .ov-hero-lab {
  margin-top: 20px !important;
  color: var(--s7-text) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  font-weight: 650 !important;
}

html body.style7 .ov-hero-sub {
  margin-top: 7px !important;
  color: var(--s7-muted) !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

html body.style7 .ov-kpis {
  min-width: 0 !important;
  min-height: 250px !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.style7 .ov-kpis .kpi-hero-card {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 18px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: var(--s7-radius) !important;
  background: var(--s7-card) !important;
  box-shadow: none !important;
}

html body.style7 .ov-kpis :is(.kpi-label, .kpi-sub) {
  color: var(--s7-muted) !important;
}

html body.style7 .ov-kpis .kpi-label {
  font-size: 11px !important;
  line-height: 1.3 !important;
  font-weight: 650 !important;
}

html body.style7 .ov-kpis .kpi-value {
  margin-top: 7px !important;
  color: var(--s7-text) !important;
  font-size: clamp(27px, 2vw, 38px) !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  letter-spacing: -.04em !important;
}

html body.style7 .ov-kpis .kpi-sub {
  margin-top: 7px !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

/* IQS distribution: never collapse counts and labels into one text line. */
html body.style7 #iqsRoot .iqs-legend {
  display: flex !important;
  margin-top: 11px !important;
  align-items: center !important;
  gap: 8px 16px !important;
  flex-wrap: wrap !important;
}

html body.style7 #iqsRoot .iqs-leg {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: var(--s7-muted) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}

html body.style7 #iqsRoot .iqs-leg i {
  display: inline-block !important;
  width: 7px !important;
  height: 7px !important;
  flex: 0 0 7px !important;
  border-radius: 50% !important;
}

html body.style7 #iqsRoot .iqs-leg b {
  color: var(--s7-text) !important;
  font-weight: 700 !important;
}

/* Assistant navigation: one indicator per hierarchy level. */
html body.style7.assistant-admin #operatorsTabs .seg-tab.active::before,
html body.style7.assistant-admin #operatorsTabs .seg-tab.active::after {
  content: none !important;
  display: none !important;
}

html body.style7.assistant-admin #appModeTabs .seg-tab.active {
  box-shadow: none !important;
}

html body.style7.assistant-admin #operatorsTabs .seg-tab[data-tab].active {
  box-shadow: inset 3px 0 0 var(--s7-teal) !important;
}

@media (max-width: 1180px) {
  html body.style7 .ov-top {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 900px) {
  html body.style7:not(.assistant-admin),
  html body.style7:not(.assistant-admin) :is(.page-wrap, .app) {
    height: auto !important;
    min-height: 100vh !important;
    overflow: visible !important;
  }

  html body.style7:not(.assistant-admin) .main-content-wrap {
    height: auto !important;
    min-height: 100vh !important;
    overflow: visible !important;
    scrollbar-gutter: auto;
  }
}

@media (max-width: 760px) {
  html body.style7 .ov-kpis {
    grid-template-columns: 1fr !important;
    grid-template-rows: none !important;
  }
}

/* Embedded admin pages render only their content. The parent Assistant/Deck
   shell owns the sidebar, canvas offset and page padding. */
html.is-embedded body.style7 > .topbar,
html.is-embedded body.style7 .app > .topbar {
  display: none !important;
}

html.is-embedded body.style7 .main-content-wrap {
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

/* Overview: unified problem center */
body.style7 .ov-problems-shell {
  border-color: color-mix(in srgb, var(--s7-teal) 24%, var(--s7-line)) !important;
}

body.style7 .ov-problems-count {
  flex: 0 0 auto;
  padding: 6px 10px;
  border: 1px solid var(--s7-line);
  border-radius: 999px;
  color: var(--s7-muted);
  background: var(--s7-field);
  font-size: 11px;
  font-weight: 700;
}

body.style7 .ov-problems {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}

body.style7 .ov-problem,
body.style7 .ov-problems-ok {
  display: grid;
  min-width: 0;
  padding: 12px 14px;
  align-items: center;
  border: 1px solid var(--s7-line);
  border-radius: 11px;
  background: color-mix(in srgb, var(--s7-field) 74%, transparent);
}

body.style7 .ov-problem {
  grid-template-columns: 9px minmax(0, 1fr) auto;
  gap: 12px;
  color: var(--s7-text);
  text-decoration: none;
}

body.style7 .ov-problem:hover {
  border-color: var(--s7-line-strong);
  background: var(--s7-teal-soft);
}

body.style7 .ov-problem-dot,
body.style7 .ov-problems-ok > span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--s7-warn, #d2a64a);
  box-shadow: 0 0 12px color-mix(in srgb, var(--s7-warn, #d2a64a) 45%, transparent);
}

body.style7 .ov-problem.is-critical .ov-problem-dot {
  background: var(--s7-danger, #e46f76);
  box-shadow: 0 0 12px color-mix(in srgb, var(--s7-danger, #e46f76) 45%, transparent);
}

body.style7 .ov-problem-copy,
body.style7 .ov-problems-ok > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

body.style7 .ov-problem-copy b,
body.style7 .ov-problems-ok b {
  overflow: hidden;
  color: var(--s7-text);
  font-size: 12.5px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.style7 .ov-problem-copy small,
body.style7 .ov-problems-ok small {
  overflow: hidden;
  color: var(--s7-muted);
  font-size: 10.5px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.style7 .ov-problem-action {
  color: var(--s7-cyan);
  font-size: 10.5px;
  font-weight: 700;
  white-space: nowrap;
}

body.style7 .ov-problems-ok {
  grid-template-columns: 9px minmax(0, 1fr);
  gap: 12px;
}

body.style7 .ov-problems-ok > span {
  background: var(--s7-good, #3fc99b);
}

@media (max-width: 760px) {
  body.style7 .ov-problem { grid-template-columns: 9px minmax(0, 1fr); }
  body.style7 .ov-problem-action { grid-column: 2; }
}

/* Assistant: audit log and safe revision history */
body.style7 .audit-log-card,
body.style7 .history-card {
  margin-bottom: 16px !important;
  padding: 18px !important;
  border: 1px solid var(--s7-line) !important;
  border-radius: 12px !important;
  background: var(--s7-card) !important;
}

body.style7 .audit-log-head {
  display: flex;
  min-width: 0;
  margin-bottom: 14px;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

body.style7 .audit-log-head h3,
body.style7 .audit-log-head p { margin: 0 !important; }
body.style7 .audit-log-head h3 { color: var(--s7-text) !important; font-size: 14px !important; }
body.style7 .audit-log-head p { margin-top: 4px !important; color: var(--s7-muted) !important; font-size: 11px !important; }

body.style7 .audit-filters {
  display: grid;
  margin-bottom: 12px;
  grid-template-columns: minmax(0, 1fr) minmax(180px, .32fr);
  gap: 8px;
}

body.style7 .audit-filters :is(input, select) {
  width: 100% !important;
  min-width: 0 !important;
  height: 36px !important;
  box-sizing: border-box !important;
}

body.style7 .audit-timeline {
  display: grid;
  gap: 7px;
}

body.style7 .audit-event {
  display: grid;
  min-width: 0;
  padding: 11px 12px;
  grid-template-columns: 8px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  border: 1px solid var(--s7-line);
  border-radius: 10px;
  background: color-mix(in srgb, var(--s7-field) 72%, transparent);
}

body.style7 .audit-event-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--s7-teal);
  box-shadow: 0 0 11px color-mix(in srgb, var(--s7-teal) 42%, transparent);
}

body.style7 .audit-event-main,
body.style7 .audit-event-meta { display: grid; min-width: 0; gap: 4px; }
body.style7 .audit-event-title { display: flex; min-width: 0; align-items: baseline; gap: 8px; }
body.style7 .audit-event-title b { color: var(--s7-text); font-size: 12px; }
body.style7 .audit-event-title span,
body.style7 .audit-event-meta span { color: var(--s7-muted); font-size: 10px; }
body.style7 .audit-event-details { display: flex; min-width: 0; flex-wrap: wrap; gap: 5px; }
body.style7 .audit-event-details span {
  max-width: 100%;
  padding: 3px 6px;
  overflow: hidden;
  border: 1px solid var(--s7-line);
  border-radius: 6px;
  color: var(--s7-muted);
  font-size: 9.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.style7 .audit-event-meta { justify-items: end; white-space: nowrap; }
body.style7 .audit-event-meta b { color: var(--s7-text); font-size: 10.5px; }

@media (max-width: 760px) {
  body.style7 .audit-filters { grid-template-columns: 1fr; }
  body.style7 .audit-event { grid-template-columns: 8px minmax(0, 1fr); }
  body.style7 .audit-event-meta { grid-column: 2; justify-items: start; }
}

/* ── Stage 4: единый поиск по панели ───────────────────── */
body.style7 .s7-global-search-trigger {
  display: flex;
  width: calc(100% - 24px);
  min-height: 42px;
  margin: 10px 12px 16px;
  padding: 0 12px;
  align-items: center;
  gap: 9px;
  border: 1px solid var(--s7-line);
  border-radius: 10px;
  background: color-mix(in srgb, var(--s7-panel) 88%, transparent);
  color: var(--s7-muted);
  cursor: pointer;
  font: inherit;
  text-align: left;
}
body.style7 .s7-global-search-trigger:hover,
body.style7 .s7-global-search-trigger:focus-visible {
  border-color: color-mix(in srgb, var(--s7-teal) 55%, var(--s7-line));
  color: var(--s7-text);
  outline: none;
}
body.style7 .s7-global-search-trigger > span { color: var(--s7-teal); font-size: 19px; }
body.style7 .s7-global-search-trigger > b { flex: 1; font-size: 12px; font-weight: 650; }
body.style7 .s7-global-search-trigger kbd,
body.style7 .s7-search kbd {
  padding: 3px 6px;
  border: 1px solid var(--s7-line);
  border-radius: 6px;
  background: var(--s7-surface);
  color: var(--s7-muted);
  font: 10px/1.2 inherit;
}
body.s7-search-open { overflow: hidden !important; }
body.style7 .s7-search.hidden { display: none !important; }
body.style7 .s7-search { position: fixed; inset: 0; z-index: 100000; }
body.style7 .s7-search-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(1, 8, 12, .76);
  backdrop-filter: blur(8px);
}
body.style7 .s7-search-dialog {
  position: relative;
  width: min(680px, calc(100vw - 32px));
  max-height: min(720px, calc(100vh - 72px));
  margin: 7vh auto 0;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--s7-teal) 30%, var(--s7-line));
  border-radius: 16px;
  background: var(--s7-panel);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .56), 0 0 32px color-mix(in srgb, var(--s7-teal) 10%, transparent);
}
body.style7 .s7-search-box {
  display: flex;
  min-height: 62px;
  padding: 0 18px;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid var(--s7-line);
}
body.style7 .s7-search-box > span { color: var(--s7-teal); font-size: 25px; }
body.style7 #s7SearchInput {
  flex: 1;
  min-width: 0;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--s7-text) !important;
  font: 600 16px/1.4 inherit;
  outline: 0 !important;
}
body.style7 .s7-search-results { max-height: min(560px, calc(100vh - 190px)); padding: 8px; overflow-y: auto; }
body.style7 .s7-search-item {
  display: flex;
  min-height: 58px;
  padding: 10px 12px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--s7-text);
  text-decoration: none;
}
body.style7 .s7-search-item.active,
body.style7 .s7-search-item:hover {
  border-color: color-mix(in srgb, var(--s7-teal) 32%, transparent);
  background: color-mix(in srgb, var(--s7-teal) 12%, transparent);
}
body.style7 .s7-search-item > span { display: grid; min-width: 0; gap: 3px; }
body.style7 .s7-search-item b { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
body.style7 .s7-search-item small { overflow: hidden; color: var(--s7-muted); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
body.style7 .s7-search-item em { flex: 0 0 auto; color: var(--s7-teal); font-size: 9.5px; font-style: normal; text-transform: uppercase; }
body.style7 .s7-search-empty { padding: 36px 16px; color: var(--s7-muted); text-align: center; }
body.style7 .s7-search-dialog > footer { padding: 9px 18px; border-top: 1px solid var(--s7-line); color: var(--s7-muted); font-size: 9.5px; }

@media (max-width: 760px) {
  body.style7 .s7-search-dialog { margin-top: 12px; max-height: calc(100vh - 24px); }
  body.style7 .s7-search-results { max-height: calc(100vh - 150px); }
  body.style7 .s7-search-item em { display: none; }
}

/* ── Stage 5: presentation mode ───────────────────────── */
html body.style7.presentation-mode > .topbar,
html body.style7.presentation-mode .app > .topbar,
html body.style7.assistant-admin.presentation-mode #topbar,
html body.style7.assistant-admin.presentation-mode #operatorsTabs {
  display: none !important;
}

html body.style7.presentation-mode .main-content-wrap,
html body.style7.assistant-admin.presentation-mode .main-content-wrap {
  width: 100% !important;
  min-height: 100vh !important;
  margin-left: 0 !important;
  padding: clamp(22px, 3vw, 54px) !important;
}

html body.style7.presentation-mode .main-content-wrap > .workspace,
html body.style7.assistant-admin.presentation-mode #dashboard.workspace {
  width: min(100%, 1800px) !important;
  max-width: 1800px !important;
}

body.style7.presentation-mode :is(.ov-links, footer.status),
body.style7.assistant-admin.presentation-mode .ext-ov-card:has(.ext-ov-acts) {
  display: none !important;
}

body.style7 .presentation-mode-button.active {
  border-color: color-mix(in srgb, var(--s7-teal) 60%, var(--s7-line)) !important;
  background: color-mix(in srgb, var(--s7-teal) 16%, var(--s7-panel)) !important;
  color: var(--s7-text) !important;
}

body.style7 .presentation-toolbar.hidden { display: none !important; }
body.style7 .presentation-toolbar {
  position: fixed;
  z-index: 90000;
  top: 14px;
  right: 18px;
  display: flex;
  padding: 7px;
  align-items: center;
  gap: 7px;
  border: 1px solid color-mix(in srgb, var(--s7-teal) 30%, var(--s7-line));
  border-radius: 11px;
  background: color-mix(in srgb, var(--s7-panel) 94%, transparent);
  box-shadow: 0 12px 36px rgba(0, 0, 0, .28);
  backdrop-filter: blur(12px);
}
body.style7 .presentation-toolbar span { padding: 0 7px; color: var(--s7-muted); font-size: 10px; }
body.style7 .presentation-toolbar button {
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--s7-line);
  border-radius: 7px;
  background: var(--s7-surface);
  color: var(--s7-text);
  cursor: pointer;
  font: 600 10px/1 inherit;
}
body.style7 .presentation-toolbar button:hover { border-color: var(--s7-teal); }

body.style7.presentation-mode :is(.ov-hero-val, .ext-ov-val) { font-size: clamp(58px, 6vw, 104px) !important; }
body.style7.presentation-mode :is(.ov-kpis .kpi-value, .ov-kpis .value, .ext-ov-kpi .k-val) { font-size: clamp(32px, 3.2vw, 58px) !important; }
body.style7.presentation-mode :is(.ov-kpis, .ext-ov-kpis) { gap: clamp(14px, 2vw, 30px) !important; }

@media (max-width: 760px) {
  html body.style7.presentation-mode .main-content-wrap,
  html body.style7.assistant-admin.presentation-mode .main-content-wrap { padding: 16px !important; }
  body.style7 .presentation-toolbar { top: auto; right: 10px; bottom: 10px; left: 10px; justify-content: center; }
  body.style7 .presentation-toolbar span { display: none; }
}

@media print {
  @page { size: A4 landscape; margin: 10mm; }
  html,
  body.style7,
  body.style7.presentation-mode {
    color-scheme: light !important;
    --s7-bg: #ffffff;
    --s7-sidebar: #ffffff;
    --s7-card: #ffffff;
    --s7-card-2: #f5f8f8;
    --s7-field: #ffffff;
    --s7-text: #132126;
    --s7-muted: #52646c;
    --s7-faint: #6c7c83;
    --s7-line: rgba(18, 63, 68, .18);
    --s7-line-strong: rgba(15, 130, 126, .34);
    background: #ffffff !important;
  }
  body.style7 .presentation-toolbar,
  body.style7 .presentation-mode-button,
  body.style7.presentation-mode .ov-refresh button,
  body.style7.presentation-mode :is(.ov-links, footer.status),
  body.style7.assistant-admin.presentation-mode .ext-ov-card:has(.ext-ov-acts) { display: none !important; }
  html body.style7.assistant-admin.presentation-mode #topbar,
  html body.style7.assistant-admin.presentation-mode #operatorsTabs { display: none !important; }
  html body.style7.presentation-mode .main-content-wrap,
  html body.style7.assistant-admin.presentation-mode .main-content-wrap {
    width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  body.style7.presentation-mode :is(.shell, .panel, article, .ext-ov-card, .ext-ov-kpi, .ov-hero-card) {
    break-inside: avoid;
    box-shadow: none !important;
  }
}

/* STYLE7_SYSTEM_V26_END */
