/*
  Flat FMS visual layer.
  This file is loaded last on every page and intentionally changes only presentation.
  Design rule: page backgrounds stay white. FMS surfaces are flat blocks
  without shadows, glow, blur, glassmorphism, text shadows, or decorative depth.
  The mint background is reserved for the existing "ОТЧЁТ FMS" report card.
*/

:root {
  --bg: #ffffff;
  --surface: #ffffff;
  --surface-strong: #ffffff;
  --surface-muted: #f3faf7;
  --flat-mint: #e8f5f0;
  --flat-mint-strong: #c3e8f1;
  --flat-line: #e1f5ee;
  --flat-line-strong: #c8e9df;
  --flat-ink: #111518;
  --flat-muted: #475569;
  --accent: #17a5bd;
  --accent-soft: #dff5ed;
  --line: var(--flat-line);
  --line-strong: var(--flat-line-strong);
  --shadow-soft: none;
}

*,
*::before,
*::after {
  box-shadow: none !important;
  text-shadow: none !important;
}

*:not(img),
*::before,
*::after {
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html,
body {
  background: #ffffff !important;
}

body,
.document-page,
.admin-page,
.partners-page,
.partner-cabinet-page,
.not-found-page,
.tehnolog-flat-page {
  color: var(--flat-ink) !important;
  background: #ffffff !important;
  background-image: none !important;
}

.site-header,
.mobile-nav-panel,
.document-shell,
.admin-main,
.partners-page main,
.partner-cabinet-page .partner-main,
.tehnolog-flat-page main,
.tehnolog-flat-page .page,
.tehnolog-flat-page .panel-container,
.not-found-page {
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 0 !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.site-header {
  background: var(--surface) !important;
}

.section,
.hero,
.document-section,
.admin-auth,
.partners-page section,
.partner-cabinet-page section,
.gallery-section {
  background: transparent !important;
  background-image: none !important;
}

:where(
  [class*="card"],
  [class*="panel"],
  [class*="box"],
  [class*="tile"],
  [class*="item"],
  [class*="modal"],
  [class*="note"],
  [class*="preview"],
  [class*="stat"],
  [class*="metric"],
  [class*="kpi"],
  [class*="rule"],
  [class*="shot"],
  [class*="gallery"]
) {
  box-shadow: none !important;
  text-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

:where(
  [class*="card"],
  [class*="panel"],
  [class*="box"],
  [class*="tile"],
  [class*="modal"],
  [class*="preview"],
  [class*="stat"],
  [class*="metric"],
  [class*="kpi"],
  [class*="rule"]
) {
  border: 0 !important;
  background: var(--surface) !important;
  background-image: none !important;
}

:where(
  .button,
  .btn,
  button,
  input,
  select,
  textarea,
  .site-header,
  .mobile-nav-panel,
  .hero-schedule,
  .poster-frame,
  .risk-card,
  .standard-card,
  .step-card,
  .audience-card,
  .tariff-card,
  .trust-card,
  .form-card,
  .document-section,
  .not-found-panel,
  .checklist-panel,
  .checklist-group,
  .check-item,
  .checklist-company-card,
  .admin-auth-card,
  .admin-panel,
  .admin-stat,
  .admin-sidebar,
  .admin-company-item,
  .admin-preview-card,
  .admin-modal,
  .partners-hero-panel,
  .partners-cabinet-preview-shell,
  .partners-binding-note,
  .partners-cta-band,
  .partners-metric,
  .partners-kpi,
  .partners-binding-card,
  .partners-payout-card,
  .partners-rule,
  .partners-cabinet-list,
  .partners-cabinet-form,
  .partners-register-form,
  .partner-auth-flow-item,
  .partner-panel,
  .partner-sidebar,
  .partner-link-card,
  .partner-mini-stat,
  .partner-stat-card,
  .partner-flow-card,
  .partner-referral-item,
  .partner-referrals-empty,
  .partner-auth-shell,
  .hero-report-card .fms-wrap,
  .hero-report-card .fms-card,
  .tehnolog-flat-page .card,
  .tehnolog-flat-page .box,
  .tehnolog-flat-page .side-card,
  .tehnolog-flat-page .express-card,
  .tehnolog-flat-page .final-card,
  .tehnolog-flat-page .inverted-wrap,
  .tehnolog-flat-page .gallery-item,
  .tehnolog-flat-page .gallery-empty,
  .tehnolog-flat-page .panel-header,
  .tehnolog-flat-page .gallery-list,
  .tehnolog-flat-page .section-photo-slot,
  .tehnolog-flat-page .upload-area
) {
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  filter: none !important;
}

:where(
  .hero-schedule,
  .poster-frame,
  .risk-card,
  .standard-card,
  .step-card,
  .audience-card,
  .tariff-card,
  .trust-card,
  .form-card,
  .document-section,
  .not-found-panel,
  .checklist-panel,
  .checklist-group,
  .check-item,
  .checklist-company-card,
  .admin-auth-card,
  .admin-panel,
  .admin-stat,
  .admin-sidebar,
  .admin-company-item,
  .admin-preview-card,
  .admin-modal,
  .partners-hero-panel,
  .partners-cabinet-preview-shell,
  .partners-binding-note,
  .partners-cta-band,
  .partners-metric,
  .partners-kpi,
  .partners-binding-card,
  .partners-payout-card,
  .partners-rule,
  .partners-cabinet-list,
  .partners-cabinet-form,
  .partners-register-form,
  .partner-auth-flow-item,
  .partner-panel,
  .partner-sidebar,
  .partner-link-card,
  .partner-mini-stat,
  .partner-stat-card,
  .partner-flow-card,
  .partner-referral-item,
  .partner-referrals-empty,
  .partner-auth-shell,
  .hero-report-card .fms-card,
  .tehnolog-flat-page .card,
  .tehnolog-flat-page .box,
  .tehnolog-flat-page .side-card,
  .tehnolog-flat-page .express-card,
  .tehnolog-flat-page .inverted-wrap,
  .tehnolog-flat-page .gallery-item,
  .tehnolog-flat-page .gallery-empty,
  .tehnolog-flat-page .panel-header,
  .tehnolog-flat-page .gallery-list,
  .tehnolog-flat-page .upload-area
) {
  border: 0 !important;
  background: var(--surface) !important;
  background-image: none !important;
}

:where(
  .hero-report-card .fms-wrap,
  .not-found-page,
  .tehnolog-flat-page body,
  .tehnolog-flat-page
) {
  background: var(--flat-mint) !important;
  background-image: none !important;
}

:where(
  .hero-schedule::before,
  .hero-schedule::after,
  .poster-frame::before,
  .poster-frame::after,
  .tariff-card::before,
  .tariff-card::after,
  .trust-card::before,
  .trust-card::after,
  .form-card::before,
  .form-card::after,
  .partners-hero-panel::before,
  .partners-hero-panel::after,
  .partners-cabinet-preview-shell::before,
  .partners-cabinet-preview-shell::after,
  .partners-cta-band::before,
  .partners-cta-band::after,
  .partner-auth-shell::before,
  .partner-auth-shell::after,
  .partner-panel::before,
  .partner-panel::after,
  .tehnolog-flat-page .card::before,
  .tehnolog-flat-page .card::after,
  .tehnolog-flat-page .final-card::before,
  .tehnolog-flat-page .final-card::after,
  .tehnolog-flat-page .inverted-wrap::before,
  .tehnolog-flat-page .inverted-wrap::after
) {
  content: none !important;
  display: none !important;
}

:where(.button, .btn, button[type="submit"], .admin-auth-submit) {
  border: 0 !important;
  box-shadow: none !important;
  background: var(--accent) !important;
  color: #ffffff !important;
}

:where(.button--secondary, .button--ghost, .admin-auth-link, .document-back, .lang-btn, .tab-btn, .filter-btn) {
  background: var(--surface-muted) !important;
  color: var(--flat-ink) !important;
  border: 0 !important;
  box-shadow: none !important;
}

:where(.button:hover, .btn:hover, button[type="submit"]:hover) {
  background: #16728b !important;
  box-shadow: none !important;
  transform: none !important;
}

:where(.button--secondary:hover, .button--ghost:hover, .document-back:hover, .lang-btn:hover, .tab-btn:hover, .filter-btn:hover) {
  background: var(--flat-mint-strong) !important;
  color: var(--flat-ink) !important;
}

:where(input, select, textarea, .admin-copy-field, .partner-copy-field) {
  border: 0 !important;
  box-shadow: none !important;
  background: var(--surface-muted) !important;
  color: var(--flat-ink) !important;
}

:where(input:focus, select:focus, textarea:focus) {
  outline: 2px solid var(--flat-line-strong) !important;
  outline-offset: 2px;
}

:where(table, .fms-table) {
  border-collapse: collapse;
  background: transparent !important;
}

:where(th, td) {
  border-color: var(--flat-line) !important;
}

:where(
  .admin-table th,
  .admin-table td,
  .fms-table th,
  .fms-table td,
  .partners-cabinet-row,
  .partner-referral-item,
  .check-item,
  .admin-company-item,
  .admin-preview-list li
) {
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--flat-line) !important;
}

:where(.eyebrow, .section-label, .checklist-intro-kicker, .partners-payout-label, .partners-rule-label) {
  color: #0a4f5c !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

:where(.badge, .status-badge, .fms-badge-ok, .fms-badge-warn, .admin-status, .partner-status) {
  border: 0 !important;
  box-shadow: none !important;
  background: var(--surface-muted) !important;
  color: var(--accent) !important;
}

:where(
  .hero-copy p,
  .section-head p,
  .lead,
  .admin-auth-lead,
  .admin-overview-lead,
  .admin-panel-copy,
  .partners-page p,
  .partner-cabinet-page p,
  .document-page p,
  .tehnolog-flat-page p,
  .tehnolog-flat-page .muted
) {
  color: var(--flat-muted) !important;
}

.tehnolog-flat-page {
  --bg: #e8f5f0 !important;
  --glass: #ffffff !important;
  --glass-strong: #ffffff !important;
  --glass-subtle: #ffffff !important;
  --glass-border: transparent !important;
  --glass-border-subtle: transparent !important;
  --btn-bg: #17a5bd !important;
  --btn-text: #ffffff !important;
  --muted: #6d7479 !important;
  --text: #111518 !important;
}

.tehnolog-flat-page .menu1064-card,
.tehnolog-flat-page .final-card {
  background: var(--surface) !important;
  color: var(--flat-ink) !important;
}

.tehnolog-flat-page .menu1064-card h2,
.tehnolog-flat-page .menu1064-card p,
.tehnolog-flat-page .final-card h2,
.tehnolog-flat-page .final-card p,
.tehnolog-flat-page .final-card .cta-note {
  color: var(--flat-ink) !important;
}

.tehnolog-flat-page .gallery-item:hover,
.tehnolog-flat-page .card:hover,
.tehnolog-flat-page .btn:hover {
  transform: none !important;
  box-shadow: none !important;
}

.tehnolog-flat-page .lb-overlay,
.tehnolog-flat-page .modal-overlay,
.admin-modal-backdrop {
  background: rgba(8, 80, 65, 0.36) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.hero-report-card .fms-modal-x,
.hero-report-card .fms-sms-bubble {
  box-shadow: none !important;
}

.hero-offer {
  width: min(100%, 64ch) !important;
  max-width: 64ch !important;
}

.hero-offer::after {
  display: none !important;
}

.hero-offer-title {
  max-width: 64ch !important;
}

.hero-offer-title-line {
  white-space: nowrap !important;
}

.standard-shot {
  display: grid !important;
  gap: 10px !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
}

.standard-shot::after,
.standard-shot::before,
.standard-shot > *::before,
.standard-shot > *::after {
  content: none !important;
  display: none !important;
}

.standard-shot img {
  height: auto !important;
  aspect-ratio: 0.92 / 1 !important;
  box-shadow: none !important;
  filter: none !important;
}

.standard-shot figcaption {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(17, 21, 24, 0.62) !important;
  font-family: var(--font-sans) !important;
  font-size: clamp(0.92rem, 1.2vw, 1rem) !important;
  font-weight: 400 !important;
  line-height: 1.36 !important;
  letter-spacing: 0 !important;
  text-shadow: none !important;
}

.standard-shot-plus {
  z-index: 3 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

@media (min-width: 981px) {
  .hero-layout {
    grid-template-columns: minmax(0, 620px) 520px !important;
    gap: clamp(56px, 5vw, 80px) !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .hero-poster--report {
    width: 520px !important;
    max-width: 520px !important;
    justify-self: start !important;
  }

  .hero-poster--report .hero-report-card,
  .hero-report-card {
    width: 520px !important;
    max-width: 520px !important;
    justify-self: start !important;
  }

  .hero-report-card .fms-wrap {
    width: 520px !important;
    max-width: 520px !important;
    padding: 14px !important;
  }

  .hero-report-card .fms-scroll {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
    overflow-x: visible !important;
  }

  .hero-report-card .fms-table {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    font-size: 11px !important;
    table-layout: fixed !important;
  }

  .hero-report-card .fms-table th,
  .hero-report-card .fms-table td {
    padding-right: 4px !important;
    font-size: 11px !important;
  }

  .hero-report-card .fms-no-row td:nth-child(2) {
    white-space: normal !important;
    overflow: visible !important;
    line-height: 1.2 !important;
  }

  .hero-report-card .fms-card {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: auto !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .hero-report-card .fms-sec-row {
    display: grid !important;
    grid-template-columns: 22% 15% 22% 22% 19% !important;
    align-items: center !important;
    justify-content: start !important;
    column-gap: 0 !important;
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
  }

  .hero-report-card .fms-sec {
    grid-column: 1 / 5 !important;
  }

  .hero-report-card .fms-badge-ok,
  .hero-report-card .fms-badge-warn {
    grid-column: 5 !important;
    justify-self: center !important;
  }

  .hero-report-card .fms-scripts {
    display: grid !important;
    grid-template-columns: 1fr 0.72fr 1fr !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
    overflow: visible !important;
  }

  .hero-report-card .fms-btn {
    min-width: 0 !important;
    width: auto !important;
    min-height: 40px !important;
    padding: 8px 5px !important;
    justify-content: center !important;
    gap: 4px !important;
  }

  .hero-report-card .fms-btn-label {
    font-size: 10px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    letter-spacing: 0 !important;
    overflow-wrap: normal !important;
  }

  .hero-report-card .fms-arr {
    margin-left: 2px !important;
  }

  .hero-report-card .fms-footer {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
  }
}

@media (max-width: 640px) {
  :where(
    .admin-auth-card,
    .admin-panel,
    .partners-hero-panel,
    .partners-cabinet-preview-shell,
    .partner-auth-shell,
    .partner-panel,
    .checklist-panel,
    .not-found-panel,
    .tehnolog-flat-page .card
  ) {
    border-radius: 20px !important;
  }

  .hero-offer {
    width: 100% !important;
    max-width: 100% !important;
  }

  .hero-offer-title {
    max-width: 100% !important;
    font-size: 1.15rem !important;
    line-height: 1.4 !important;
    text-align: center !important;
  }

  .hero-offer-title-line {
    display: inline !important;
    white-space: normal !important;
  }

  .hero-report-card .fms-scroll {
    overflow-x: visible !important;
  }

  .hero-report-card .fms-table {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    font-size: 8px !important;
    table-layout: fixed !important;
  }

  .hero-report-card .fms-table th,
  .hero-report-card .fms-table td {
    padding: 5px 3px 5px 0 !important;
    font-size: 8px !important;
    line-height: 1.18 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .hero-report-card .fms-table col:nth-child(1) {
    width: 23% !important;
  }

  .hero-report-card .fms-table col:nth-child(2) {
    width: 18% !important;
  }

  .hero-report-card .fms-table col:nth-child(3) {
    width: 20% !important;
  }

  .hero-report-card .fms-table col:nth-child(4) {
    width: 22% !important;
  }

  .hero-report-card .fms-table col:nth-child(5) {
    width: 17% !important;
  }

  .hero-report-card .fms-name,
  .hero-report-card .fms-no,
  .hero-report-card .fms-retry {
    font-size: 8px !important;
    line-height: 1.16 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .hero-report-card .fms-no-row td:nth-child(2),
  .hero-report-card .fms-no,
  .hero-report-card .fms-retry {
    white-space: nowrap !important;
  }

  .hero-report-card .fms-no-row td:nth-child(2) {
    overflow: visible !important;
  }

  .hero-report-card .fms-retry {
    font-size: 7px !important;
    letter-spacing: -0.02em !important;
  }

  .hero-report-card .fms-card {
    padding-inline: 10px !important;
  }
}
