:root {
      --ink: #0f172a;
      --muted: #5d6b82;
      --line: #d7e0ec;
      --soft: #f1f5fb;
      --panel: #ffffff;
      --canvas: #eef3f9;
      --sidebar: #ffffff;
      --sidebar-ink: #111827;
      --brand: #1f7aff;
      --button-start: #1f7aff;
      --button-end: #4a86f7;
      --brand-dark: #0f63df;
      --button-hover-start: #0f63df;
      --button-hover-end: #4a86f7;
      --brand-soft: #eaf2ff;
      --hero-start: #1475ff;
      --hero-end: #4a86f7;
      --steel: #152238;
      --ok: #12805c;
      --warning: #b45309;
      --danger: #ef4444;
      --gray-accent: #64748b;
      --shadow: 0 18px 45px rgba(15, 23, 42, .09);
      --topbar: rgba(238, 243, 249, .86);
      --field: #ffffff;
      --field-ink: #0f172a;
      --chip: #f8fafc;
      --chip-danger: #fff0f0;
      --chip-info: #eaf2ff;
      --chip-success: #e8f7f0;
      --warning-soft: #fff4df;
      --danger-soft: #fff0f0;
      --diff-soft: #fff7ed;
      --gray-soft: #eef2f7;
    }

    body[data-theme="dark"] {
      --ink: #f8fbff;
      --muted: #b9c6dc;
      --line: #233755;
      --soft: #0c1626;
      --panel: #111d30;
      --canvas: #07111f;
      --sidebar: #101b2d;
      --sidebar-ink: #f8fbff;
      --brand-soft: rgba(31, 122, 255, .16);
      --steel: #c8d7ef;
      --shadow: 0 18px 45px rgba(0, 0, 0, .18);
      --topbar: rgba(7, 17, 31, .86);
      --field: #0d1829;
      --field-ink: #f8fbff;
      --chip: #0b1423;
      --chip-danger: rgba(239, 68, 68, .13);
      --chip-info: rgba(31, 122, 255, .16);
      --chip-success: rgba(18, 128, 92, .16);
      --warning-soft: rgba(180, 83, 9, .17);
      --danger-soft: rgba(239, 68, 68, .13);
      --diff-soft: rgba(180, 83, 9, .17);
      --gray-soft: rgba(100, 116, 139, .18);
    }

    * {
      letter-spacing: 0;
    }

    body {
      min-height: 100vh;
      color: var(--ink);
      background: var(--canvas);
      font-family: "Inter", Arial, Helvetica, sans-serif;
    }

    .app-shell {
      min-height: 100vh;
      display: grid;
      grid-template-columns: 280px minmax(0, 1fr);
      transition: grid-template-columns .22s ease;
    }

    body.sidebar-collapsed .app-shell {
      grid-template-columns: 82px minmax(0, 1fr);
    }

    .sidebar {
      background: var(--sidebar);
      color: var(--sidebar-ink);
      border-right: 1px solid var(--line);
      padding: 22px 18px;
      position: sticky;
      top: 0;
      height: 100vh;
      z-index: 20;
      transition: width .22s ease, padding .22s ease, box-shadow .22s ease;
      overflow-x: hidden;
      overflow-y: auto;
    }

    .sidebar-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 38px;
      align-items: start;
      gap: 12px;
      margin-bottom: 22px;
    }

    .sidebar-toggle {
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--panel);
      color: var(--ink);
      margin-top: 0;
      box-shadow: var(--shadow);
      transition: background .18s ease, color .18s ease, transform .2s ease;
    }

    .sidebar-toggle:hover {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
    }

    .sidebar-toggle i {
      transition: transform .18s ease;
    }

    .sidebar-toggle:hover i {
      transform: translateX(-1px);
    }

    body.sidebar-collapsed .sidebar {
      padding-left: 13px;
      padding-right: 13px;
      width: 82px;
    }

    body.sidebar-collapsed .sidebar:hover {
      width: 280px;
      box-shadow: 18px 0 36px rgba(0, 0, 0, .12);
    }

    @media (min-width: 992px) {
      body.sidebar-collapsed .sidebar:hover {
        bottom: 0;
        left: 0;
        position: fixed;
        top: 0;
      }
    }

    .brand-mark {
      width: 42px;
      height: 42px;
      display: grid;
      place-items: center;
      border-radius: 8px;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      font-size: 1.25rem;
      overflow: hidden;
    }

    .brand-mark img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .sidebar-brand-link {
      display: flex;
      align-items: center;
      gap: 12px;
      color: var(--sidebar-ink);
      text-decoration: none;
      min-width: 244px;
      min-height: 46px;
      min-width: 0;
      padding-right: 0;
      margin-bottom: 0;
    }

    .sidebar-brand-link:hover {
      color: var(--sidebar-ink);
    }

    .sidebar .nav-link {
      color: var(--sidebar-ink);
      border-radius: 8px;
      padding: 11px 12px;
      display: flex;
      align-items: center;
      gap: 10px;
      font-weight: 600;
      overflow: hidden;
      position: relative;
      transition: background .22s ease, color .22s ease, box-shadow .22s ease, transform .22s ease;
      white-space: nowrap;
    }

    .sidebar-group {
      margin-bottom: 5px;
      border: 1px solid transparent;
      border-radius: 10px;
      transition: background .24s ease, border-color .24s ease, box-shadow .24s ease, transform .22s ease;
    }

    .sidebar-group.open {
      background: color-mix(in srgb, var(--brand-soft) 52%, var(--panel));
      border-color: var(--line);
      padding: 4px;
      box-shadow: inset 0 0 0 1px rgba(31, 122, 255, .05);
    }

    .sidebar-group-toggle {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      border: 0;
      border-radius: 8px;
      background: transparent;
      color: var(--sidebar-ink);
      font-weight: 550;
      font-size: .9rem;
      padding: 7px 9px;
      text-align: left;
      white-space: nowrap;
      min-height: 38px;
      overflow: hidden;
      position: relative;
      transition: background .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
    }

    .sidebar-group-toggle span {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      min-width: 0;
    }

    .sidebar-group-toggle .sidebar-text,
    .sidebar .nav-link .sidebar-text {
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .sidebar-group-toggle:hover {
      background: var(--brand-soft);
      transform: translateX(3px);
    }

    .sidebar-group-toggle .bi-chevron-down {
      transition: transform .18s ease;
    }

    .sidebar-group.open .sidebar-group-toggle .bi-chevron-down {
      transform: rotate(180deg);
    }

    .sidebar-submenu {
      display: grid;
      gap: 1px;
      max-height: 0;
      overflow: hidden;
      margin: 0 0 0 13px;
      padding-left: 10px;
      border-left: 1px solid color-mix(in srgb, var(--hero-start) 30%, var(--line));
      opacity: 0;
      transition: max-height .34s cubic-bezier(.2, .8, .2, 1), padding-top .26s ease, opacity .22s ease, transform .26s ease;
      transform: translateY(-4px);
    }

    .sidebar-group.open .sidebar-submenu {
      max-height: 680px;
      padding-top: 3px;
      padding-bottom: 3px;
      opacity: 1;
      transform: translateY(0);
    }

    .sidebar-group.open .sidebar-group-toggle {
      background: var(--brand-soft);
      color: var(--brand);
    }

    .sidebar-group.open .sidebar-group-toggle:hover {
      background: var(--brand-soft);
    }

    .sidebar-submenu .nav-link {
      position: relative;
      border-radius: 5px;
      font-size: .8rem;
      font-weight: 500;
      min-height: 31px;
      padding: 3px 7px;
      background: transparent;
      box-shadow: none;
      transform: translateX(0);
    }

    .sidebar-submenu .nav-link::before {
      display: none;
    }

    .sidebar-submenu .nav-link.active::before,
    .sidebar-submenu .nav-link:hover::before {
      background: currentColor;
    }

    .sidebar-submenu .nav-link:not(.active):hover {
      background: color-mix(in srgb, var(--brand-soft) 55%, transparent);
      color: var(--brand);
      box-shadow: none;
      transform: translateX(2px);
    }

    .sidebar .nav-link i,
    .sidebar-group-toggle i:first-child,
    .sidebar-logout-link i {
      align-items: center;
      border-radius: 8px;
      display: inline-grid;
      height: 28px;
      place-items: center;
      transition: background .22s ease, color .22s ease, transform .22s ease;
      width: 28px;
      flex: 0 0 28px;
      text-align: center;
      font-size: 1rem;
    }

    .sidebar-group-toggle:hover i:first-child,
    .sidebar .nav-link:hover i,
    .sidebar .nav-link.active i {
      background: rgba(255, 255, 255, .18);
      transform: scale(1.08);
    }

    .sidebar-group-toggle:hover i:first-child {
      background: color-mix(in srgb, var(--brand) 14%, transparent);
      color: var(--brand);
    }

    .sidebar-text,
    .sidebar-card {
      transition: opacity .16s ease, transform .18s ease;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-text,
    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-card {
      opacity: 0;
      pointer-events: none;
      transform: translateX(-8px);
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-text {
      width: 0;
      max-width: 0;
      overflow: hidden;
      transform: none;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-head {
      grid-template-columns: 1fr;
      gap: 10px;
      margin-bottom: 28px;
      justify-items: center;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-toggle {
      grid-row: 1;
      width: 38px;
      height: 38px;
      margin: 0 auto;
      box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-toggle i {
      transform: rotate(180deg);
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-brand-link {
      min-width: 42px;
      width: 42px;
      height: 42px;
      min-height: 42px;
      padding-right: 0;
      justify-content: center;
      margin: 0 auto;
      overflow: hidden;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-brand-link .sidebar-text {
      display: none;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .nav-link,
    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group-toggle,
    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-logout-link {
      justify-content: center;
      padding-left: 10px;
      padding-right: 10px;
      gap: 0;
      transform: none;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group-toggle > span {
      width: 28px;
      min-width: 28px;
      justify-content: center;
      gap: 0;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-submenu {
      max-height: 0;
      opacity: 0;
      padding-left: 0;
      margin-left: 0;
      border-left: 0;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group {
      margin-bottom: 8px;
      padding: 0;
      background: transparent;
      border-color: transparent;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group-toggle {
      width: 46px;
      min-height: 46px;
      margin: 0 auto;
    }

    body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group.open .sidebar-group-toggle {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      box-shadow: 0 10px 24px rgba(31, 122, 255, .22);
    }

    .sidebar .nav-link.active,
    .sidebar .nav-link:hover {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      box-shadow: 0 10px 24px rgba(31, 122, 255, .26);
      transform: translateX(3px);
    }

    .sidebar .sidebar-submenu .nav-link.active {
      background: color-mix(in srgb, var(--brand-soft) 82%, var(--panel));
      box-shadow: none;
      color: var(--brand);
      font-weight: 500;
      transform: none;
    }

    .sidebar .sidebar-submenu .nav-link i {
      background: transparent;
      flex: 0 0 24px;
      font-size: .86rem;
      height: 24px;
      transform: none;
      width: 24px;
    }

    .sidebar .sidebar-submenu .nav-link:hover i,
    .sidebar .sidebar-submenu .nav-link.active i {
      background: transparent;
      transform: none;
    }

    .sidebar-logout-link {
      display: flex;
      align-items: center;
      gap: 10px;
      color: var(--danger);
      border-radius: 8px;
      font-weight: 800;
      margin-top: 22px;
      padding: 11px 12px;
      text-decoration: none;
      transition: background .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
    }

    .sidebar-logout-link:hover {
      background: var(--danger-soft);
      color: var(--danger);
      box-shadow: 0 10px 22px color-mix(in srgb, var(--danger) 10%, transparent);
      transform: translateX(3px);
    }

    .sidebar-card {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 14px;
      margin-top: 22px;
    }

    .sidebar .text-white-50,
    .text-secondary {
      color: var(--muted) !important;
    }

    .main {
      display: flex;
      flex-direction: column;
      grid-column: 2;
      min-width: 0;
      min-height: 100vh;
    }

    .topbar {
      position: sticky;
      top: 0;
      z-index: 4;
      background: var(--topbar);
      backdrop-filter: blur(14px);
      border-bottom: 1px solid var(--line);
    }

    .page-wrap {
      margin: 0;
      max-width: none;
      padding: clamp(18px, 1.5vw, 30px);
      width: 100%;
    }

    .main > .page-wrap {
      flex: 1;
    }

    .metric-strip,
    .content-panel,
    .parameter-card,
    .vehicle-summary,
    .compare-panel,
    .system-card {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 8px;
      box-shadow: var(--shadow);
    }

    .search-panel {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border: 0;
      border-radius: 22px;
      box-shadow: 0 18px 42px rgba(31, 122, 255, .24);
      padding: 22px 26px;
    }

    .search-field-label {
      color: rgba(255, 255, 255, .86);
      display: block;
      font-size: .72rem;
      font-weight: 900;
      margin-bottom: 6px;
      text-transform: uppercase;
    }

    .search-input {
      min-height: 46px;
      border: 1px solid var(--line);
      background: var(--field);
      color: var(--field-ink);
      border-radius: 10px;
      padding-left: 46px;
      font-size: .9rem;
      font-weight: 700;
    }

    .search-panel .form-select,
    .search-panel .form-control,
    .search-panel .btn {
      min-height: 46px;
      font-size: .9rem;
      border-radius: 10px;
    }

    .search-panel .form-select,
    .search-panel .form-control {
      background-color: rgba(255, 255, 255, .96);
      border-color: rgba(255, 255, 255, .45);
      color: #0f172a;
    }

    .search-panel .btn-brand {
      background: rgba(255, 255, 255, .96);
      border-color: rgba(255, 255, 255, .55);
      color: var(--brand);
      box-shadow: 0 10px 24px rgba(15, 23, 42, .12);
    }

    .search-panel .btn-brand:hover {
      background: #fff;
      border-color: #fff;
      color: var(--brand-dark);
    }

    .search-panel .form-select-lg {
      padding-top: .5rem;
      padding-bottom: .5rem;
    }

    .form-select,
    .form-control {
      background-color: var(--field);
      border-color: var(--line);
      color: var(--field-ink);
    }

    .form-select:focus,
    .form-control:focus {
      background-color: var(--field);
      border-color: var(--brand);
      color: var(--field-ink);
      box-shadow: 0 0 0 .2rem rgba(31, 122, 255, .16);
    }

    .search-icon {
      left: 17px;
      top: 50%;
      transform: translateY(-50%);
      color: var(--muted);
      font-size: 1rem;
      line-height: 1;
      pointer-events: none;
      transition: color .18s ease, transform .18s ease;
      z-index: 2;
    }

    .position-relative:focus-within > .search-icon {
      color: var(--brand);
      transform: translateY(-50%) scale(1.05);
    }

    .btn-brand {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      background: linear-gradient(135deg, var(--button-start), var(--button-end));
      border-color: transparent;
      color: #fff;
      font-weight: 700;
      min-height: 46px;
    }

    .btn-brand:hover {
      background: linear-gradient(135deg, var(--button-hover-start), var(--button-hover-end));
      border-color: transparent;
      color: #fff;
    }

    .admin-form .btn,
    .form-action-row .btn,
    .preference-actions .btn,
    .config-subnav a,
    .system-preview-actions .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      line-height: 1;
      white-space: nowrap;
    }

    .admin-form .btn:not(.btn-sm),
    .form-action-row .btn,
    .preference-actions .btn {
      min-height: 42px;
      padding: 0 14px;
    }

    .form-action-row {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }

    .filter-chip {
      border: 1px solid var(--line);
      background: var(--field);
      color: var(--steel);
      border-radius: 999px;
      padding: 8px 13px;
      font-size: .9rem;
      font-weight: 700;
      white-space: nowrap;
    }

    .filter-chip.active {
      color: #fff;
      border-color: transparent;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
    }

    .vehicle-summary {
      overflow: hidden;
    }

    .vehicle-hero {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      padding: 26px;
    }

    .vehicle-hero h1 {
      font-size: clamp(1.55rem, 4vw, 2.45rem);
      font-weight: 800;
      margin: 0;
    }

    .vehicle-badge {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(255, 255, 255, .12);
      border: 1px solid rgba(255, 255, 255, .18);
      font-size: .82rem;
      font-weight: 700;
      margin-bottom: 12px;
    }

    .vehicle-hero .text-white-50 {
      color: rgba(255, 255, 255, .72) !important;
    }

    .metric-strip {
      padding: 14px 18px;
      box-shadow: none;
      border-top: 0;
      border-left: 0;
      border-right: 0;
      border-radius: 0;
    }

    .metric {
      min-height: 68px;
      border-right: 1px solid var(--line);
    }

    .metric:last-child {
      border-right: 0;
    }

    .metric small {
      color: var(--muted);
      font-weight: 700;
      text-transform: uppercase;
      font-size: .72rem;
    }

    .metric strong {
      display: block;
      font-size: 1.05rem;
      margin-top: 4px;
    }

    .section-title {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 14px;
    }

    .section-title h2 {
      font-size: 1.08rem;
      font-weight: 800;
      margin: 0;
    }

    .parameter-card {
      padding: 16px;
      height: 100%;
      box-shadow: none;
      border-top: 3px solid var(--brand);
    }

    .parameter-card.valve {
      border-top-color: var(--danger);
    }

    .parameter-card.ignition {
      border-top-color: var(--brand);
    }

    .parameter-card.fuel {
      border-top-color: var(--ok);
    }

    .parameter-card.oil {
      border-top-color: var(--warning);
    }

    .param-icon {
      width: 38px;
      height: 38px;
      display: grid;
      place-items: center;
      border-radius: 8px;
      color: var(--brand);
      background: var(--brand-soft);
      flex: 0 0 auto;
    }

    .parameter-card.valve .param-icon {
      color: var(--danger);
      background: var(--danger-soft);
    }

    .parameter-card.ignition .param-icon {
      color: var(--brand);
      background: var(--brand-soft);
    }

    .parameter-card.fuel .param-icon {
      color: var(--ok);
      background: var(--chip-success);
    }

    .parameter-card.oil .param-icon {
      color: var(--warning);
      background: var(--warning-soft);
    }

    .system-card {
      padding: 14px;
      height: 100%;
      box-shadow: none;
      border-left: 4px solid var(--brand);
    }

    .system-card.motor {
      border-left-color: var(--danger);
    }

    .system-card.electric {
      border-left-color: #2563eb;
    }

    .system-card.fuel {
      border-left-color: #12805c;
    }

    .system-card.oil {
      border-left-color: #eab308;
    }

    .system-card.gray {
      border-left-color: var(--gray-accent);
    }

    .system-title {
      display: flex;
      align-items: center;
      gap: 9px;
      font-weight: 800;
      margin-bottom: 12px;
    }

    .read-row {
      display: block;
      border-top: 1px solid var(--line);
      padding: 10px 0;
    }

    .read-row:first-of-type {
      border-top: 0;
      padding-top: 0;
    }

    .read-row span {
      display: block;
      color: var(--muted);
      font-size: .84rem;
      font-weight: 800;
      margin-bottom: 6px;
      white-space: normal;
    }

    .value-chip {
      display: inline-flex;
      align-items: center;
      justify-content: flex-start;
      width: 100%;
      min-width: 0;
      max-width: none;
      min-height: 34px;
      border-radius: 8px;
      background: var(--chip);
      border: 1px solid var(--line);
      color: var(--ink);
      font-size: .88rem;
      font-weight: 900;
      text-align: center;
      padding: 6px 9px;
      white-space: normal;
    }

    .value-chip.danger {
      background: var(--chip-danger);
      border-color: #ffc9c9;
      color: #dc2626;
    }

    .value-chip.info {
      background: var(--chip-info);
      border-color: #bfdbfe;
      color: #1d4ed8;
    }

    .value-chip.success {
      background: var(--chip-success);
      border-color: #b7e4cc;
      color: var(--ok);
    }

    .value-chip.warning {
      background: var(--warning-soft);
      border-color: #fed7aa;
      color: var(--warning);
    }

    .parameter-card h3 {
      color: var(--brand);
      font-size: .95rem;
      font-weight: 800;
      margin: 0;
    }

    .parameter-card.valve h3 {
      color: var(--danger);
    }

    .parameter-card.ignition h3 {
      color: var(--brand);
    }

    .parameter-card.fuel h3 {
      color: var(--ok);
    }

    .parameter-card.oil h3 {
      color: var(--warning);
    }

    .parameter-values {
      display: grid;
      gap: 8px;
      margin-top: 13px;
    }

    .param-line {
      display: block;
      padding: 8px 0;
      border-top: 1px solid var(--line);
    }

    .param-line:first-child {
      border-top: 0;
      padding-top: 0;
    }

    .param-label {
      display: block;
      color: var(--muted);
      font-size: .8rem;
      font-weight: 800;
      margin-bottom: 6px;
    }

    .param-value {
      display: inline-flex;
      justify-content: center;
      align-items: center;
      min-height: 34px;
      width: 100%;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--chip);
      color: var(--ink);
      font-size: .9rem;
      font-weight: 900;
      text-align: center;
      padding: 6px 9px;
    }

    .parameter-card .note {
      background: var(--brand-soft);
      border: 1px solid var(--line);
      border-radius: 8px;
      color: var(--muted);
      font-size: .86rem;
      font-weight: 700;
      margin-top: 10px;
      padding: 8px 10px;
    }

    .sensor-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }

    .sensor-card {
      border: 1px solid var(--line);
      border-left: 4px solid var(--brand);
      border-radius: 8px;
      background: var(--field);
      padding: 13px;
      min-width: 0;
    }

    .sensor-card.fuel {
      border-left-color: var(--ok);
    }

    .sensor-card.ignition {
      border-left-color: var(--danger);
    }

    .sensor-card.signal {
      border-left-color: var(--gray-accent);
    }

    .sensor-card.position {
      border-left-color: var(--gray-accent);
    }

    .sensor-card.warning {
      border-left-color: var(--warning);
    }

    .sensor-head {
      display: flex;
      align-items: center;
      gap: 9px;
      margin-bottom: 10px;
    }

    .sensor-head i {
      color: var(--brand);
      font-size: 1rem;
    }

    .sensor-card.fuel .sensor-head i {
      color: var(--ok);
    }

    .sensor-card.ignition .sensor-head i {
      color: var(--danger);
    }

    .sensor-card.signal .sensor-head i {
      color: var(--gray-accent);
    }

    .sensor-card.position .sensor-head i {
      color: var(--gray-accent);
    }

    .sensor-card.warning .sensor-head i {
      color: var(--warning);
    }

    .sensor-card.fuel .sensor-reading strong {
      background: var(--chip-success);
      border-color: rgba(18, 128, 92, .35);
      color: var(--ok);
    }

    .sensor-card.ignition .sensor-reading strong {
      background: var(--chip-danger);
      border-color: rgba(239, 68, 68, .35);
      color: var(--danger);
    }

    .sensor-card.signal .sensor-reading strong {
      background: var(--gray-soft);
      border-color: rgba(100, 116, 139, .35);
      color: var(--gray-accent);
    }

    .sensor-card.position .sensor-reading strong {
      background: var(--gray-soft);
      border-color: rgba(100, 116, 139, .35);
      color: var(--gray-accent);
    }

    .sensor-card.warning .sensor-reading strong {
      background: var(--warning-soft);
      border-color: rgba(180, 83, 9, .35);
      color: var(--warning);
    }

    .sensor-head h3 {
      color: var(--ink);
      font-size: .92rem;
      font-weight: 900;
      margin: 0;
    }

    .sensor-readings {
      display: grid;
      gap: 8px;
    }

    .sensor-reading {
      display: grid;
      grid-template-columns: minmax(88px, .72fr) minmax(0, 1fr);
      gap: 8px;
      align-items: center;
      border-top: 1px solid var(--line);
      padding-top: 8px;
    }

    .sensor-reading:first-child {
      border-top: 0;
      padding-top: 0;
    }

    .sensor-reading span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 900;
    }

    .sensor-reading strong {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--chip);
      color: var(--ink);
      font-size: .84rem;
      font-weight: 900;
      line-height: 1.25;
      min-height: 32px;
      padding: 6px 8px;
      text-align: center;
    }

    .compare-panel {
      padding: 18px;
      box-shadow: none;
    }

    .compare-showcase {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
      gap: 12px;
      align-items: stretch;
      margin-bottom: 14px;
    }

    .model-card-mini {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      padding: 13px;
      min-width: 0;
    }

    .model-card-mini span {
      display: block;
      color: var(--muted);
      font-size: .74rem;
      font-weight: 900;
      text-transform: uppercase;
      margin-bottom: 5px;
    }

    .model-card-mini strong {
      display: block;
      color: var(--ink);
      font-size: .96rem;
      font-weight: 900;
      line-height: 1.25;
    }

    .model-card-mini small {
      display: block;
      color: var(--muted);
      font-weight: 700;
      margin-top: 4px;
    }

    .vs-badge {
      width: 46px;
      min-height: 100%;
      border-radius: 8px;
      display: grid;
      place-items: center;
      background: var(--chip);
      border: 1px solid var(--line);
      color: var(--muted);
      font-weight: 900;
    }

    .compare-summary {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 14px;
    }

    .compare-summary .status-pill {
      border: 1px solid var(--line);
    }

    .compare-filter-bar {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 14px;
    }

    .compare-filter {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      color: var(--muted);
      font-size: .82rem;
      font-weight: 900;
      min-height: 34px;
      padding: 6px 12px;
    }

    .compare-filter.active {
      border-color: rgba(31, 122, 255, .35);
      background: var(--brand-soft);
      color: var(--brand-dark);
    }

    .compare-matrix {
      display: grid;
      gap: 14px;
    }

    .compare-group {
      border: 1px solid var(--line);
      border-left: 4px solid var(--brand);
      border-radius: 8px;
      background: var(--field);
      overflow: hidden;
    }

    .compare-group.motor {
      border-left-color: var(--danger);
    }

    .compare-group.electric {
      border-left-color: #2563eb;
    }

    .compare-group.fuel {
      border-left-color: #12805c;
    }

    .compare-group.oil {
      border-left-color: #eab308;
    }

    .compare-group.signal {
      border-left-color: var(--gray-accent);
    }

    .compare-group.position,
    .compare-group.gray {
      border-left-color: var(--gray-accent);
    }

    .compare-group-head {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      border: 0;
      border-bottom: 1px solid var(--line);
      background: var(--chip);
      color: var(--ink);
      padding: 12px 14px;
      text-align: left;
    }

    .compare-group-head.collapsed {
      border-bottom-color: transparent;
    }

    .compare-group-title {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: var(--ink);
      font-size: .98rem;
      font-weight: 900;
    }

    .compare-group-title i {
      color: var(--gray-accent);
      font-size: 1rem;
    }

    .compare-group.motor .compare-group-title i {
      color: var(--danger);
    }

    .compare-group.electric .compare-group-title i {
      color: #2563eb;
    }

    .compare-group.fuel .compare-group-title i {
      color: var(--ok);
    }

    .compare-group.oil .compare-group-title i {
      color: #b45309;
    }

    .compare-group-meta {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 6px;
      justify-content: flex-end;
    }

    .compare-group-arrow {
      color: var(--muted);
      font-size: .9rem;
      transition: transform .18s ease;
    }

    .compare-group-head.collapsed .compare-group-arrow {
      transform: rotate(-90deg);
    }

    .compare-group-rows {
      display: grid;
      gap: 0;
      overflow: hidden;
      transition: grid-template-rows .24s ease, opacity .18s ease;
    }

    .compare-group-rows.is-open {
      grid-template-rows: 1fr;
      opacity: 1;
    }

    .compare-group-rows.is-collapsed {
      grid-template-rows: 0fr;
      opacity: 0;
    }

    .compare-group-rows > .compare-group-rows-inner {
      min-height: 0;
    }

    .compare-row {
      border: 0;
      border-top: 1px solid var(--line);
      border-radius: 0;
      background: var(--field);
      padding: 12px;
      display: grid;
      grid-template-columns: 170px minmax(0, 1fr) minmax(0, 1fr) 180px;
      gap: 10px;
      align-items: center;
    }

    .compare-row:first-child {
      border-top: 0;
    }

    .compare-param {
      color: var(--ink);
      font-size: .86rem;
      font-weight: 900;
    }

    .compare-param span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 800;
    }

    .compare-cell {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--chip);
      padding: 8px 10px;
      min-height: 42px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--ink);
      font-size: .86rem;
      font-weight: 900;
      text-align: center;
      line-height: 1.25;
    }

    .compare-result {
      justify-self: start;
    }

    .compare-result .diff {
      background: var(--diff-soft);
      color: #9a3412;
      border-radius: 8px;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: .78rem;
      font-weight: 900;
      padding: 6px 8px;
    }

    .compare-table {
      --bs-table-bg: transparent;
      --bs-table-color: var(--ink);
      --bs-table-border-color: var(--line);
      margin-bottom: 0;
      min-width: 680px;
    }

    .text-bg-light {
      background: var(--field) !important;
      color: var(--ink) !important;
      border-color: var(--line) !important;
    }

    .compare-table th {
      color: var(--muted);
      font-size: .78rem;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .compare-table td {
      font-weight: 800;
      vertical-align: middle;
    }

    .compare-table .diff {
      background: var(--diff-soft);
      color: #9a3412;
      border-radius: 8px;
      display: inline-block;
      padding: 5px 8px;
    }

    .compare-cards {
      display: none;
    }

    .compare-card {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      padding: 12px;
    }

    .compare-card + .compare-card {
      margin-top: 10px;
    }

    .compare-name {
      color: var(--brand);
      font-size: .88rem;
      font-weight: 900;
      margin-bottom: 10px;
    }

    .compare-values {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
    }

    .compare-value {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--chip);
      padding: 9px;
      min-width: 0;
    }

    .compare-value span {
      display: block;
      color: var(--muted);
      font-size: .72rem;
      font-weight: 900;
      margin-bottom: 5px;
    }

    .compare-value strong {
      display: block;
      color: var(--ink);
      font-size: .84rem;
      line-height: 1.3;
    }

    .compare-card .diff {
      background: var(--diff-soft);
      color: #9a3412;
      border-radius: 8px;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: .78rem;
      font-weight: 900;
      margin-top: 10px;
      padding: 6px 8px;
    }

    .status-pill {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 6px 9px;
      border-radius: 999px;
      font-size: .8rem;
      font-weight: 800;
    }

    .status-pill.ok {
      background: var(--chip-success);
      color: var(--ok);
    }

    .status-pill.review {
      background: var(--warning-soft);
      color: var(--warning);
    }

    .status-pill.danger {
      background: var(--chip-danger);
      color: var(--danger);
    }

    .notification-menu {
      position: relative;
    }

    .notification-toggle {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 10px;
      color: var(--ink);
      display: inline-flex;
      height: 40px;
      justify-content: center;
      position: relative;
      width: 42px;
    }

    .notification-toggle span {
      align-items: center;
      background: var(--danger);
      border: 2px solid var(--panel);
      border-radius: 999px;
      color: #fff;
      display: inline-flex;
      font-size: .68rem;
      font-weight: 900;
      height: 20px;
      justify-content: center;
      min-width: 20px;
      padding: 0 5px;
      position: absolute;
      right: -7px;
      top: -7px;
    }

    .notification-dropdown {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 14px;
      box-shadow: var(--shadow);
      min-width: min(360px, calc(100vw - 28px));
      padding: 10px;
    }

    .notification-head {
      align-items: center;
      border-bottom: 1px solid var(--line);
      display: flex;
      justify-content: space-between;
      gap: 12px;
      padding: 6px 6px 10px;
    }

    .notification-head strong {
      color: var(--ink);
      font-weight: 900;
    }

    .notification-head a {
      color: var(--brand);
      font-size: .78rem;
      font-weight: 900;
      text-decoration: none;
    }

    .notification-item {
      align-items: flex-start;
      border-radius: 12px;
      color: var(--ink);
      display: grid;
      gap: 10px;
      grid-template-columns: 34px 1fr;
      padding: 10px 8px;
      text-decoration: none;
    }

    .notification-item:hover {
      background: var(--field);
    }

    .notification-item > i {
      align-items: center;
      border-radius: 10px;
      display: inline-flex;
      height: 34px;
      justify-content: center;
      width: 34px;
    }

    .notification-item.receipt > i {
      background: color-mix(in srgb, var(--brand) 13%, transparent);
      color: var(--brand);
    }

    .notification-item.overdue > i {
      background: var(--chip-danger);
      color: var(--danger);
    }

    .notification-item.pending > i {
      background: var(--warning-soft);
      color: var(--warning);
    }

    .notification-item span {
      display: grid;
      gap: 2px;
      min-width: 0;
    }

    .notification-item strong {
      color: var(--ink);
      font-size: .9rem;
      font-weight: 900;
    }

    .notification-item small,
    .notification-item em {
      color: var(--muted);
      font-size: .78rem;
      font-style: normal;
      font-weight: 700;
      line-height: 1.35;
    }

    .notification-empty {
      color: var(--muted);
      font-size: .9rem;
      font-weight: 750;
      padding: 14px 8px 8px;
      text-align: center;
    }

    .notification-dashboard-grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .notification-dashboard-card {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: grid;
      gap: 5px 12px;
      grid-template-columns: 44px 1fr;
      padding: 14px;
    }

    .notification-dashboard-card i {
      align-items: center;
      border-radius: 12px;
      display: inline-flex;
      grid-row: span 2;
      height: 44px;
      justify-content: center;
      width: 44px;
    }

    .notification-dashboard-card.receipt i {
      background: color-mix(in srgb, var(--brand) 13%, transparent);
      color: var(--brand);
    }

    .notification-dashboard-card.pending i {
      background: var(--warning-soft);
      color: var(--warning);
    }

    .notification-dashboard-card.overdue i {
      background: var(--chip-danger);
      color: var(--danger);
    }

    .notification-dashboard-card span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .notification-dashboard-card strong {
      color: var(--ink);
      font-size: 1.45rem;
      font-weight: 900;
      line-height: 1;
    }

    .notification-dashboard-item {
      color: inherit;
      text-decoration: none;
    }

    .status-filter-button {
      border: 0;
      cursor: pointer;
    }

    .status-filter-button.active {
      outline: 2px solid var(--brand);
      outline-offset: 2px;
    }

    .payment-filter-panel {
      background: color-mix(in srgb, var(--field) 78%, transparent);
      border: 1px solid var(--line);
      border-radius: 14px;
      margin-bottom: 18px;
      padding: 16px;
    }

    .compact-filter {
      align-items: end;
      background: color-mix(in srgb, var(--field) 78%, transparent);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: grid;
      gap: 12px;
      grid-template-columns: minmax(240px, 1fr) minmax(180px, .45fr) auto auto;
      padding: 14px;
    }

    .compact-filter .form-label {
      color: var(--ink);
      font-size: .78rem;
      font-weight: 550;
      line-height: 1.2;
      margin-bottom: 6px;
      text-transform: uppercase;
    }

    .compact-filter .form-control,
    .compact-filter .form-select,
    .compact-filter .btn {
      border-radius: 8px;
      font-size: .92rem;
      font-weight: 650;
      min-height: 44px;
    }

    .payment-filter-panel .form-label,
    .admin-form .form-label,
    .receipt-upload-form .form-label {
      color: var(--ink);
      font-size: .84rem;
      font-weight: 550;
      line-height: 1.2;
      margin-bottom: 6px;
    }

    .payment-filter-panel .form-control,
    .payment-filter-panel .form-select,
    .payment-filter-panel .form-control-lg,
    .payment-filter-panel .form-select-lg,
    .receipt-upload-form .form-control {
      border-radius: 8px;
      font-size: .92rem;
      font-weight: 650;
      min-height: 44px;
      padding-bottom: .48rem;
      padding-top: .48rem;
    }

    .payment-filter-panel .btn {
      min-height: 44px;
    }

    .payment-filter-panel .form-control::placeholder {
      color: var(--muted);
      font-size: .92rem;
      font-weight: 600;
      opacity: .9;
    }

    .payment-filter-summary {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 12px;
    }

    .receipt-link {
      align-items: center;
      background: var(--chip-success);
      border-radius: 999px;
      color: var(--ok);
      display: inline-flex;
      font-size: .8rem;
      font-weight: 550;
      gap: 6px;
      padding: 6px 9px;
      text-decoration: none;
      white-space: nowrap;
    }

    .receipt-link:hover {
      color: var(--ok);
      filter: brightness(.98);
    }

    .receipt-link-ready {
      background: color-mix(in srgb, var(--brand) 12%, transparent);
      color: var(--brand);
    }

    .receipt-link-ready:hover {
      color: var(--brand);
    }

    .payment-has-receipt {
      background: color-mix(in srgb, var(--brand) 5%, transparent);
    }

    .receipt-review-callout {
      align-items: center;
      background: linear-gradient(135deg, color-mix(in srgb, var(--brand) 12%, var(--field)), var(--field));
      border: 1px solid color-mix(in srgb, var(--brand) 28%, var(--line));
      border-radius: 14px;
      display: flex;
      gap: 14px;
      justify-content: space-between;
      margin: 0 0 16px;
      padding: 16px;
    }

    .receipt-review-callout div {
      display: grid;
      gap: 4px;
    }

    .receipt-review-callout strong {
      color: var(--ink);
      font-size: 1.05rem;
      font-weight: 900;
    }

    .receipt-review-callout small {
      color: var(--muted);
      font-size: .86rem;
      font-weight: 750;
    }

    .tests-hero {
      align-items: center;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 18px;
      color: #fff;
      display: flex;
      gap: 18px;
      justify-content: space-between;
      padding: 28px;
      box-shadow: var(--shadow);
    }

    .tests-hero h1 {
      color: #fff;
      font-size: clamp(1.8rem, 4vw, 3rem);
      font-weight: 900;
      margin: 14px 0 8px;
    }

    .tests-hero p {
      color: rgba(255, 255, 255, .88);
      font-weight: 650;
      line-height: 1.55;
      margin: 0;
      max-width: 760px;
    }

    .tests-hero-card {
      background: rgba(255, 255, 255, .16);
      border: 1px solid rgba(255, 255, 255, .28);
      border-radius: 16px;
      min-width: 170px;
      padding: 18px;
      text-align: center;
    }

    .tests-hero-card strong {
      color: #fff;
      display: block;
      font-size: 2.2rem;
      font-weight: 900;
      line-height: 1;
    }

    .tests-hero-card span {
      color: rgba(255, 255, 255, .86);
      font-weight: 550;
    }

    .tests-report-panel {
      display: grid;
      gap: 18px;
      padding: 22px;
    }

    .tests-print-header {
      display: none;
    }

    .tests-report-head {
      align-items: flex-start;
      display: flex;
      gap: 16px;
      justify-content: space-between;
    }

    .tests-report-head h2 {
      color: var(--ink);
      font-size: 1.5rem;
      font-weight: 900;
      margin: 12px 0 6px;
    }

    .tests-report-head p {
      color: var(--muted);
      font-weight: 650;
      margin: 0;
    }

    .tests-actions,
    .tests-summary {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .tests-actions form,
    .tests-history-meta form {
      margin: 0;
    }

    .tests-meta-grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tests-meta-grid label,
    .tests-notes {
      display: grid;
      gap: 6px;
    }

    .tests-meta-grid span,
    .tests-notes span {
      color: var(--muted);
      font-size: .74rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .tests-groups {
      display: grid;
      gap: 14px;
    }

    .tests-filter-bar {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: flex;
      gap: 12px;
      justify-content: space-between;
      padding: 12px;
    }

    .tests-filter-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .tests-filter-bar .form-select {
      max-width: 260px;
    }

    .test-group {
      border: 1px solid var(--line);
      border-radius: 16px;
      overflow: hidden;
    }

    .test-group-head {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 7%, var(--panel));
      border-left: 5px solid var(--brand);
      display: flex;
      justify-content: space-between;
      gap: 12px;
      padding: 14px 16px;
    }

    .test-group.motor .test-group-head { border-left-color: var(--danger); }
    .test-group.electric .test-group-head { border-left-color: var(--brand); }
    .test-group.fuel .test-group-head { border-left-color: var(--ok); }
    .test-group.oil .test-group-head { border-left-color: var(--warning); }
    .test-group.gray .test-group-head { border-left-color: var(--gray-accent); }

    .test-group-head span {
      align-items: center;
      color: var(--ink);
      display: inline-flex;
      font-weight: 900;
      gap: 9px;
    }

    .test-group-head small {
      color: var(--muted);
      font-weight: 550;
    }

    .test-row {
      align-items: center;
      border-top: 1px solid var(--line);
      display: grid;
      gap: 12px;
      grid-template-columns: minmax(180px, 1.1fr) minmax(120px, .7fr) minmax(150px, .8fr) minmax(150px, .8fr);
      padding: 12px 16px;
    }

    .test-row-header {
      background: var(--soft);
      color: var(--muted);
      font-size: .74rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .test-param strong,
    .test-param small,
    .test-status small {
      display: block;
    }

    .test-param strong {
      color: var(--ink);
      font-weight: 900;
    }

    .test-param small,
    .test-status small {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 650;
      margin-top: 3px;
    }

    .test-expected {
      color: var(--ink);
      font-weight: 900;
    }

    .tests-notes {
      margin: 0;
    }

    .tests-history-list {
      display: grid;
      gap: 10px;
    }

    .tests-history-item {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: flex;
      gap: 14px;
      justify-content: space-between;
      padding: 13px 14px;
    }

    .tests-history-item strong,
    .tests-history-item span {
      display: block;
    }

    .tests-history-item strong {
      color: var(--ink);
      font-weight: 900;
    }

    .tests-history-item span,
    .tests-history-meta small {
      color: var(--muted);
      font-size: .84rem;
      font-weight: 650;
    }

    .tests-history-meta {
      align-items: center;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      justify-content: flex-end;
    }

    .tests-meta-grid.saved .form-control,
    .test-row .form-control,
    .tests-notes .form-control {
      min-height: 42px;
    }

    .files-hero,
    .landing-band {
      align-items: center;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 18px;
      color: #fff;
      display: flex;
      justify-content: space-between;
      gap: 18px;
      padding: 26px;
      box-shadow: var(--shadow);
    }

    .files-hero h1,
    .landing-band h2 {
      color: #fff;
      font-size: clamp(1.5rem, 3vw, 2.2rem);
      font-weight: 900;
      margin: 10px 0 6px;
    }

    .files-hero p,
    .landing-band p {
      color: rgba(255, 255, 255, .88);
      font-weight: 650;
      margin: 0;
      max-width: 720px;
    }

    .files-hero-stats {
      background: rgba(255, 255, 255, .15);
      border: 1px solid rgba(255, 255, 255, .25);
      border-radius: 14px;
      min-width: 150px;
      padding: 16px;
      text-align: center;
    }

    .files-hero-stats span {
      display: block;
      font-size: 2rem;
      font-weight: 900;
      line-height: 1;
    }

    .files-hero-stats small {
      color: rgba(255, 255, 255, .82);
      font-weight: 800;
    }

    .files-toolbar {
      display: grid;
      gap: 14px;
      margin-bottom: 18px;
    }

    .files-filter-bar {
      align-items: end;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: grid;
      gap: 10px;
      grid-template-columns: minmax(220px, 1.2fr) minmax(150px, .7fr) minmax(160px, .75fr) auto auto;
      margin-bottom: 16px;
      padding: 12px;
    }

    .files-filter-bar label {
      display: grid;
      gap: 6px;
      margin: 0;
    }

    .files-filter-bar label span {
      color: var(--muted);
      font-size: .72rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .files-filter-bar .btn {
      min-height: 42px;
      white-space: nowrap;
    }

    .files-breadcrumb {
      align-items: center;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      font-weight: 800;
    }

    .files-breadcrumb a {
      color: var(--brand);
      text-decoration: none;
    }

    .files-nav-row {
      align-items: center;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .files-back-btn {
      align-items: center;
      display: inline-flex;
      gap: 6px;
      font-weight: 550;
    }

    .files-actions {
      display: grid;
      gap: 10px;
      grid-template-columns: minmax(220px, .65fr) minmax(280px, 1fr);
    }

    .files-inline-form {
      align-items: center;
      display: flex;
      gap: 8px;
      margin: 0;
    }

    .files-inline-form .form-control {
      min-height: 42px;
    }

    .file-grid {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    }

    .file-card {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 12px;
      display: grid;
      gap: 12px;
      grid-template-columns: 44px minmax(0, 1fr) auto;
      padding: 12px;
    }

    .file-card-icon {
      background: var(--brand-soft);
      border-radius: 10px;
      color: var(--brand);
      display: grid;
      font-size: 1.35rem;
      height: 44px;
      place-items: center;
      width: 44px;
    }

    .file-card-body {
      min-width: 0;
    }

    .file-card-body strong,
    .file-card-body span {
      display: block;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .file-card-body strong {
      color: var(--ink);
      font-size: .92rem;
      font-weight: 900;
    }

    .file-card-body span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 700;
      margin-top: 3px;
    }

    .file-card-actions {
      display: flex;
      gap: 6px;
    }

    .file-card-actions form {
      margin: 0;
    }

    .files-drive-head {
      align-items: center;
      border-bottom: 1px solid var(--line);
      display: flex;
      justify-content: space-between;
      gap: 14px;
      padding: 4px 0 14px;
    }

    .files-drive-head strong,
    .files-drive-head span {
      display: block;
    }

    .files-drive-head strong {
      color: var(--ink);
      font-size: 1rem;
      font-weight: 900;
    }

    .files-drive-head span:not(.status-pill) {
      color: var(--muted);
      font-size: .84rem;
      font-weight: 700;
      margin-top: 2px;
    }

    .files-table-wrap {
      margin-top: 10px;
    }

    .files-table {
      align-items: center;
      display: grid;
      gap: 14px;
      grid-template-columns: 28px minmax(220px, 1.6fr) minmax(110px, .65fr) minmax(150px, .8fr) minmax(90px, .5fr) minmax(92px, auto);
    }

    .files-table-header {
      color: var(--muted);
      font-size: .75rem;
      font-weight: 900;
      padding: 10px 14px;
      text-transform: uppercase;
    }

    .files-table-header span:first-child {
      grid-column: 1 / span 2;
    }

    .file-row {
      background: transparent;
      border-bottom: 1px solid var(--line);
      border-radius: 0;
      padding: 10px 14px;
      transition: background .18s ease, border-color .18s ease;
    }

    .file-row:hover {
      background: var(--brand-soft);
      border-color: rgba(31, 122, 255, .22);
    }

    .file-name-cell {
      align-items: center;
      display: flex;
      gap: 12px;
      min-width: 0;
    }

    .file-row .file-card-icon,
    .file-row-icon {
      background: transparent;
      border-radius: 8px;
      color: var(--muted);
      flex: 0 0 28px;
      font-size: 1.12rem;
      height: 28px;
      width: 28px;
    }

    .file-row .file-card-icon .bi-folder-fill,
    .file-row-icon .bi-folder-fill {
      color: #4b5563;
    }

    .file-row .file-card-body {
      min-width: 0;
    }

    .file-row .file-card-body strong,
    .file-row .file-card-body a,
    .file-row .file-card-body span {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .file-row .file-card-body a {
      color: var(--ink);
      display: inline-block;
      font-weight: 900;
      max-width: 100%;
      text-decoration: none;
    }

    .file-row .file-card-body a:hover {
      color: var(--brand);
    }

    .file-preview-link {
      background: transparent;
      border: 0;
      color: var(--ink);
      display: inline-block;
      font: inherit;
      font-weight: 900;
      max-width: 100%;
      overflow: hidden;
      padding: 0;
      text-align: left;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .file-preview-link:hover {
      color: var(--brand);
    }

    .file-meta-cell {
      color: var(--muted);
      font-size: .84rem;
      font-weight: 750;
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .file-row .file-card-actions {
      justify-content: flex-end;
    }

    .file-action-menu {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 12px;
      box-shadow: var(--shadow);
      padding: 6px;
    }

    .file-action-menu .dropdown-item {
      align-items: center;
      border-radius: 8px;
      color: var(--ink);
      display: flex;
      font-size: .86rem;
      font-weight: 800;
      gap: 8px;
      padding: 9px 10px;
    }

    .file-action-menu .dropdown-item:hover {
      background: var(--brand-soft);
      color: var(--ink);
    }

    .file-action-menu form {
      margin: 0;
    }

    .file-action-menu .dropdown-divider {
      border-color: var(--line);
      margin: 6px 0;
    }

    .pdf-preview-modal .modal-content {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 18px;
      box-shadow: var(--shadow);
      overflow: hidden;
    }

    .pdf-preview-modal .modal-header {
      align-items: center;
      background: var(--field);
      border-bottom: 1px solid var(--line);
      gap: 12px;
    }

    .pdf-preview-modal .modal-title {
      color: var(--ink);
      font-size: 1rem;
      font-weight: 900;
      line-height: 1.25;
      margin: 0;
      max-width: min(58vw, 720px);
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .pdf-preview-modal .modal-header small {
      color: var(--muted);
      display: block;
      font-size: .78rem;
      font-weight: 750;
      margin-top: 2px;
    }

    .pdf-preview-actions {
      align-items: center;
      display: flex;
      gap: 10px;
      margin-left: auto;
    }

    .pdf-preview-modal .modal-body {
      background: #0b1220;
      height: min(78vh, 820px);
      padding: 0;
    }

    .pdf-preview-modal iframe {
      border: 0;
      display: block;
      height: 100%;
      width: 100%;
    }

    .landing-page {
      background:
        linear-gradient(90deg, rgba(31, 122, 255, .045) 1px, transparent 1px),
        linear-gradient(0deg, rgba(31, 122, 255, .045) 1px, transparent 1px),
        linear-gradient(115deg, #e8f2ff 0%, #f8fbff 46%, #eefbf8 100%);
      background-attachment: fixed;
      background-position: center top;
      background-size: 72px 72px, 72px 72px, auto;
      color: var(--ink);
      min-height: 100vh;
      padding: 24px;
      scroll-behavior: smooth;
    }

    body[data-theme="dark"] .landing-page {
      background:
        linear-gradient(90deg, rgba(96, 165, 250, .06) 1px, transparent 1px),
        linear-gradient(0deg, rgba(96, 165, 250, .06) 1px, transparent 1px),
        linear-gradient(115deg, #081b38 0%, #07111f 48%, #062420 100%);
      background-attachment: fixed;
      background-position: center top;
      background-size: 72px 72px, 72px 72px, auto;
    }

    .landing-top-anchor {
      display: block;
      height: 0;
      scroll-margin-top: 0;
      width: 0;
    }

    .landing-nav {
      align-items: center;
      backdrop-filter: blur(18px);
      background: color-mix(in srgb, var(--canvas) 86%, transparent);
      border: 1px solid var(--line);
      border-radius: 18px;
      box-shadow: 0 18px 50px rgba(0, 0, 0, .12);
      display: grid;
      gap: 10px;
      grid-template-columns: auto minmax(0, 1fr);
      margin: 0 auto 24px;
      max-width: 1180px;
      padding: 10px;
      position: sticky;
      top: 14px;
      z-index: 30;
    }

    .landing-brand,
    .landing-nav-links,
    .landing-nav-sections,
    .landing-nav-actions {
      align-items: center;
      display: flex;
      gap: 12px;
    }

    .landing-brand {
      color: var(--ink);
      justify-self: start;
      min-width: max-content;
      text-decoration: none;
    }

    .landing-menu-toggle {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 12px;
      color: var(--ink);
      display: none;
      height: 44px;
      justify-content: center;
      transition: background .18s ease, color .18s ease, transform .18s ease;
      width: 44px;
    }

    .landing-menu-toggle:hover {
      background: var(--brand-soft);
      color: var(--brand);
      transform: translateY(-1px);
    }

    .landing-brand span {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 12px;
      color: #fff;
      display: grid;
      height: 44px;
      overflow: hidden;
      place-items: center;
      width: 44px;
    }

    .landing-brand img {
      height: 100%;
      object-fit: cover;
      width: 100%;
    }

    .landing-brand strong {
      font-size: 1.05rem;
      font-weight: 900;
    }

    .landing-nav-links {
      align-items: center;
      display: grid;
      gap: 10px;
      flex: 1 1 auto;
      grid-template-columns: minmax(0, 1fr) auto;
      min-width: 0;
    }

    .landing-nav-sections {
      flex: 1 1 auto;
      flex-wrap: nowrap;
      justify-content: center;
      gap: 4px;
      min-width: 0;
      padding: 0;
    }

    .landing-nav-sections a {
      align-items: center;
      border-radius: 10px;
      color: var(--ink);
      display: inline-flex;
      font-size: .84rem;
      font-weight: 550;
      gap: 5px;
      min-height: 34px;
      padding: 7px 10px;
      text-decoration: none;
      transition: background .18s ease, color .18s ease, transform .18s ease;
      white-space: nowrap;
    }

    .landing-nav-sections a:hover,
    .landing-nav-sections a.active {
      background: var(--brand-soft);
      color: var(--brand);
      transform: translateY(-1px);
    }

    .landing-nav-sections a.active {
      box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--brand) 22%, transparent);
    }

    .landing-nav-actions {
      border-left: 1px solid var(--line);
      flex: 0 1 auto;
      flex-wrap: nowrap;
      gap: 8px;
      justify-content: flex-end;
      min-width: max-content;
      padding-left: 12px;
    }

    .landing-nav-actions .btn {
      align-items: center;
      display: inline-flex;
      gap: 7px;
      min-height: 42px;
      justify-content: center;
      min-width: auto;
      padding-left: 13px;
      padding-right: 13px;
      white-space: nowrap;
    }

    .landing-theme-toggle {
      border-radius: 12px;
      justify-content: center;
      min-height: 42px;
      min-width: 44px;
      padding-left: 0;
      padding-right: 0;
      white-space: nowrap;
      width: 44px;
    }

    .landing-theme-toggle span {
      display: none;
    }

    .landing-nav-actions .btn-brand {
      min-width: 118px;
    }

    .landing-mobile-menu {
      background: var(--panel);
      border-right: 1px solid var(--line);
      border-radius: 0 22px 22px 0;
      color: var(--ink);
      max-width: 88vw;
      width: 320px;
    }

    .landing-mobile-menu .offcanvas-header {
      align-items: center;
      border-bottom: 1px solid var(--line);
      min-height: 76px;
      padding: 18px 64px 18px 18px;
      position: relative;
    }

    .landing-mobile-menu .btn-close {
      background-color: var(--field);
      border: 1px solid var(--line);
      border-radius: 10px;
      box-shadow: none;
      margin: 0;
      opacity: 1;
      padding: 10px;
      position: absolute;
      right: 18px;
      top: 20px;
    }

    .landing-mobile-menu .offcanvas-body {
      display: flex;
      flex-direction: column;
      gap: 16px;
      padding: 16px 18px 18px;
    }

    .landing-mobile-menu-brand {
      align-items: center;
      display: flex;
      gap: 12px;
      min-width: 0;
      width: 100%;
    }

    .landing-mobile-menu-brand > span {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 12px;
      color: #fff;
      display: grid;
      flex: 0 0 44px;
      height: 44px;
      overflow: hidden;
      place-items: center;
      width: 44px;
    }

    .landing-mobile-menu-brand img {
      height: 100%;
      object-fit: cover;
      width: 100%;
    }

    .landing-mobile-menu-brand strong,
    .landing-mobile-menu-brand small {
      display: block;
    }

    .landing-mobile-menu-brand strong {
      font-weight: 900;
      line-height: 1.1;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .landing-mobile-menu-brand small {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 750;
      margin-top: 3px;
    }

    .landing-mobile-links {
      display: grid;
      gap: 8px;
    }

    .landing-mobile-links a {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 12px;
      color: var(--ink);
      display: flex;
      font-weight: 550;
      gap: 10px;
      min-height: 46px;
      padding: 10px 12px;
      text-decoration: none;
      transition: background .18s ease, color .18s ease, transform .18s ease;
    }

    .landing-mobile-links a:hover,
    .landing-mobile-links a.active {
      background: var(--brand-soft);
      color: var(--brand);
      transform: translateX(3px);
    }

    .landing-mobile-links i {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 12%, transparent);
      border-radius: 9px;
      color: var(--brand);
      display: inline-grid;
      height: 30px;
      place-items: center;
      width: 30px;
    }

    .landing-mobile-cta {
      border-top: 1px solid var(--line);
      display: grid;
      gap: 10px;
      padding-top: 14px;
    }

    .pwa-install-button[hidden] {
      display: none !important;
    }

    .landing-hero {
      align-items: center;
      display: flex;
      flex-direction: column;
      gap: 24px;
      margin: 0 auto;
      max-width: 1180px;
      min-height: calc(100vh - 148px);
      scroll-margin-top: 112px;
    }

    .landing-hero-copy {
      align-items: center;
      background:
        radial-gradient(circle at 12% 10%, color-mix(in srgb, var(--brand) 12%, transparent), transparent 26%),
        var(--panel);
      border: 1px solid var(--line);
      border-radius: 20px;
      box-shadow: 0 20px 55px color-mix(in srgb, var(--brand) 9%, transparent);
      display: grid;
      gap: 16px 24px;
      grid-template-columns: minmax(0, 1fr) auto;
      margin: 0 auto;
      max-width: 1180px;
      order: 2;
      padding: 22px;
      text-align: left;
      width: 100%;
    }

    .landing-hero-copy h1 {
      color: var(--ink);
      font-size: clamp(1.45rem, 2.8vw, 2.35rem);
      font-weight: 900;
      grid-column: 1;
      line-height: 1.08;
      margin: 0;
      max-width: 720px;
    }

    .landing-hero-copy p {
      color: var(--muted);
      font-size: .94rem;
      font-weight: 650;
      grid-column: 1;
      line-height: 1.5;
      margin: 0;
      max-width: 690px;
    }

    .landing-hero-copy .vehicle-badge {
      grid-column: 1 / -1;
      justify-self: start;
    }

    .landing-hero-points {
      display: flex;
      flex-wrap: wrap;
      grid-column: 1;
      justify-content: flex-start;
      gap: 10px;
      margin-top: 0;
    }

    .landing-hero-points span {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 9%, var(--panel));
      border: 1px solid color-mix(in srgb, var(--brand) 22%, var(--line));
      border-radius: 999px;
      color: var(--ink);
      display: inline-flex;
      font-size: .84rem;
      font-weight: 550;
      gap: 7px;
      padding: 8px 12px;
    }

    .landing-hero-points i {
      color: var(--brand);
    }

    .landing-actions {
      align-self: end;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      grid-column: 2;
      grid-row: 2 / span 3;
      justify-content: flex-end;
      margin-top: 0;
    }

    .landing-actions .btn {
      align-items: center;
      border-radius: 12px;
      display: inline-flex;
      gap: 8px;
      justify-content: center;
      min-height: 46px;
      min-width: 168px;
      padding-left: 18px;
      padding-right: 18px;
    }

    .landing-hero-secondary {
      background: color-mix(in srgb, var(--panel) 78%, transparent);
      border: 1px solid color-mix(in srgb, var(--brand) 28%, var(--line));
      color: var(--ink);
      font-weight: 550;
      box-shadow: 0 12px 28px color-mix(in srgb, var(--brand) 7%, transparent);
      transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
    }

    .landing-hero-secondary:hover {
      background: var(--brand-soft);
      border-color: var(--brand);
      color: var(--brand);
      box-shadow: 0 16px 34px color-mix(in srgb, var(--brand) 12%, transparent);
      transform: translateY(-2px);
    }

    .landing-product-shot {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 22px;
      box-shadow: 0 30px 90px rgba(0, 0, 0, .24);
      display: grid;
      grid-template-columns: 132px minmax(0, 1fr);
      min-height: 440px;
      overflow: hidden;
    }

    .landing-hero-carousel {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 22px;
      box-shadow: 0 30px 90px rgba(0, 0, 0, .24);
      height: 660px;
      order: 1;
      overflow: hidden;
      width: 100%;
    }

    .landing-hero-carousel .carousel-inner,
    .landing-hero-carousel .carousel-item {
      height: 100%;
    }

    .landing-carousel-slide {
      background:
        radial-gradient(circle at 85% 12%, rgba(255, 255, 255, .22), transparent 26%),
        linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      display: grid;
      gap: 28px;
      grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
      height: 660px;
      padding: 38px 42px 64px;
    }

    .landing-slide-copy {
      align-self: center;
      min-height: 0;
    }

    .landing-carousel-slide.manuals {
      background:
        radial-gradient(circle at 12% 14%, rgba(255, 255, 255, .2), transparent 24%),
        linear-gradient(135deg, #0f766e, #34d399);
    }

    .landing-carousel-slide.compare {
      background:
        radial-gradient(circle at 80% 18%, rgba(255, 255, 255, .2), transparent 25%),
        linear-gradient(135deg, #7c2d12, #f97316);
    }

    .landing-carousel-slide.tests {
      background:
        radial-gradient(circle at 82% 16%, rgba(255, 255, 255, .22), transparent 25%),
        linear-gradient(135deg, #14532d, #22c55e);
    }

    .landing-carousel-slide.billing {
      background:
        radial-gradient(circle at 16% 18%, rgba(255, 255, 255, .2), transparent 25%),
        linear-gradient(135deg, #312e81, #8b5cf6);
    }

    .landing-slide-kicker {
      align-items: center;
      background: rgba(255, 255, 255, .16);
      border: 1px solid rgba(255, 255, 255, .24);
      border-radius: 999px;
      display: inline-flex;
      font-size: .8rem;
      font-weight: 900;
      gap: 8px;
      padding: 8px 12px;
      width: fit-content;
    }

    .landing-carousel-slide h2 {
      color: #fff;
      font-size: clamp(1.8rem, 3.2vw, 3rem);
      font-weight: 900;
      line-height: 1.04;
      margin: 16px 0 10px;
      max-width: 620px;
    }

    .landing-carousel-slide p {
      color: rgba(255, 255, 255, .88);
      font-weight: 650;
      font-size: .98rem;
      line-height: 1.55;
      margin: 0;
      max-width: 620px;
    }

    .landing-slide-metrics,
    .landing-slide-files,
    .landing-slide-status {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      margin-top: 30px;
      min-height: 92px;
    }

    .landing-slide-metrics span,
    .landing-slide-files span,
    .landing-slide-status span,
    .landing-slide-compare {
      background: rgba(255, 255, 255, .15);
      border: 1px solid rgba(255, 255, 255, .24);
      border-radius: 14px;
      backdrop-filter: blur(10px);
    }

    .landing-slide-metrics span {
      display: grid;
      gap: 5px;
      padding: 14px;
    }

    .landing-slide-metrics small {
      color: rgba(255, 255, 255, .78);
      font-weight: 550;
      text-transform: uppercase;
    }

    .landing-slide-metrics strong {
      color: #fff;
      font-size: 1.25rem;
      font-weight: 900;
    }

    .landing-slide-files,
    .landing-slide-status {
      grid-template-columns: 1fr;
      max-width: 520px;
    }

    .landing-slide-files span,
    .landing-slide-status span {
      align-items: center;
      display: flex;
      font-weight: 550;
      gap: 10px;
      padding: 13px 14px;
    }

    .landing-slide-compare {
      display: grid;
      gap: 0;
      grid-template-columns: 1fr auto;
      margin-top: 30px;
      max-width: 520px;
      min-height: 138px;
      overflow: hidden;
    }

    .landing-slide-compare span,
    .landing-slide-compare strong {
      border-bottom: 1px solid rgba(255, 255, 255, .18);
      color: #fff;
      font-weight: 900;
      padding: 12px 14px;
    }

    .landing-slide-compare strong {
      text-align: right;
    }

    .landing-carousel-slide .landing-slide-metrics,
    .landing-carousel-slide .landing-slide-files,
    .landing-carousel-slide .landing-slide-compare,
    .landing-carousel-slide .landing-slide-status {
      display: none;
    }

    .landing-app-preview {
      background: rgba(255, 255, 255, .92);
      border: 1px solid rgba(255, 255, 255, .68);
      border-radius: 18px;
      box-shadow: 0 22px 50px rgba(15, 23, 42, .18);
      color: #0f172a;
      display: grid;
      gap: 14px;
      margin-top: 0;
      overflow: hidden;
      padding: 18px;
      place-self: center stretch;
    }

    .landing-preview-topbar {
      align-items: center;
      border-bottom: 1px solid #dbe5f2;
      display: grid;
      gap: 10px;
      grid-template-columns: auto 1fr auto;
      padding-bottom: 10px;
    }

    .landing-preview-topbar > span {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 10px;
      height: 38px;
      width: 38px;
    }

    .landing-preview-topbar strong {
      color: #0f172a;
      font-size: 1.05rem;
      font-weight: 900;
    }

    .landing-preview-topbar small {
      color: #64748b;
      font-size: .78rem;
      font-weight: 550;
    }

    .landing-preview-search,
    .landing-preview-breadcrumb {
      align-items: center;
      background: #eef4ff;
      border: 1px solid #d7e5ff;
      border-radius: 12px;
      color: #1f4f9f;
      display: flex;
      font-size: .92rem;
      font-weight: 550;
      gap: 9px;
      padding: 10px 12px;
    }

    .landing-preview-param-grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .landing-preview-param-grid span,
    .landing-preview-status-grid span,
    .landing-preview-plan,
    .landing-preview-file-list span {
      background: #f8fafc;
      border: 1px solid #dde7f3;
      border-radius: 12px;
      display: grid;
      gap: 4px;
      padding: 14px;
    }

    .landing-preview-param-grid span {
      border-left-width: 4px;
    }

    .landing-preview-param-grid .red { border-left-color: #ef4444; }
    .landing-preview-param-grid .blue { border-left-color: #1f7aff; }
    .landing-preview-param-grid .green { border-left-color: #12805c; }
    .landing-preview-param-grid .gray { border-left-color: #64748b; }

    .landing-app-preview small {
      color: #64748b;
      font-size: .76rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .landing-app-preview strong {
      color: #0f172a;
      font-size: 1.12rem;
      font-weight: 900;
    }

    .landing-preview-file-list {
      display: grid;
      gap: 10px;
    }

    .landing-preview-file-list span {
      align-items: center;
      grid-template-columns: auto 1fr auto;
    }

    .landing-preview-file-list i {
      color: var(--brand);
      font-size: 1rem;
    }

    .landing-preview-compare-head,
    .landing-preview-compare-row {
      align-items: center;
      display: grid;
      gap: 8px;
      grid-template-columns: 1.2fr 1fr 1fr;
    }

    .landing-preview-compare-head {
      color: #64748b;
      font-size: .76rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .landing-preview-compare-row {
      background: #f8fafc;
      border: 1px solid #dde7f3;
      border-radius: 12px;
      color: #475569;
      font-size: .9rem;
      font-weight: 550;
      padding: 10px;
    }

    .landing-preview-status-grid {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .landing-preview-test-summary {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .landing-preview-test-summary span {
      background: #f8fafc;
      border: 1px solid #dde7f3;
      border-radius: 14px;
      display: grid;
      gap: 3px;
      min-height: 104px;
      padding: 13px;
    }

    .landing-preview-test-summary i {
      color: #1f7aff;
      font-size: 1.2rem;
    }

    .landing-preview-test-summary .ok i {
      color: #12805c;
    }

    .landing-preview-test-summary .danger i {
      color: #ef4444;
    }

    .landing-preview-test-list {
      display: grid;
      gap: 10px;
    }

    .landing-preview-test-list span {
      align-items: center;
      background: #f8fafc;
      border: 1px solid #dde7f3;
      border-radius: 12px;
      display: grid;
      gap: 10px;
      grid-template-columns: 1fr auto auto;
      padding: 10px 12px;
    }

    .landing-preview-test-list em {
      border-radius: 999px;
      color: #fff;
      font-size: .72rem;
      font-style: normal;
      font-weight: 900;
      padding: 5px 8px;
    }

    .landing-preview-test-list span:first-child em {
      background: #ef4444;
    }

    .landing-preview-test-list span:not(:first-child) em {
      background: #12805c;
    }

    .landing-preview-plan {
      background: linear-gradient(135deg, #eef4ff, #f8fafc);
    }

    .landing-preview-plan > span {
      color: #12805c;
      font-size: .82rem;
      font-weight: 900;
    }

    .landing-hero-carousel .carousel-indicators {
      bottom: 16px;
      gap: 6px;
      margin-bottom: 0;
    }

    .landing-hero-carousel .carousel-indicators [data-bs-target] {
      border: 0;
      border-radius: 999px;
      height: 8px;
      opacity: .45;
      width: 24px;
    }

    .landing-hero-carousel .carousel-indicators .active {
      opacity: 1;
      width: 38px;
    }

    .landing-hero-carousel .carousel-control-prev,
    .landing-hero-carousel .carousel-control-next {
      background: rgba(255, 255, 255, .14);
      border: 1px solid rgba(255, 255, 255, .24);
      border-radius: 999px;
      bottom: 22px;
      color: #fff;
      height: 38px;
      opacity: 1;
      top: auto;
      width: 38px;
    }

    .landing-hero-carousel .carousel-control-prev {
      left: 24px;
    }

    .landing-hero-carousel .carousel-control-next {
      left: 68px;
      right: auto;
    }

    .shot-sidebar {
      background: var(--sidebar);
      border-right: 1px solid var(--line);
      display: grid;
      gap: 12px;
      align-content: start;
      padding: 24px 18px;
    }

    .shot-sidebar span {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 14px;
      height: 48px;
      width: 48px;
    }

    .shot-sidebar strong,
    .shot-sidebar small {
      display: block;
    }

    .shot-sidebar strong {
      font-weight: 900;
    }

    .shot-sidebar small {
      color: var(--muted);
      font-weight: 700;
      margin-bottom: 24px;
    }

    .shot-sidebar i {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 10px;
      height: 38px;
      width: 100%;
    }

    .shot-main {
      display: grid;
      gap: 18px;
      align-content: start;
      padding: 26px;
    }

    .shot-search {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 16px;
      color: #fff;
      display: grid;
      gap: 6px;
      min-height: 108px;
      padding: 22px;
    }

    .shot-search span,
    .shot-grid span {
      font-size: .78rem;
      font-weight: 550;
      opacity: .78;
      text-transform: uppercase;
    }

    .shot-search strong {
      font-size: 1.65rem;
      font-weight: 900;
    }

    .shot-grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .shot-grid div {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 12px;
      display: grid;
      gap: 8px;
      padding: 16px;
    }

    .shot-grid strong {
      color: var(--ink);
      font-size: 1.25rem;
      font-weight: 900;
    }

    .shot-table {
      display: grid;
      gap: 10px;
    }

    .shot-table span {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 8px;
      height: 34px;
    }

    .landing-section {
      border: 1px solid var(--line);
      border-radius: 24px;
      margin: 64px auto 0;
      max-width: 1180px;
      overflow: hidden;
      padding: 34px;
      position: relative;
      scroll-margin-top: 112px;
    }

    .landing-section::before,
    .landing-tests::before,
    .landing-manuals::before,
    .landing-contact::before {
      content: "";
      display: block;
      height: 5px;
      inset: 0 0 auto;
      position: absolute;
    }

    #plataforma {
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--brand) 8%, transparent), transparent 48%),
        var(--panel);
      box-shadow: 0 22px 60px color-mix(in srgb, var(--brand) 8%, transparent);
    }

    #plataforma::before {
      background: linear-gradient(90deg, #1f7aff, #60a5fa);
    }

    #planos {
      background:
        linear-gradient(135deg, color-mix(in srgb, #8b5cf6 11%, transparent), transparent 52%),
        var(--panel);
      box-shadow: 0 22px 60px color-mix(in srgb, #8b5cf6 10%, transparent);
    }

    #planos::before {
      background: linear-gradient(90deg, #7c3aed, #a78bfa);
    }

    #faq {
      background:
        linear-gradient(135deg, color-mix(in srgb, #64748b 12%, transparent), transparent 48%),
        var(--panel);
      box-shadow: 0 22px 60px color-mix(in srgb, #64748b 8%, transparent);
    }

    #faq::before {
      background: linear-gradient(90deg, #64748b, #94a3b8);
    }

    .landing-section-title {
      max-width: 780px;
    }

    .landing-section-title p {
      color: var(--muted);
      font-weight: 650;
      line-height: 1.65;
      margin: 0 0 28px;
      max-width: 760px;
    }

    .landing-section-title h2 {
      color: var(--ink);
      font-size: clamp(1.75rem, 3vw, 2.55rem);
      font-weight: 900;
      line-height: 1.08;
      margin: 16px 0 12px;
    }

    .landing-feature-grid {
      display: grid;
      gap: 16px;
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .landing-feature-grid article {
      background:
        linear-gradient(180deg, color-mix(in srgb, var(--brand) 5%, transparent), transparent 46%),
        var(--panel);
      border: 1px solid color-mix(in srgb, var(--brand) 18%, var(--line));
      border-radius: 16px;
      box-shadow: 0 16px 40px color-mix(in srgb, var(--brand) 8%, transparent);
      display: grid;
      min-height: 190px;
      padding: 18px;
      position: relative;
      transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
    }

    .landing-feature-grid article:hover {
      border-color: color-mix(in srgb, var(--brand) 42%, var(--line));
      box-shadow: 0 22px 52px color-mix(in srgb, var(--brand) 14%, transparent);
      transform: translateY(-4px);
    }

    .landing-feature-grid article::after {
      align-self: end;
      color: var(--muted);
      content: "";
      display: block;
      font-size: .86rem;
      font-weight: 700;
      line-height: 1.45;
      margin-top: 12px;
    }

    .landing-feature-grid article:nth-child(1)::after {
      content: "Marca, modelo e vers\00E3o.";
    }

    .landing-feature-grid article:nth-child(2)::after {
      content: "Compare sem abrir v\00E1rias abas.";
    }

    .landing-feature-grid article:nth-child(3)::after {
      content: "Relat\00F3rio para imprimir.";
    }

    .landing-feature-grid article:nth-child(4)::after {
      content: "Pastas por marca e sistema.";
    }

    .landing-feature-grid article:nth-child(5)::after {
      content: "Planos para acesso t\00E9cnico.";
    }

    .landing-feature-icon {
      align-items: center;
      background: var(--brand-soft);
      border: 1px solid color-mix(in srgb, var(--brand) 24%, transparent);
      border-radius: 14px;
      color: var(--brand);
      display: inline-grid;
      height: 48px;
      place-items: center;
      width: 48px;
    }

    .landing-feature-grid small {
      align-items: center;
      background: var(--chip-info);
      border-radius: 999px;
      color: var(--brand);
      display: inline-flex;
      font-size: .72rem;
      font-weight: 900;
      justify-self: start;
      margin-top: 16px;
      padding: 6px 9px;
      text-transform: uppercase;
    }

    .landing-feature-grid i {
      color: var(--brand);
      font-size: 1.45rem;
    }

    .landing-feature-grid h3 {
      color: var(--ink);
      font-size: 1.05rem;
      font-weight: 900;
      margin: 12px 0 0;
    }

    .landing-feature-grid p {
      display: none;
    }

    .landing-tests,
    .landing-manuals,
    .landing-contact {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 18px;
      display: grid;
      gap: 26px;
      grid-template-columns: minmax(0, 1fr) minmax(340px, .85fr);
      margin: 64px auto 0;
      max-width: 1180px;
      overflow: hidden;
      padding: 28px;
      position: relative;
      scroll-margin-top: 112px;
    }

    .landing-tests {
      background:
        linear-gradient(135deg, color-mix(in srgb, #22c55e 11%, transparent), transparent 48%),
        var(--panel);
      box-shadow: 0 22px 60px color-mix(in srgb, #22c55e 10%, transparent);
      grid-template-columns: minmax(0, .95fr) minmax(360px, 1.05fr);
    }

    .landing-tests::before {
      background: linear-gradient(90deg, #16a34a, #4ade80);
    }

    .landing-manuals {
      background:
        linear-gradient(135deg, color-mix(in srgb, #14b8a6 11%, transparent), transparent 48%),
        var(--panel);
      box-shadow: 0 22px 60px color-mix(in srgb, #14b8a6 10%, transparent);
    }

    .landing-manuals::before {
      background: linear-gradient(90deg, #0f766e, #2dd4bf);
    }

    .landing-tests h2,
    .landing-manuals h2,
    .landing-contact h2 {
      color: var(--ink);
      font-size: clamp(1.7rem, 3vw, 2.8rem);
      font-weight: 900;
      line-height: 1.1;
      margin: 16px 0;
    }

    .landing-tests p,
    .landing-manuals p,
    .landing-contact p {
      color: var(--muted);
      font-weight: 650;
      line-height: 1.65;
      margin: 0;
    }

    .landing-tests-steps {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      margin-top: 24px;
    }

    .landing-tests-steps span {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: grid;
      gap: 2px 10px;
      grid-template-columns: auto 1fr;
      padding: 12px;
    }

    .landing-tests-steps i {
      color: var(--brand);
      font-size: 1.35rem;
      grid-row: span 2;
    }

    .landing-tests-steps strong {
      color: var(--ink);
      font-size: .9rem;
      font-weight: 900;
    }

    .landing-tests-steps small {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 750;
    }

    .landing-tests-card {
      background: var(--field);
      border: 1px solid color-mix(in srgb, var(--brand) 18%, var(--line));
      border-radius: 18px;
      box-shadow: 0 18px 50px color-mix(in srgb, var(--brand) 12%, transparent);
      display: grid;
      gap: 14px;
      padding: 18px;
    }

    .landing-tests-card-head {
      align-items: center;
      display: flex;
      gap: 12px;
    }

    .landing-tests-card-head > span {
      align-items: center;
      background: linear-gradient(135deg, var(--button-start), var(--button-end));
      border-radius: 14px;
      color: #fff;
      display: inline-flex;
      flex: 0 0 48px;
      height: 48px;
      justify-content: center;
      width: 48px;
    }

    .landing-tests-card-head strong,
    .landing-tests-card-head small {
      display: block;
    }

    .landing-tests-card-head strong {
      color: var(--ink);
      font-weight: 900;
    }

    .landing-tests-card-head small {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 750;
    }

    .landing-tests-result-grid {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .landing-tests-result-grid span {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: grid;
      gap: 2px;
      padding: 13px;
    }

    .landing-tests-result-grid strong {
      color: var(--ink);
      font-size: 1.6rem;
      font-weight: 900;
      line-height: 1;
    }

    .landing-tests-result-grid small {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 550;
    }

    .landing-tests-result-grid .ok {
      border-color: color-mix(in srgb, var(--ok) 38%, var(--line));
    }

    .landing-tests-result-grid .danger {
      border-color: color-mix(in srgb, var(--danger) 42%, var(--line));
    }

    .landing-tests-lines {
      display: grid;
      gap: 10px;
    }

    .landing-tests-lines span {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 12px;
      display: grid;
      gap: 8px;
      grid-template-columns: auto minmax(0, 1fr) auto;
      padding: 12px;
    }

    .landing-tests-lines i {
      color: var(--brand);
      font-size: 1.1rem;
    }

    .landing-tests-lines strong {
      color: var(--ink);
      font-size: .92rem;
      font-weight: 900;
    }

    .landing-tests-lines em {
      color: var(--ink);
      font-style: normal;
      font-weight: 900;
    }

    .landing-tests-lines small {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 750;
      grid-column: 2 / -1;
    }

    .landing-manual-list,
    .landing-contact-form {
      display: grid;
      gap: 12px;
    }

    .landing-manual-list span {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 12px;
      color: var(--ink);
      display: flex;
      gap: 10px;
      font-weight: 550;
      padding: 13px 14px;
    }

    .landing-manual-list i {
      color: var(--brand);
      font-size: 1.15rem;
    }

    .landing-pricing-grid {
      display: grid;
      gap: 14px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .landing-price-card {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 16px;
      display: flex;
      flex-direction: column;
      gap: 10px;
      min-height: 100%;
      padding: 22px;
      position: relative;
      transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
    }

    .landing-price-card:hover {
      border-color: color-mix(in srgb, var(--brand) 45%, var(--line));
      box-shadow: 0 18px 50px color-mix(in srgb, var(--brand) 14%, transparent);
      transform: translateY(-3px);
    }

    .landing-price-card.featured {
      border-color: var(--brand);
      box-shadow: 0 24px 70px color-mix(in srgb, var(--brand) 22%, transparent);
      transform: translateY(-8px);
    }

    .landing-plan-ribbon {
      background: linear-gradient(135deg, var(--button-start), var(--button-end));
      border-radius: 999px;
      color: #fff;
      font-size: .72rem;
      font-weight: 900;
      padding: 7px 10px;
      position: absolute;
      right: 16px;
      text-transform: uppercase;
      top: 16px;
    }

    .landing-price-card span {
      color: var(--brand);
      font-size: .78rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .landing-price-card h3 {
      color: var(--ink);
      font-size: 1.25rem;
      font-weight: 900;
      margin: 0;
    }

    .landing-price-card strong {
      color: var(--ink);
      font-size: 2rem;
      font-weight: 900;
      line-height: 1;
    }

    .landing-price-card small,
    .landing-price-card p {
      color: var(--muted);
      font-weight: 650;
    }

    .landing-price-card p {
      line-height: 1.55;
      margin: 0 0 8px;
    }

    .landing-price-card .btn {
      margin-top: auto;
    }

    .landing-price-card ul {
      display: grid;
      gap: 8px;
      list-style: none;
      margin: 4px 0 12px;
      padding: 0;
    }

    .landing-price-card li {
      align-items: center;
      color: var(--ink);
      display: flex;
      font-size: .88rem;
      font-weight: 750;
      gap: 8px;
    }

    .landing-price-card li i {
      color: var(--ok);
      font-size: 1rem;
    }

    .landing-price-card li {
      min-height: 24px;
    }

    .landing-faq-list {
      display: grid;
      gap: 10px;
    }

    .landing-faq-list details {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 14px;
      overflow: hidden;
      transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
    }

    .landing-faq-list details[open] {
      background: color-mix(in srgb, var(--brand) 6%, var(--panel));
      border-color: color-mix(in srgb, var(--brand) 35%, var(--line));
      box-shadow: 0 14px 36px color-mix(in srgb, var(--brand) 12%, transparent);
    }

    .landing-faq-list summary {
      align-items: center;
      color: var(--ink);
      cursor: pointer;
      display: flex;
      font-weight: 900;
      gap: 14px;
      justify-content: space-between;
      list-style: none;
      padding: 16px 18px;
      transition: color .2s ease;
    }

    .landing-faq-list summary::-webkit-details-marker {
      display: none;
    }

    .landing-faq-list summary::after {
      align-items: center;
      background: var(--brand-soft);
      border-radius: 999px;
      color: var(--brand);
      content: "\F282";
      display: inline-grid;
      flex: 0 0 30px;
      font-family: "bootstrap-icons";
      font-size: .85rem;
      height: 30px;
      place-items: center;
      transition: transform .24s ease, background .2s ease, color .2s ease;
      width: 30px;
    }

    .landing-faq-list details[open] summary {
      color: var(--brand);
    }

    .landing-faq-list details[open] summary::after {
      background: var(--brand);
      color: #fff;
      transform: rotate(180deg);
    }

    .landing-faq-content {
      display: grid;
      grid-template-rows: 0fr;
      opacity: 0;
      padding: 0 18px;
      transition: grid-template-rows .26s ease, opacity .2s ease, padding .26s ease;
    }

    .landing-faq-list details[open] .landing-faq-content {
      grid-template-rows: 1fr;
      opacity: 1;
      padding: 0 18px 16px;
    }

    .landing-faq-list p {
      color: var(--muted);
      font-weight: 650;
      line-height: 1.6;
      margin: 0;
      min-height: 0;
      overflow: hidden;
    }

    .landing-contact-form {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 16px;
      box-shadow: 0 22px 55px color-mix(in srgb, var(--brand) 11%, transparent);
      padding: 18px;
    }

    .landing-contact {
      background:
        linear-gradient(135deg, color-mix(in srgb, #f97316 10%, transparent), transparent 50%),
        var(--panel);
      box-shadow: 0 22px 60px color-mix(in srgb, #f97316 9%, transparent);
      overflow: hidden;
      position: relative;
    }

    .landing-contact::before {
      background: linear-gradient(90deg, #f97316, #facc15);
      content: "";
      display: block;
      height: 5px;
      inset: 0 0 auto;
      pointer-events: none;
      position: absolute;
    }

    .landing-contact > * {
      position: relative;
      z-index: 1;
    }

    .landing-contact-copy {
      display: grid;
      gap: 16px;
    }

    .landing-contact-highlights {
      display: grid;
      gap: 10px;
      margin-top: 8px;
    }

    .landing-contact-highlights span {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 7%, var(--panel));
      border: 1px solid color-mix(in srgb, var(--brand) 18%, var(--line));
      border-radius: 13px;
      color: var(--ink);
      display: flex;
      gap: 10px;
      font-size: .92rem;
      font-weight: 550;
      padding: 12px 14px;
    }

    .landing-contact-highlights i {
      align-items: center;
      background: var(--brand-soft);
      border-radius: 10px;
      color: var(--brand);
      display: inline-grid;
      flex: 0 0 34px;
      height: 34px;
      place-items: center;
      width: 34px;
    }

    .landing-contact-form-head {
      align-items: center;
      border-bottom: 1px solid var(--line);
      display: flex;
      gap: 12px;
      padding-bottom: 14px;
    }

    .landing-contact-form-head > span {
      align-items: center;
      background: linear-gradient(135deg, var(--button-start), var(--button-end));
      border-radius: 14px;
      color: #fff;
      display: inline-grid;
      flex: 0 0 46px;
      height: 46px;
      place-items: center;
      width: 46px;
    }

    .landing-contact-form-head strong,
    .landing-contact-form-head small {
      display: block;
    }

    .landing-contact-form-head strong {
      color: var(--ink);
      font-size: 1.05rem;
      font-weight: 900;
    }

    .landing-contact-form-head small {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 650;
      margin-top: 2px;
    }

    .landing-contact-form label {
      display: grid;
      gap: 6px;
      margin: 0;
    }

    .landing-contact-form label span {
      color: var(--muted);
      font-size: .74rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .landing-app-install {
      align-items: center;
      background:
        radial-gradient(circle at 84% 18%, color-mix(in srgb, var(--brand) 24%, transparent), transparent 26%),
        linear-gradient(135deg, color-mix(in srgb, #0ea5e9 12%, transparent), transparent 48%),
        var(--panel);
      border: 1px solid var(--line);
      border-radius: 24px;
      box-shadow: 0 22px 60px color-mix(in srgb, #0ea5e9 10%, transparent);
      display: grid;
      gap: 28px;
      grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr);
      margin: 64px auto 0;
      max-width: 1180px;
      overflow: hidden;
      padding: 32px;
      position: relative;
    }

    .landing-app-install::before {
      background: linear-gradient(90deg, #0284c7, #38bdf8);
      content: "";
      display: block;
      height: 5px;
      inset: 0 0 auto;
      position: absolute;
    }

    .landing-app-install h2 {
      color: var(--ink);
      font-size: clamp(1.7rem, 3vw, 2.8rem);
      font-weight: 900;
      line-height: 1.1;
      margin: 16px 0;
      max-width: 680px;
    }

    .landing-app-install p {
      color: var(--muted);
      font-weight: 650;
      line-height: 1.65;
      margin: 0;
      max-width: 660px;
    }

    .landing-app-install-copy > p:not(.landing-app-install-copy-fixed),
    .landing-phone-screen > span:not(.landing-phone-tagline) {
      display: none;
    }

    .landing-app-install-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 24px;
    }

    .landing-app-install-actions .btn {
      align-items: center;
      display: inline-flex;
      gap: 8px;
      justify-content: center;
      min-height: 46px;
      min-width: 168px;
    }

    .landing-phone-preview {
      display: grid;
      justify-items: center;
      perspective: 900px;
    }

    .landing-phone-device {
      background:
        linear-gradient(145deg, #1c1021, #0b1220 42%, #050816);
      border: 1px solid rgba(255, 255, 255, .18);
      border-radius: 32px;
      box-shadow:
        0 30px 60px rgba(15, 23, 42, .24),
        inset 0 0 0 1px rgba(255, 255, 255, .18),
        inset 0 0 0 3px rgba(255, 255, 255, .04);
      max-width: 230px;
      padding: 5px;
      position: relative;
      width: 100%;
    }

    .landing-phone-device::before,
    .landing-phone-device::after {
      background: #0b1220;
      border-radius: 999px;
      content: "";
      position: absolute;
    }

    .landing-phone-device::before {
      box-shadow: 0 58px 0 #0b1220;
      height: 38px;
      left: -2px;
      top: 72px;
      width: 2px;
      z-index: 2;
    }

    .landing-phone-device::after {
      height: 68px;
      right: -2px;
      top: 118px;
      width: 2px;
      z-index: 2;
    }

    .landing-phone-frame {
      background:
        radial-gradient(circle at 20% 12%, rgba(31, 122, 255, .10), transparent 30%),
        linear-gradient(180deg, #fbfdff, #ffffff 62%);
      border: 1px solid rgba(255, 255, 255, .18);
      border-radius: 27px;
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .24);
      display: grid;
      min-height: 455px;
      overflow: hidden;
      padding: 0;
      position: relative;
      text-align: center;
      width: 100%;
    }

    .landing-phone-status {
      background: #0b1220;
      border-radius: 999px;
      height: 12px;
      justify-self: center;
      position: absolute;
      top: 10px;
      width: 70px;
      z-index: 4;
    }

    .landing-phone-status::after {
      background: #22314a;
      border-radius: 50%;
      content: "";
      height: 5px;
      position: absolute;
      right: 8px;
      top: 4px;
      width: 5px;
    }

    .landing-phone-screen {
      align-content: start;
      display: grid;
      gap: 9px;
      min-height: 455px;
      padding: 44px 12px 14px;
      position: relative;
    }

    .landing-phone-screen::before {
      display: none;
    }

    .landing-phone-dashboard {
      display: grid;
      gap: 9px;
      position: relative;
      z-index: 2;
    }

    .landing-phone-screen > .landing-phone-app-icon,
    .landing-phone-screen > strong,
    .landing-phone-screen > span:not(.landing-phone-tagline),
    .landing-phone-screen > .landing-phone-tagline,
    .landing-phone-screen > .landing-phone-shortcuts {
      display: none;
    }

    .landing-phone-appbar {
      align-items: center;
      display: grid;
      gap: 7px;
      grid-template-columns: 34px minmax(0, 1fr) 30px;
      text-align: left;
    }

    .landing-phone-mini-logo {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 10px;
      display: grid;
      height: 34px;
      place-items: center;
      width: 34px;
    }

    .landing-phone-mini-logo img {
      border-radius: 11px;
      height: 25px;
      width: 25px;
    }

    .landing-phone-appbar strong,
    .landing-phone-appbar small {
      display: block;
    }

    .landing-phone-appbar strong {
      color: var(--ink);
      font-size: .78rem;
      font-weight: 900;
      line-height: 1.1;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .landing-phone-appbar small {
      color: var(--muted);
      font-size: .58rem;
      font-weight: 800;
      margin-top: 2px;
    }

    .landing-phone-appbar > i {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 10px;
      color: var(--brand);
      display: inline-flex;
      height: 30px;
      justify-content: center;
      width: 30px;
    }

    .landing-phone-search {
      align-items: center;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 12px;
      box-shadow: 0 10px 22px rgba(15, 23, 42, .06);
      color: var(--muted);
      display: flex;
      font-size: .62rem;
      font-weight: 550;
      gap: 6px;
      min-height: 36px;
      padding: 0 9px;
      text-align: left;
    }

    .landing-phone-search i {
      color: var(--brand);
    }

    .landing-phone-feature-grid {
      display: grid;
      gap: 6px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .landing-phone-feature-grid span {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 8%, #fff);
      border: 1px solid color-mix(in srgb, var(--brand) 18%, var(--line));
      border-radius: 12px;
      color: var(--ink);
      display: grid;
      font-size: .49rem;
      font-weight: 900;
      gap: 4px;
      min-height: 62px;
      padding: 7px 2px;
    }

    .landing-phone-feature-grid i {
      color: var(--brand);
      font-size: .9rem;
    }

    .landing-phone-card {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 15px;
      box-shadow: 0 16px 30px color-mix(in srgb, var(--brand) 22%, transparent);
      color: #fff;
      display: grid;
      gap: 7px;
      padding: 11px;
      text-align: left;
    }

    .landing-phone-card small,
    .landing-phone-card strong,
    .landing-phone-card span {
      display: block;
    }

    .landing-phone-card small {
      font-size: .5rem;
      font-weight: 550;
      opacity: .8;
      text-transform: uppercase;
    }

    .landing-phone-card strong {
      font-size: .78rem;
      font-weight: 900;
      line-height: 1.2;
    }

    .landing-phone-card > span {
      background: rgba(255, 255, 255, .18);
      border-radius: 999px;
      font-size: .58rem;
      font-weight: 900;
      justify-self: start;
      padding: 5px 8px;
    }

    .landing-phone-list {
      display: grid;
      gap: 7px;
    }

    .landing-phone-list span {
      align-items: center;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 12px;
      color: var(--muted);
      display: grid;
      font-size: .58rem;
      font-weight: 550;
      gap: 6px;
      grid-template-columns: 16px minmax(0, 1fr) auto;
      min-height: 35px;
      padding: 7px 8px;
      text-align: left;
    }

    .landing-phone-list i {
      color: var(--brand);
    }

    .landing-phone-list strong {
      color: var(--ink);
      font-size: .62rem;
      font-weight: 900;
    }

    .landing-phone-app-icon {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 24px;
      box-shadow: 0 16px 38px color-mix(in srgb, var(--brand) 20%, transparent);
      display: inline-grid;
      height: 88px;
      justify-self: center;
      place-items: center;
      width: 88px;
    }

    .landing-phone-app-icon img {
      border-radius: 22px;
      display: block;
      height: 68px;
      width: 68px;
    }

    .landing-phone-screen > strong {
      color: var(--ink);
      font-size: 1.12rem;
      font-weight: 900;
      margin-top: 4px;
    }

    .landing-phone-screen > span {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 700;
      line-height: 1.5;
    }

    .landing-phone-shortcuts {
      display: grid;
      gap: 8px;
      margin-top: auto;
    }

    .landing-phone-shortcuts small {
      align-items: center;
      background: color-mix(in srgb, var(--panel) 86%, transparent);
      border: 1px solid var(--line);
      border-radius: 12px;
      color: var(--ink);
      display: flex;
      font-size: .8rem;
      font-weight: 550;
      gap: 8px;
      justify-content: center;
      padding: 10px;
      box-shadow: 0 8px 18px rgba(15, 23, 42, .05);
    }

    .landing-phone-shortcuts i {
      color: var(--brand);
    }

    .landing-band {
      margin: 64px auto 0;
      max-width: 1180px;
    }

    .landing-band-cta {
      align-items: center;
      background: #fff;
      border: 1px solid rgba(255, 255, 255, .7);
      border-radius: 12px;
      box-shadow: 0 18px 38px rgba(0, 0, 0, .16);
      color: var(--hero-start);
      display: inline-flex;
      font-weight: 900;
      justify-content: center;
      min-height: 46px;
      min-width: 176px;
      padding: 10px 18px;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
      white-space: nowrap;
    }

    .landing-band-cta:hover {
      background: rgba(255, 255, 255, .9);
      box-shadow: 0 22px 48px rgba(0, 0, 0, .2);
      color: var(--hero-end);
      transform: translateY(-2px);
    }

    .landing-footer {
      align-items: center;
      border-top: 1px solid var(--line);
      color: var(--muted);
      display: grid;
      gap: 18px;
      grid-template-columns: minmax(0, 1fr) auto auto;
      margin: 64px auto 0;
      max-width: 1180px;
      padding: 24px 0 10px;
    }

    .landing-footer-brand strong,
    .landing-footer-brand span {
      display: block;
    }

    .landing-footer-brand strong {
      color: var(--ink);
      font-weight: 900;
    }

    .landing-footer-brand span,
    .landing-footer small {
      font-size: .86rem;
      font-weight: 650;
    }

    .landing-footer nav {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      justify-content: center;
    }

    .landing-footer nav a {
      color: var(--muted);
      font-size: .86rem;
      font-weight: 800;
      text-decoration: none;
    }

    .landing-footer nav a:hover {
      color: var(--brand);
    }

    .offline-page {
      align-items: center;
      background:
        radial-gradient(circle at 15% 0%, color-mix(in srgb, var(--brand) 18%, transparent), transparent 32%),
        var(--canvas);
      display: grid;
      min-height: 100vh;
      padding: 24px;
      place-items: center;
    }

    .offline-card {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 22px;
      box-shadow: var(--shadow);
      display: grid;
      gap: 14px;
      max-width: 520px;
      padding: 32px;
      text-align: center;
    }

    .offline-card > span {
      align-items: center;
      background: var(--brand-soft);
      border: 1px solid color-mix(in srgb, var(--brand) 22%, var(--line));
      border-radius: 18px;
      color: var(--brand);
      display: inline-grid;
      font-size: 2rem;
      height: 72px;
      justify-self: center;
      place-items: center;
      width: 72px;
    }

    .offline-card h1 {
      color: var(--ink);
      font-size: clamp(1.6rem, 4vw, 2.35rem);
      font-weight: 900;
      margin: 0;
    }

    .offline-card p {
      color: var(--muted);
      font-weight: 650;
      line-height: 1.6;
      margin: 0;
    }

    .error-code {
      color: var(--brand);
      font-size: .78rem;
      font-weight: 900;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    .error-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      justify-content: center;
      margin-top: 4px;
    }

    .error-actions .btn {
      align-items: center;
      display: inline-flex;
      font-weight: 550;
      gap: 8px;
      justify-content: center;
      min-height: 44px;
      min-width: 150px;
    }

    .access-lock-card {
      align-items: flex-start;
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--brand) 12%, transparent), transparent 42%),
        var(--panel);
      border: 1px solid var(--line);
      border-radius: 18px;
      box-shadow: var(--shadow);
      display: grid;
      gap: 22px;
      grid-template-columns: auto 1fr;
      margin: 26px 0;
      padding: clamp(22px, 4vw, 34px);
    }

    .access-lock-icon {
      align-items: center;
      background: var(--brand-soft);
      border: 1px solid color-mix(in srgb, var(--brand) 24%, var(--line));
      border-radius: 18px;
      color: var(--brand);
      display: inline-grid;
      font-size: 2rem;
      height: 76px;
      place-items: center;
      width: 76px;
    }

    .access-lock-card h1 {
      color: var(--ink);
      font-size: clamp(1.8rem, 4vw, 3rem);
      font-weight: 900;
      margin: 14px 0 10px;
      max-width: 760px;
    }

    .access-lock-card p {
      color: var(--muted);
      font-weight: 650;
      line-height: 1.6;
      margin: 0;
      max-width: 760px;
    }

    .access-lock-details {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      margin: 22px 0;
      max-width: 820px;
    }

    .access-lock-details span {
      background: color-mix(in srgb, var(--panel-strong) 72%, transparent);
      border: 1px solid var(--line);
      border-radius: 14px;
      color: var(--ink);
      display: grid;
      font-weight: 550;
      gap: 4px;
      min-height: 78px;
      padding: 14px;
    }

    .access-lock-details strong {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .access-lock-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .access-lock-actions .btn {
      align-items: center;
      display: inline-flex;
      font-weight: 550;
      gap: 8px;
      justify-content: center;
      min-height: 46px;
      min-width: 170px;
    }

    .quick-stats {
      display: grid;
      gap: 14px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .stat-card {
      background: color-mix(in srgb, var(--panel-strong) 78%, transparent);
      border: 1px solid var(--line);
      border-radius: 14px;
      box-shadow: 0 14px 34px rgba(15, 23, 42, .06);
      display: grid;
      gap: 4px;
      padding: 16px;
    }

    .stat-card span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .stat-card strong {
      color: var(--ink);
      font-size: 1.65rem;
      font-weight: 900;
    }

    .health-group {
      border-top: 1px solid var(--line);
      display: grid;
      gap: 14px;
      padding-top: 22px;
    }

    .health-group + .health-group {
      margin-top: 24px;
    }

    .health-group h3 {
      color: var(--ink);
      font-size: 1.05rem;
      font-weight: 900;
      margin: 0;
    }

    .health-list {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .health-item {
      align-items: flex-start;
      background: color-mix(in srgb, var(--panel-strong) 78%, transparent);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: grid;
      gap: 12px;
      grid-template-columns: auto 1fr;
      padding: 14px;
    }

    .health-item > span {
      align-items: center;
      border-radius: 12px;
      display: inline-grid;
      height: 38px;
      place-items: center;
      width: 38px;
    }

    .health-item.ok > span {
      background: rgba(18, 128, 92, .12);
      color: #12805c;
    }

    .health-item.danger > span {
      background: rgba(239, 68, 68, .12);
      color: #ef4444;
    }

    .health-item strong,
    .health-item small,
    .health-item em {
      display: block;
    }

    .health-item strong {
      color: var(--ink);
      font-weight: 900;
    }

    .health-item small {
      color: var(--muted);
      font-weight: 650;
      margin-top: 2px;
    }

    .health-item em {
      color: #ef4444;
      font-size: .82rem;
      font-style: normal;
      font-weight: 750;
      margin-top: 6px;
    }

    .migration-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .migration-actions .btn {
      align-items: center;
      display: inline-flex;
      font-weight: 550;
      gap: 8px;
      justify-content: center;
      min-height: 44px;
    }

    @media (max-width: 767.98px) {
      .access-lock-card {
        grid-template-columns: 1fr;
        margin: 18px 0;
      }

      .access-lock-icon {
        height: 62px;
        width: 62px;
      }

      .access-lock-details {
        grid-template-columns: 1fr;
      }

      .access-lock-actions .btn {
        width: 100%;
      }

      .quick-stats {
        grid-template-columns: 1fr;
      }

      .health-list {
        grid-template-columns: 1fr;
      }
    }

    .whatsapp-float {
      align-items: center;
      background: linear-gradient(135deg, #16a34a, #22c55e);
      border: 0;
      border-radius: 999px;
      bottom: 24px;
      box-shadow: 0 18px 45px rgba(22, 163, 74, .34);
      color: #fff;
      display: inline-flex;
      font-weight: 900;
      gap: 9px;
      min-height: 54px;
      padding: 13px 18px;
      position: fixed;
      right: 24px;
      transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
      z-index: 70;
    }

    .whatsapp-float i {
      font-size: 1.35rem;
    }

    .whatsapp-float:hover {
      box-shadow: 0 22px 56px rgba(22, 163, 74, .42);
      color: #fff;
      filter: brightness(1.02);
      transform: translateY(-3px);
    }

    .whatsapp-lead-modal .modal-content {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 18px;
      box-shadow: 0 28px 70px rgba(0, 0, 0, .22);
      color: var(--ink);
      overflow: hidden;
    }

    .whatsapp-lead-modal .modal-header,
    .whatsapp-lead-modal .modal-footer {
      border-color: var(--line);
    }

    .whatsapp-lead-modal .modal-header {
      align-items: flex-start;
      background:
        radial-gradient(circle at 10% 0, rgba(34, 197, 94, .18), transparent 34%),
        var(--panel);
      padding: 18px;
    }

    .whatsapp-lead-modal .modal-title {
      color: var(--ink);
      font-weight: 900;
      margin-top: 6px;
    }

    .whatsapp-lead-modal .modal-kicker {
      align-items: center;
      background: rgba(34, 197, 94, .14);
      border-radius: 999px;
      color: #16a34a;
      display: inline-flex;
      font-size: .76rem;
      font-weight: 900;
      gap: 6px;
      padding: 6px 10px;
      text-transform: uppercase;
    }

    .whatsapp-lead-modal .modal-body {
      padding: 18px;
    }

    .whatsapp-lead-modal .form-label {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .pwa-install-modal .modal-header {
      background:
        radial-gradient(circle at 10% 0, color-mix(in srgb, var(--brand) 20%, transparent), transparent 34%),
        var(--panel);
    }

    .pwa-install-modal .modal-kicker {
      background: var(--brand-soft);
      color: var(--brand);
    }

    .pwa-install-preview {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 16px;
      display: flex;
      gap: 14px;
      padding: 14px;
    }

    .pwa-install-preview img {
      border-radius: 18px;
      box-shadow: 0 12px 28px color-mix(in srgb, var(--brand) 18%, transparent);
      flex: 0 0 64px;
      height: 64px;
      width: 64px;
    }

    .pwa-install-preview strong,
    .pwa-install-preview span {
      display: block;
    }

    .pwa-install-preview strong {
      color: var(--ink);
      font-weight: 900;
    }

    .pwa-install-preview span {
      color: var(--muted);
      font-size: .88rem;
      font-weight: 700;
      margin-top: 3px;
    }

    .pwa-install-steps {
      display: grid;
      gap: 10px;
      margin-top: 14px;
    }

    .pwa-install-steps span {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 5%, var(--panel));
      border: 1px solid color-mix(in srgb, var(--brand) 16%, var(--line));
      border-radius: 14px;
      display: grid;
      gap: 2px 10px;
      grid-template-columns: auto 1fr;
      padding: 12px;
    }

    .pwa-install-steps i {
      color: var(--brand);
      font-size: 1.35rem;
      grid-row: span 2;
    }

    .pwa-install-steps strong {
      color: var(--ink);
      font-size: .92rem;
      font-weight: 900;
    }

    .pwa-install-steps small {
      color: var(--muted);
      font-size: .8rem;
      font-weight: 700;
      line-height: 1.45;
    }

    .pwa-install-note {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 750;
      line-height: 1.5;
      margin: 14px 0 0;
    }

    .theme-toggle {
      border: 1px solid var(--line);
      background: var(--panel);
      color: var(--ink);
      border-radius: 8px;
      min-height: 40px;
      padding: 7px 12px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-weight: 800;
    }

    .btn-outline-secondary {
      --bs-btn-color: var(--ink);
      --bs-btn-border-color: var(--line);
      --bs-btn-hover-bg: var(--brand-soft);
      --bs-btn-hover-border-color: var(--brand);
      --bs-btn-hover-color: var(--ink);
      --bs-btn-active-bg: var(--brand-soft);
      --bs-btn-active-border-color: var(--brand);
      --bs-btn-active-color: var(--ink);
    }

    .btn-outline-primary {
      --bs-btn-color: var(--brand);
      --bs-btn-border-color: var(--brand);
      --bs-btn-hover-bg: var(--brand);
      --bs-btn-hover-border-color: var(--brand);
      --bs-btn-hover-color: #fff;
      --bs-btn-active-bg: var(--brand);
      --bs-btn-active-border-color: var(--brand);
      --bs-btn-active-color: #fff;
    }

    .profile-toggle {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      border: 1px solid var(--line);
      background: var(--panel);
      color: var(--ink);
      font-weight: 800;
    }

    .profile-avatar {
      width: 28px;
      height: 28px;
      display: inline-grid;
      place-items: center;
      border-radius: 8px;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      font-size: .82rem;
      font-weight: 900;
      overflow: hidden;
      text-align: center;
      line-height: 1;
    }

    .profile-avatar.large {
      width: 46px;
      height: 46px;
      font-size: 1rem;
      flex: 0 0 auto;
    }

    .profile-avatar img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
    }

    .profile-menu .dropdown-menu {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 12px;
      box-shadow: var(--shadow);
      min-width: 290px;
      padding: 10px;
    }

    .profile-card-head {
      display: flex;
      gap: 12px;
      border: 1px solid var(--line);
      border-radius: 10px;
      background: var(--field);
      margin-bottom: 8px;
      padding: 12px;
    }

    .profile-card-head strong,
    .profile-card-head small,
    .profile-card-head span {
      display: block;
    }

    .profile-card-head strong {
      color: var(--ink);
      font-weight: 900;
      line-height: 1.2;
    }

    .profile-card-head small {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 700;
      margin-top: 2px;
    }

    .profile-card-head span {
      color: var(--brand);
      font-size: .72rem;
      font-weight: 900;
      margin-top: 6px;
      text-transform: uppercase;
    }

    .profile-menu .dropdown-item {
      display: flex;
      align-items: center;
      gap: 10px;
      color: var(--ink);
      border-radius: 8px;
      font-weight: 800;
      padding: 9px 10px;
    }

    .profile-menu .dropdown-item:hover {
      background: var(--brand-soft);
      color: var(--ink);
    }

    .profile-menu .dropdown-item.danger {
      color: var(--danger);
    }

    .profile-menu .dropdown-item.danger:hover {
      background: var(--danger-soft);
      color: var(--danger);
    }

    .profile-menu .dropdown-divider {
      border-color: var(--line);
    }

    .preferences-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 16px;
    }

    .preference-card {
      display: grid;
      grid-template-columns: 42px minmax(0, 1fr);
      align-items: start;
      gap: 13px;
      padding: 14px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--soft);
    }

    .preference-icon {
      width: 42px;
      height: 42px;
      display: grid;
      place-items: center;
      border-radius: 8px;
      color: #fff;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      box-shadow: 0 12px 28px rgba(37, 99, 235, .22);
      font-size: 1.25rem;
    }

    .preference-card h3 {
      margin: 0 0 4px;
      font-size: 1rem;
      font-weight: 900;
      color: var(--ink);
    }

    .preference-card p {
      margin: 0;
      color: var(--muted);
      font-size: .86rem;
    }

    .preference-actions {
      grid-column: 1 / -1;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 8px;
      flex-wrap: wrap;
    }

    .preference-actions .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      padding: 0 14px;
      gap: 6px;
      line-height: 1;
    }

    .preference-actions .btn.active {
      color: #fff;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-color: transparent;
      box-shadow: 0 10px 24px rgba(37, 99, 235, .22);
    }

    .preference-card-wide {
      grid-column: 1 / -1;
    }

    .print-preference-form {
      grid-column: 1 / -1;
    }

    .print-company-select {
      margin-bottom: 12px;
      max-width: 420px;
    }

    .print-format-grid {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .print-format-option {
      cursor: pointer;
      margin: 0;
      position: relative;
    }

    .print-format-option > input {
      opacity: 0;
      pointer-events: none;
      position: absolute;
    }

    .print-format-option > span {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 8px;
      display: grid;
      gap: 3px;
      grid-template-columns: 38px minmax(0, 1fr);
      min-height: 82px;
      padding: 12px;
      transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
    }

    .print-format-option i {
      align-items: center;
      background: var(--brand-soft);
      border-radius: 7px;
      color: var(--brand);
      display: flex;
      font-size: 1.05rem;
      grid-row: 1 / 3;
      height: 38px;
      justify-content: center;
      width: 38px;
    }

    .print-format-option strong { color: var(--ink); font-size: .86rem; }
    .print-format-option small { color: var(--muted); font-size: .7rem; line-height: 1.35; }
    .print-format-option > input:checked + span {
      background: var(--brand-soft);
      border-color: var(--brand);
      box-shadow: 0 0 0 2px color-mix(in srgb, var(--brand) 12%, transparent);
    }

    .print-preference-actions {
      align-items: center;
      border-top: 1px solid var(--line);
      display: flex;
      gap: 12px;
      justify-content: space-between;
      margin-top: 14px;
      padding-top: 14px;
    }

    .print-preference-actions > span { color: var(--muted); font-size: .76rem; font-weight: 700; }

    .office-settings-panel { min-height: 420px; }
    .office-settings-company { margin-bottom: 14px; max-width: 430px; }
    .office-settings-tabs { border-bottom: 1px solid var(--line); display: flex; gap: 6px; margin-bottom: 20px; }
    .office-settings-tabs a { align-items:center;border-bottom:2px solid transparent;color:var(--muted);display:inline-flex;font-size:.84rem;font-weight:550;gap:7px;padding:10px 13px;text-decoration:none; }
    .office-settings-tabs a.active { border-bottom-color:var(--brand);color:var(--brand); }
    .settings-tab-intro { align-items:center;display:flex;gap:14px;justify-content:space-between;margin-bottom:16px; }
    .settings-tab-intro h2 { color:var(--ink);font-size:1rem;font-weight:900;margin:0 0 3px; }
    .settings-tab-intro p { color:var(--muted);font-size:.82rem;margin:0; }

    .evolution-office-grid { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px; }
    .evolution-office-config,.evolution-connection-card { background:var(--surface-soft);border:1px solid var(--line);border-radius:16px;padding:20px; }
    .evolution-office-config .form-label { font-size:.78rem;font-weight:800;margin-bottom:6px; }
    .evolution-office-config .form-control-lg { font-size:.92rem;min-height:42px;padding:.58rem .78rem; }
    .evolution-office-config .btn { font-size:.78rem;padding:.58rem .82rem; }
    .evolution-step { align-items:center;display:flex;gap:11px;margin-bottom:15px; }
    .evolution-step>span { align-items:center;background:rgba(31,122,255,.12);border:1px solid rgba(31,122,255,.22);border-radius:10px;color:var(--brand);display:flex;flex:0 0 34px;font-size:.82rem;font-weight:900;height:34px;justify-content:center; }
    .evolution-step strong,.evolution-step small { display:block; }
    .evolution-step strong { color:var(--ink);font-size:.88rem;font-weight:900; }
    .evolution-step small { color:var(--muted);font-size:.74rem;line-height:1.4;margin-top:2px; }
    .evolution-qr-placeholder { align-items:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:14px;display:flex;flex-direction:column;justify-content:center;min-height:330px;padding:18px;text-align:center; }
    .evolution-qr-placeholder>i { color:var(--brand);font-size:3rem;margin-bottom:10px; }
    .evolution-qr-placeholder>strong { color:var(--ink);font-size:.94rem;font-weight:900; }
    .evolution-qr-placeholder>small { color:var(--muted);font-size:.76rem;line-height:1.45;margin-top:5px;max-width:260px; }
    .evolution-qr-placeholder img,.evolution-qr-placeholder canvas { background:#fff;border-radius:10px;margin-top:14px;max-height:260px;max-width:260px;padding:6px;width:100%; }
    .evolution-qr-placeholder code { background:rgba(31,122,255,.1);border:1px solid rgba(31,122,255,.22);border-radius:12px;color:var(--brand);font-size:1.35rem;font-weight:800;letter-spacing:.18em;margin-top:14px;padding:12px 16px;user-select:all; }
    .evolution-feedback { border-radius:10px;font-size:.8rem;font-weight:750;padding:10px 12px; }
    .evolution-feedback.success { background:rgba(28,163,98,.1);color:#168251; }
    .evolution-feedback.danger { background:rgba(220,53,69,.1);color:#c33443; }
    .evolution-admin-test { background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;display:grid;gap:14px;padding:16px; }
    .evolution-admin-test>div>strong,.evolution-admin-test>div>small { display:block; }
    .evolution-admin-test>div>strong { color:var(--ink);font-size:.86rem;font-weight:900; }
    .evolution-admin-test>div>small { color:var(--muted);font-size:.74rem;margin-top:3px; }
    .evolution-admin-test .form-label { font-size:.76rem;font-weight:800; }
.evolution-admin-test .form-control,.evolution-admin-test .form-select { font-size:.84rem;min-height:42px; }

/* Institutional website */
.inst-site {
  --inst-blue:#2678ff;
  --inst-blue-dark:#0d5fe5;
  --inst-navy:#071426;
  --inst-text:#101b2d;
  --inst-muted:#61708a;
  --inst-line:#dce5f2;
  --inst-soft:#f4f8fd;
  background:#fff;color:var(--inst-text);font-family:"Inter",Arial,sans-serif;min-height:100vh;overflow:hidden;scroll-behavior:smooth;
}
[data-theme="dark"] .inst-site { --inst-text:#ecf3ff;--inst-muted:#9aacbf;--inst-line:#253750;--inst-soft:#0d1d31;background:#071322;color:var(--inst-text); }
.inst-site * { box-sizing:border-box; }
.inst-container { margin:0 auto;max-width:1320px;padding-left:32px;padding-right:32px;width:100%; }
.inst-header { backdrop-filter:blur(18px);background:rgba(255,255,255,.88);border-bottom:1px solid rgba(213,224,239,.86);position:fixed;top:0;width:100%;z-index:1040; }
[data-theme="dark"] .inst-header { background:rgba(7,19,34,.88);border-bottom-color:#1d3048; }
.inst-header-inner { align-items:center;display:flex;height:76px;justify-content:space-between; }
.inst-brand { align-items:center;color:var(--inst-text);display:inline-flex;gap:11px;text-decoration:none; }
.inst-brand-mark { align-items:center;background:linear-gradient(145deg,#1671ff,#4c8dff);border-radius:13px;box-shadow:0 9px 22px rgba(38,120,255,.24);display:inline-flex;flex:0 0 42px;height:42px;justify-content:center;overflow:hidden; }
.inst-brand-mark i { color:#fff;font-size:1.1rem; }
.inst-brand-mark img { height:100%;object-fit:contain;width:100%; }
.inst-brand>span:last-child,.inst-footer-brand>span:last-child { display:flex;flex-direction:column; }
.inst-brand strong,.inst-footer-brand strong { font-size:1rem;font-weight:900;letter-spacing:-.02em; }
.inst-brand small,.inst-footer-brand small { color:var(--inst-muted);font-size:.72rem;font-weight:600; }
.inst-nav { align-items:center;display:flex;gap:32px; }
.inst-nav a { color:var(--inst-muted);font-size:.86rem;font-weight:750;text-decoration:none;transition:.2s ease; }
.inst-nav a:hover { color:var(--inst-blue); }
.inst-header-actions { align-items:center;display:flex;gap:9px; }
.inst-theme,.inst-menu { align-items:center;background:var(--inst-soft);border:1px solid var(--inst-line);border-radius:11px;color:var(--inst-text);display:inline-flex;flex:0 0 40px;height:40px;justify-content:center;overflow:hidden;width:40px; }
.inst-theme { font-size:0; }.inst-theme i { font-size:1rem; }.inst-theme span { display:none!important; }
.inst-access { align-items:center;background:var(--inst-blue);border:1px solid var(--inst-blue);border-radius:11px;color:#fff;display:inline-flex;font-size:.86rem;font-weight:550;gap:7px;padding:11px 18px;text-decoration:none;transition:.2s ease; }
.inst-access:hover { background:var(--inst-blue-dark);color:#fff;transform:translateY(-1px); }
.inst-menu { display:none; }
.inst-mobile-menu { background:var(--inst-soft);color:var(--inst-text); }
.inst-mobile-menu .offcanvas-body { display:flex;flex-direction:column;gap:8px;padding:22px; }
.inst-mobile-menu .offcanvas-body>a:not(.inst-access) { border-bottom:1px solid var(--inst-line);color:var(--inst-text);font-size:.88rem;font-weight:750;padding:13px 3px;text-decoration:none; }
.inst-mobile-menu .inst-access { justify-content:center;margin-top:12px; }

.inst-hero { background:radial-gradient(circle at 74% 30%,rgba(38,120,255,.12),transparent 38%),linear-gradient(180deg,#f8fbff 0%,#fff 100%);padding:154px 0 86px;position:relative; }
[data-theme="dark"] .inst-hero { background:radial-gradient(circle at 74% 30%,rgba(38,120,255,.18),transparent 40%),linear-gradient(180deg,#071322,#0a1829); }
.inst-hero:before { background-image:linear-gradient(rgba(45,105,185,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(45,105,185,.055) 1px,transparent 1px);background-size:38px 38px;content:"";inset:0;mask-image:linear-gradient(to bottom,black,transparent 82%);pointer-events:none;position:absolute; }
.inst-hero-glow { border-radius:50%;filter:blur(60px);opacity:.25;position:absolute; }
.inst-hero-glow.one { background:#54b9ff;height:240px;right:-70px;top:80px;width:240px; }
.inst-hero-glow.two { background:#725cff;bottom:-100px;height:180px;left:18%;width:180px; }
.inst-hero-grid { align-items:center;display:grid;gap:56px;grid-template-columns:minmax(520px,1fr) minmax(560px,1.08fr);position:relative;z-index:1; }
.inst-eyebrow { align-items:center;background:#eaf2ff;border:1px solid #cee0ff;border-radius:100px;color:#1764d9;display:inline-flex;font-size:.76rem;font-weight:550;gap:7px;padding:8px 13px;text-transform:uppercase; }
[data-theme="dark"] .inst-eyebrow { background:#102b4c;border-color:#1f4c80;color:#83b7ff; }
.inst-hero-copy h1 { font-size:clamp(2.8rem,3.55vw,4rem);font-weight:900;letter-spacing:-.05em;line-height:1.04;margin:23px 0 22px;max-width:680px; }
.inst-hero-copy h1 em { background:linear-gradient(100deg,#1671ff,#6d5cff);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal; }
.inst-hero-copy>p { color:var(--inst-muted);font-size:1rem;line-height:1.75;max-width:610px; }
.inst-hero-actions { display:flex;flex-wrap:wrap;gap:11px;margin-top:30px; }
.inst-primary,.inst-secondary { align-items:center;border-radius:13px;display:inline-flex;font-size:.88rem;font-weight:550;gap:9px;justify-content:center;padding:14px 19px;text-decoration:none; }
.inst-primary { background:linear-gradient(135deg,#1671ff,#4c8dff);box-shadow:0 13px 30px rgba(38,120,255,.25);color:#fff; }
.inst-primary:hover { color:#fff;transform:translateY(-2px); }
.inst-secondary { background:#fff;border:1px solid var(--inst-line);color:var(--inst-text); }
[data-theme="dark"] .inst-secondary { background:#0c1d31; }
.inst-proof-row { display:flex;flex-wrap:wrap;gap:17px;margin-top:28px; }
.inst-proof-row span { align-items:center;color:var(--inst-muted);display:flex;font-size:.76rem;font-weight:700;gap:6px; }
.inst-proof-row i { align-items:center;background:#e7f7ef;border-radius:50%;color:#169960;display:flex;font-size:.65rem;height:18px;justify-content:center;width:18px; }

.inst-product-stage { min-height:525px;position:relative; }
.inst-app-window { background:#fff;border:1px solid #d3deed;border-radius:20px;box-shadow:0 32px 70px rgba(14,43,83,.18);overflow:hidden;position:absolute;right:0;top:28px;transform:perspective(1100px) rotateY(-2deg) rotateX(1deg);width:100%; }
[data-theme="dark"] .inst-app-window { background:#0a1a2d;border-color:#263c57;box-shadow:0 32px 70px rgba(0,0,0,.34); }
.inst-app-top { align-items:center;background:#f7faff;border-bottom:1px solid #e2eaf5;display:flex;height:48px;justify-content:space-between;padding:0 17px; }
[data-theme="dark"] .inst-app-top { background:#0e2035;border-color:#26384e; }
.inst-app-top>div { display:flex;gap:5px; }.inst-app-top>div i { background:#d5e0ef;border-radius:50%;height:7px;width:7px; }
.inst-app-top span { color:var(--inst-text);font-size:.66rem;font-weight:550; }.inst-app-top small { color:var(--inst-muted);font-size:.58rem; }
.inst-app-body { display:grid;grid-template-columns:58px 1fr;min-height:410px; }
.inst-app-body aside { align-items:center;background:#09172a;display:flex;flex-direction:column;gap:18px;padding:15px 0; }
.inst-app-body aside b { align-items:center;background:#2678ff;border-radius:10px;color:#fff;display:flex;height:32px;justify-content:center;margin-bottom:8px;width:32px; }
.inst-app-body aside>i { color:#718099;font-size:.82rem; }.inst-app-body aside>i.active { color:#5c9bff; }
.inst-app-content { padding:22px; }
.inst-app-greeting { align-items:center;display:flex;justify-content:space-between; }.inst-app-greeting span { display:flex;flex-direction:column; }.inst-app-greeting small { color:var(--inst-muted);font-size:.57rem; }.inst-app-greeting strong { font-size:.8rem;font-weight:900; }
.inst-app-greeting button { background:#2678ff;border:0;border-radius:8px;color:#fff;font-size:.58rem;font-weight:800;padding:8px 10px; }
.inst-kpis { display:grid;gap:9px;grid-template-columns:repeat(3,1fr);margin:18px 0; }.inst-kpis article { align-items:center;background:var(--inst-soft);border:1px solid var(--inst-line);border-radius:11px;display:flex;gap:9px;padding:12px; }.inst-kpis article>i { align-items:center;background:#e7f0ff;border-radius:8px;color:#2678ff;display:flex;height:29px;justify-content:center;width:29px; }.inst-kpis span { display:flex;flex-direction:column; }.inst-kpis small { color:var(--inst-muted);font-size:.48rem; }.inst-kpis strong { font-size:.65rem;font-weight:550; }
.inst-os-panel { border:1px solid var(--inst-line);border-radius:12px;overflow:hidden; }.inst-os-head { align-items:center;background:var(--inst-soft);display:flex;justify-content:space-between;padding:10px 12px; }.inst-os-head strong { font-size:.61rem; }.inst-os-head small { color:var(--inst-muted);font-size:.46rem; }
.inst-os-row { align-items:center;border-top:1px solid var(--inst-line);display:grid;gap:9px;grid-template-columns:30px 1fr auto;padding:10px 12px; }.inst-os-row>span:nth-child(2) { display:flex;flex-direction:column; }.inst-os-row strong { font-size:.57rem; }.inst-os-row small { color:var(--inst-muted);font-size:.47rem; }.inst-bike-icon { align-items:center;background:#e8f1ff;border-radius:8px;color:#2678ff;display:flex;height:28px;justify-content:center;width:28px; }.inst-bike-icon.violet { background:#f0ebff;color:#725cff; }.inst-bike-icon.green { background:#e6f8ef;color:#13965c; }.inst-os-row em { border-radius:100px;font-size:.44rem;font-style:normal;font-weight:800;padding:5px 7px; }.inst-os-row em.waiting { background:#fff5df;color:#c47c10; }.inst-os-row em.doing { background:#e8f1ff;color:#276bd0; }.inst-os-row em.done { background:#e6f8ef;color:#118650; }
.inst-float-chip { align-items:center;background:#fff;border:1px solid #dce5f2;border-radius:14px;box-shadow:0 15px 36px rgba(20,48,88,.16);display:flex;gap:10px;padding:11px 13px;position:absolute;z-index:3; }
[data-theme="dark"] .inst-float-chip { background:#10243b;border-color:#2a405b; }
.inst-float-chip>i:first-child { align-items:center;border-radius:10px;display:flex;font-size:1rem;height:34px;justify-content:center;width:34px; }.inst-float-chip span { display:flex;flex-direction:column; }.inst-float-chip strong { font-size:.62rem; }.inst-float-chip small { color:var(--inst-muted);font-size:.5rem; }.inst-float-chip>i:last-child { color:#18a566; }
.inst-float-chip.whatsapp { left:-28px;top:0; }.inst-float-chip.whatsapp>i:first-child { background:#e5f8ee;color:#16a05f; }.inst-float-chip.plate { bottom:10px;right:-18px; }.inst-float-chip.plate>i:first-child { background:#e8f1ff;color:#2678ff; }

.inst-value-strip { border-bottom:1px solid var(--inst-line);border-top:1px solid var(--inst-line); }.inst-value-strip .inst-container { align-items:center;display:flex;justify-content:space-between;min-height:88px; }.inst-value-strip span { align-items:center;color:var(--inst-muted);display:flex;font-size:.9rem;font-weight:750;gap:9px; }.inst-value-strip i { color:var(--inst-blue);font-size:1.05rem; }
.inst-section { padding:104px 0; }.inst-section-heading { margin-bottom:44px;max-width:720px; }.inst-section-heading.centered { margin-left:auto;margin-right:auto;text-align:center; }.inst-section-heading>span { color:var(--inst-blue);font-size:.75rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase; }.inst-section-heading h2 { font-size:clamp(2.1rem,3.2vw,3rem);font-weight:900;letter-spacing:-.045em;line-height:1.1;margin:13px 0 15px; }.inst-section-heading p { color:var(--inst-muted);font-size:1rem;line-height:1.7;margin:0; }.inst-section-heading>a { color:var(--inst-blue);display:inline-flex;font-size:.88rem;font-weight:800;gap:7px;margin-top:20px;text-decoration:none; }
.inst-bento { display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr)); }.inst-feature-card { background:var(--inst-soft);border:1px solid var(--inst-line);border-radius:22px;min-height:235px;padding:32px;position:relative;transition:.25s ease; }.inst-feature-card:hover { border-color:#abcaff;transform:translateY(-4px); }.inst-feature-card.featured { grid-column:span 1; }.inst-feature-card>span { color:var(--inst-blue);display:block;font-size:.74rem;font-weight:900;letter-spacing:.1em;margin-top:22px;text-transform:uppercase; }.inst-feature-card h3 { font-size:1.32rem;font-weight:900;letter-spacing:-.025em;margin:9px 0; }.inst-feature-card p { color:var(--inst-muted);font-size:1rem;line-height:1.65;margin:0;max-width:560px; }.inst-feature-icon { align-items:center;background:#e5efff;border-radius:12px;color:#2678ff;display:flex;font-size:1.2rem;height:46px;justify-content:center;width:46px; }.inst-feature-icon.mint { background:#e2f7ed;color:#12925a; }.inst-feature-icon.amber { background:#fff1d8;color:#c57908; }.inst-feature-icon.violet { background:#ede8ff;color:#725cff; }.inst-feature-icon.rose { background:#ffe7ed;color:#dc4564; }
.inst-feature-card.blue { background:linear-gradient(135deg,#f3f8ff,#eaf3ff); }.inst-mini-flow { align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:25px; }.inst-mini-flow b { background:#fff;border:1px solid #d8e4f4;border-radius:8px;color:#34506f;font-size:.68rem;padding:7px 10px; }.inst-mini-flow i { color:#8ba4c2;font-size:.72rem; }
[data-theme="dark"] .inst-feature-card.blue { background:linear-gradient(135deg,#10243b,#112b48);border-color:#254361; }
.inst-feature-card.dark { background:linear-gradient(145deg,#091a30,#112a49);border-color:#183858;color:#fff; }.inst-feature-card.dark>span { color:#7db1ff; }.inst-feature-card.dark p { color:#b4c4d7; }.inst-feature-card.dark .inst-feature-icon { background:#1a3a61;color:#7db1ff; }.inst-tech-tags { display:flex;flex-wrap:wrap;gap:8px;margin-top:24px; }.inst-tech-tags b { background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:100px;color:#d6e2ef;font-size:.66rem;padding:7px 10px; }

.inst-integrations { background:var(--inst-soft); }.inst-integration-grid { display:grid;gap:22px;grid-template-columns:1fr 1fr; }.inst-integration-card { background:#fff;border:1px solid var(--inst-line);border-radius:24px;display:flex;flex-direction:column;min-height:430px;overflow:hidden;padding:36px;position:relative; }.inst-integration-card:after { border-radius:50%;content:"";height:170px;opacity:.12;position:absolute;right:-60px;top:-70px;width:170px; }.inst-integration-card.whatsapp:after { background:#20bf6b; }.inst-integration-card.plate:after { background:#2678ff; } [data-theme="dark"] .inst-integration-card { background:#0b1b2e; }
.inst-integration-top { align-items:center;display:flex;justify-content:space-between; }.inst-integration-top>span { align-items:center;border-radius:14px;display:flex;font-size:1.45rem;height:54px;justify-content:center;width:54px; }.inst-integration-card.whatsapp .inst-integration-top>span { background:#e1f8eb;color:#16a05f; }.inst-integration-card.plate .inst-integration-top>span { background:#e7f0ff;color:#2678ff; }.inst-integration-top small { color:var(--inst-muted);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase; }.inst-integration-card h3 { font-size:1.55rem;font-weight:900;letter-spacing:-.03em;margin:24px 0 11px; }.inst-integration-card>p { color:var(--inst-muted);font-size:1rem;line-height:1.7; }.inst-integration-card ul { display:grid;gap:10px;list-style:none;margin:22px 0;padding:0; }.inst-integration-card li { color:var(--inst-text);font-size:.9rem;font-weight:700; }.inst-integration-card li i { color:#16a05f;margin-right:8px; }
.inst-message-demo,.inst-plate-demo { align-items:center;background:var(--inst-soft);border:1px solid var(--inst-line);border-radius:13px;display:flex;margin-top:auto;padding:14px; }.inst-message-demo>i { color:#16a05f;font-size:1.1rem;margin-right:10px; }.inst-message-demo span { display:flex;flex-direction:column; }.inst-message-demo strong { font-size:.76rem; }.inst-message-demo small { color:var(--inst-muted);font-size:.66rem; }.inst-plate-demo { gap:10px; }.inst-plate-demo span { background:#0b1b2e;border-radius:7px;color:#fff;font-family:monospace;font-size:.82rem;font-weight:900;letter-spacing:.08em;padding:8px 10px; }.inst-plate-demo>i { color:#8da0ba; }.inst-plate-demo strong { font-size:.74rem; }.inst-plate-demo em { background:#e2f7ed;border-radius:100px;color:#128956;font-size:.6rem;font-style:normal;font-weight:550;margin-left:auto;padding:6px 8px; }

.inst-workflow { background:linear-gradient(145deg,#071426,#0d2745);color:#fff;position:relative; }.inst-workflow:before { background-image:radial-gradient(rgba(104,158,222,.3) 1px,transparent 1px);background-size:24px 24px;content:"";inset:0;opacity:.35;position:absolute; }.inst-workflow .inst-container { position:relative;z-index:1; }.inst-section-heading.light>span { color:#71aaff; }.inst-section-heading.light p { color:#b5c6da; }.inst-steps { display:grid;gap:16px;grid-template-columns:repeat(4,1fr); }.inst-steps article { background:rgba(13,42,73,.72);border:1px solid rgba(126,174,226,.18);border-radius:18px;min-height:230px;padding:26px;position:relative; }.inst-steps article:last-child { border-right:1px solid rgba(126,174,226,.18); }.inst-steps b { color:#79a9df;font-size:.76rem;position:absolute;right:20px;top:18px; }.inst-steps article>i { align-items:center;background:#123d69;border:1px solid #285b8e;border-radius:14px;color:#8abdff;display:flex;font-size:1.3rem;height:50px;justify-content:center;width:50px; }.inst-steps h3 { font-size:1.16rem;font-weight:900;margin:34px 0 9px; }.inst-steps p { color:#b8c9dc;font-size:.9rem;line-height:1.65; }

.inst-pricing-grid { display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:auto;max-width:1050px; }.inst-pricing-grid.single { max-width:420px; }.inst-price-card { background:var(--inst-soft);border:1px solid var(--inst-line);border-radius:22px;padding:29px;position:relative; }.inst-price-card.highlight { background:#fff;border-color:#9fc0f1;box-shadow:0 22px 48px rgba(31,79,139,.12); } [data-theme="dark"] .inst-price-card.highlight { background:#0b1d31; }.inst-plan-label { background:#2678ff;border-radius:100px;color:#fff;font-size:.52rem;font-weight:900;padding:6px 10px;position:absolute;right:20px;top:20px;text-transform:uppercase; }.inst-price-card>small { color:var(--inst-blue);font-size:.58rem;font-weight:900;text-transform:uppercase; }.inst-price-card h3 { font-size:1.25rem;font-weight:900;margin:10px 0 7px; }.inst-price-card>p { color:var(--inst-muted);font-size:.68rem;line-height:1.55;min-height:42px; }.inst-price { align-items:baseline;display:flex;gap:5px;margin:24px 0; }.inst-price strong { font-size:1.75rem;font-weight:900;letter-spacing:-.04em; }.inst-price span { color:var(--inst-muted);font-size:.65rem; }.inst-price-card ul { border-top:1px solid var(--inst-line);display:grid;gap:10px;list-style:none;margin:0 0 25px;padding:22px 0 0; }.inst-price-card li { color:var(--inst-muted);font-size:.64rem; }.inst-price-card li i { color:#16a05f;margin-right:7px; }.inst-price-card>a { align-items:center;background:var(--inst-blue);border-radius:11px;color:#fff;display:flex;font-size:.69rem;font-weight:550;justify-content:space-between;padding:12px 14px;text-decoration:none; }.inst-empty-plans { align-items:center;border:1px dashed var(--inst-line);border-radius:20px;display:flex;flex-direction:column;padding:40px;text-align:center; }.inst-empty-plans i { color:var(--inst-blue);font-size:1.5rem; }

.inst-faq { background:var(--inst-soft); }.inst-faq-grid { display:grid;gap:70px;grid-template-columns:.72fr 1.28fr; }.inst-faq-list { display:grid;gap:9px; }.inst-faq-list details { background:#fff;border:1px solid var(--inst-line);border-radius:14px;padding:0 18px; } [data-theme="dark"] .inst-faq-list details { background:#0b1b2e; }.inst-faq-list summary { align-items:center;color:var(--inst-text);cursor:pointer;display:flex;font-size:.72rem;font-weight:550;justify-content:space-between;list-style:none;padding:17px 0; }.inst-faq-list summary::-webkit-details-marker { display:none; }.inst-faq-list details[open] summary i { transform:rotate(45deg); }.inst-faq-list summary i { color:var(--inst-blue);transition:.2s; }.inst-faq-list details p { border-top:1px solid var(--inst-line);color:var(--inst-muted);font-size:.68rem;line-height:1.7;margin:0;padding:14px 0 17px; }
.inst-contact-card { background:linear-gradient(145deg,#f2f7ff,#fff);border:1px solid var(--inst-line);border-radius:28px;display:grid;gap:70px;grid-template-columns:.8fr 1.2fr;padding:48px; } [data-theme="dark"] .inst-contact-card { background:linear-gradient(145deg,#0e223b,#091827); }.inst-contact-copy>span { color:var(--inst-blue);font-size:.65rem;font-weight:900;text-transform:uppercase; }.inst-contact-copy h2 { font-size:2rem;font-weight:900;letter-spacing:-.04em;line-height:1.15;margin:12px 0; }.inst-contact-copy>p { color:var(--inst-muted);font-size:.74rem;line-height:1.7;margin-bottom:28px; }.inst-contact-copy>div { align-items:center;display:flex;gap:10px;margin-top:15px; }.inst-contact-copy>div>i { align-items:center;background:#e5efff;border-radius:10px;color:#2678ff;display:flex;height:36px;justify-content:center;width:36px; }.inst-contact-copy>div>span { display:flex;flex-direction:column; }.inst-contact-copy strong { font-size:.65rem; }.inst-contact-copy small { color:var(--inst-muted);font-size:.54rem; }
.inst-contact-form { background:#fff;border:1px solid var(--inst-line);border-radius:18px;display:grid;gap:13px;padding:24px; } [data-theme="dark"] .inst-contact-form { background:#091827; }.inst-form-row { display:grid;gap:12px;grid-template-columns:1fr 1fr; }.inst-contact-form label { color:var(--inst-text);display:grid;font-size:.62rem;font-weight:800;gap:6px; }.inst-contact-form input,.inst-contact-form textarea { background:var(--inst-soft);border:1px solid var(--inst-line);border-radius:10px;color:var(--inst-text);font:inherit;font-size:.68rem;font-weight:600;outline:0;padding:11px 12px;resize:vertical; }.inst-contact-form input:focus,.inst-contact-form textarea:focus { border-color:#76a7ed;box-shadow:0 0 0 3px rgba(38,120,255,.1); }.inst-contact-form button { align-items:center;background:#2678ff;border:0;border-radius:11px;color:#fff;display:flex;font-size:.7rem;font-weight:550;justify-content:space-between;padding:12px 14px; }.inst-form-message { border-radius:10px;font-size:.65rem;font-weight:750;padding:10px; }.inst-form-message.success { background:#e5f8ee;color:#128956; }.inst-form-message.error { background:#ffe9ec;color:#bc334b; }
.inst-final-cta { background:#2678ff;color:#fff;padding:90px 0;text-align:center; }.inst-final-cta span { align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:100px;display:inline-flex;font-size:.66rem;font-weight:550;gap:7px;padding:7px 12px; }.inst-final-cta h2 { font-size:clamp(2rem,4vw,3.5rem);font-weight:900;letter-spacing:-.05em;line-height:1.08;margin:22px 0 28px; }.inst-final-cta>div>div { display:flex;gap:10px;justify-content:center; }.inst-final-cta a { border:1px solid rgba(255,255,255,.65);border-radius:11px;color:#fff;font-size:.7rem;font-weight:550;padding:11px 15px;text-decoration:none; }.inst-final-cta a:first-child { background:#fff;color:#1764d9; }
.inst-footer { background:#061120;color:#fff;padding:36px 0; }.inst-footer>.inst-container { align-items:center;display:flex;justify-content:space-between; }.inst-footer-brand { align-items:center;display:flex;gap:10px; }.inst-footer .inst-brand-mark { flex-basis:36px;height:36px; }.inst-footer nav { display:flex;gap:22px; }.inst-footer nav a { color:#8fa4bd;font-size:.62rem;font-weight:700;text-decoration:none; }.inst-footer>.inst-container>small { color:#637990;font-size:.55rem; }

/* Institutional typography normalization */
.inst-plan-label { font-size:.64rem; }
.inst-price-card { padding:32px; }
.inst-price-card>small { font-size:.7rem; }
.inst-price-card h3 { font-size:1.4rem; }
.inst-price-card>p { font-size:.84rem;line-height:1.6; }
.inst-price span { font-size:.78rem; }
.inst-price-card li { font-size:.8rem; }
.inst-price-card>a { font-size:.82rem;padding:13px 15px; }
.inst-faq-list summary { font-size:.88rem;padding:19px 0; }
.inst-faq-list details p { font-size:.82rem; }
.inst-contact-copy>span { font-size:.74rem; }
.inst-contact-copy h2 { font-size:2.15rem; }
.inst-contact-copy>p { font-size:.9rem; }
.inst-contact-copy strong { font-size:.8rem; }
.inst-contact-copy small { font-size:.7rem; }
.inst-contact-form label { font-size:.78rem; }
.inst-contact-form input,.inst-contact-form textarea { font-size:.82rem;padding:12px 13px; }
.inst-contact-form button { font-size:.82rem;padding:13px 15px; }
.inst-footer nav a { color:#a8b8ca;font-size:.76rem; }
.inst-footer>.inst-container>small { color:#8295aa;font-size:.68rem; }

/* Institutional integrations: three connected automation pillars */
.inst-integration-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.inst-integration-card { min-width:0;padding:30px; }
.inst-integration-card.followup:after { background:#7857ff; }
.inst-integration-card.followup .inst-integration-top>span { background:#eee9ff;color:#7051e8; }
.inst-integration-card h3 { font-size:1.42rem; }
.inst-integration-card>p { font-size:.94rem;line-height:1.65; }
.inst-integration-card li { font-size:.86rem; }
.inst-followup-demo { align-items:center;background:var(--inst-soft);border:1px solid var(--inst-line);border-radius:13px;display:flex;gap:10px;margin-top:auto;padding:14px; }
.inst-followup-demo>i { align-items:center;background:#eee9ff;border-radius:9px;color:#7051e8;display:flex;flex:0 0 32px;height:32px;justify-content:center; }
.inst-followup-demo span { display:flex;flex-direction:column;min-width:0; }
.inst-followup-demo strong { font-size:.76rem; }
.inst-followup-demo small { color:var(--inst-muted);font-size:.66rem; }
.inst-followup-demo em { background:#eee9ff;border-radius:100px;color:#6547d5;font-size:.6rem;font-style:normal;font-weight:550;margin-left:auto;padding:6px 8px; }

/* Institutional FAQ: smooth expansion with visual feedback */
.inst-faq-list details { overflow:hidden;transition:border-color .28s ease,box-shadow .28s ease,transform .28s ease; }
.inst-faq-list details[open] { border-color:rgba(38,120,255,.38);box-shadow:0 14px 30px rgba(24,67,122,.08);transform:translateY(-1px); }
.inst-faq-list summary:focus-visible { border-radius:8px;outline:3px solid rgba(38,120,255,.2);outline-offset:4px; }
.inst-faq-list summary i { transition:transform .35s cubic-bezier(.22,1,.36,1); }
.inst-faq-list details[open] summary i { transform:rotate(45deg) scale(1.08); }
.inst-faq-answer { display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1),opacity .24s ease; }
.inst-faq-answer>div { min-height:0;overflow:hidden; }
.inst-faq-list details[open] .inst-faq-answer { grid-template-rows:1fr;opacity:1; }
.inst-faq-list details p { transform:translateY(-7px);transition:transform .38s cubic-bezier(.22,1,.36,1); }
.inst-faq-list details[open] p { transform:translateY(0); }

@media (prefers-reduced-motion:reduce) {
  .inst-faq-list details,.inst-faq-list summary i,.inst-faq-answer,.inst-faq-list details p { transition:none; }
}

@media (max-width:1050px) {
  .inst-nav { display:none; }.inst-menu { display:inline-flex; }.inst-header-actions>.inst-access { display:none; }
  .inst-hero-grid { gap:55px;grid-template-columns:1fr; }.inst-hero-copy { max-width:760px; }.inst-product-stage { margin:auto;max-width:760px;width:100%; }
  .inst-bento { grid-template-columns:1fr 1fr; }.inst-feature-card.featured { grid-column:span 1; }
  .inst-integration-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.inst-integration-card.followup { grid-column:1 / -1; }
  .inst-value-strip .inst-container { flex-wrap:wrap;gap:18px;justify-content:center;padding-bottom:22px;padding-top:22px; }
}
@media (max-width:760px) {
  .inst-container { padding-left:19px;padding-right:19px; }.inst-header-inner { height:68px; }.inst-brand small { display:none; }.inst-theme { display:none; }
  .inst-hero { padding:112px 0 58px; }.inst-hero-grid { gap:38px; }.inst-hero-copy { text-align:left; }.inst-hero-copy h1 { font-size:2.55rem; }.inst-hero-copy>p { font-size:.84rem; }.inst-hero-actions a { width:100%; }.inst-proof-row { gap:10px; }.inst-proof-row span { width:100%; }
  .inst-product-stage { min-height:385px; }.inst-app-window { border-radius:16px;position:relative;top:18px;transform:none; }.inst-app-body { grid-template-columns:42px 1fr;min-height:310px; }.inst-app-body aside { gap:13px;padding:10px 0; }.inst-app-body aside b { height:26px;width:26px; }.inst-app-content { padding:13px; }.inst-kpis { gap:5px; }.inst-kpis article { gap:5px;padding:7px; }.inst-kpis article>i { display:none; }.inst-kpis strong { font-size:.55rem; }.inst-os-row { gap:6px;grid-template-columns:24px 1fr auto;padding:8px; }.inst-bike-icon { height:24px;width:24px; }.inst-os-row strong { font-size:.49rem; }.inst-os-row em { font-size:.38rem; }.inst-float-chip { display:none; }
  .inst-section { padding:74px 0; }.inst-section-heading { margin-bottom:30px; }.inst-section-heading h2 { font-size:2rem; }.inst-bento,.inst-integration-grid,.inst-faq-grid,.inst-contact-card { grid-template-columns:1fr; }.inst-integration-card.followup { grid-column:auto; }.inst-feature-card.featured { grid-column:span 1; }.inst-feature-card { min-height:230px; }.inst-integration-card { padding:24px; }
  .inst-steps { grid-template-columns:1fr 1fr; }.inst-steps article { min-height:210px; }.inst-steps article:nth-child(2) { border-right:1px solid rgba(255,255,255,.12); }
  .inst-faq-grid,.inst-contact-card { gap:32px; }.inst-contact-card { border-radius:20px;padding:24px; }.inst-form-row { grid-template-columns:1fr; }
  .inst-final-cta { padding:70px 0; }.inst-final-cta>div>div { flex-direction:column; }.inst-final-cta a { width:100%; }
  .inst-footer>.inst-container { align-items:flex-start;flex-direction:column;gap:24px; }.inst-footer nav { flex-wrap:wrap;gap:13px; }
}
@media (max-width:430px) {
  .inst-hero-copy h1 { font-size:2.2rem; }.inst-eyebrow { font-size:.56rem; }.inst-app-greeting button { display:none; }.inst-kpis { grid-template-columns:1fr 1fr; }.inst-kpis article:last-child { display:none; }.inst-os-row:last-child { display:none; }
  .inst-steps { grid-template-columns:1fr; }.inst-steps article,.inst-steps article:nth-child(2),.inst-steps article:last-child { border-left:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.12);min-height:190px; }.inst-steps h3 { margin-top:35px; }
  .inst-plate-demo,.inst-followup-demo { align-items:flex-start;flex-wrap:wrap; }.inst-plate-demo em,.inst-followup-demo em { margin-left:0; }
}
    .data-maintenance-grid { display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr)); }
    .data-maintenance-card { align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;grid-template-columns:42px minmax(0,1fr) auto;padding:13px; }
    .data-maintenance-card > i { align-items:center;background:var(--danger-soft);border-radius:8px;color:var(--danger);display:flex;font-size:1.05rem;height:42px;justify-content:center;width:42px; }
    .data-maintenance-card h3 { color:var(--ink);font-size:.86rem;font-weight:900;margin:0 0 3px; }
    .data-maintenance-card p { color:var(--muted);font-size:.72rem;line-height:1.4;margin:0; }
    .data-maintenance-card span { color:var(--muted);display:block;font-size:.68rem;font-weight:800;margin-top:5px; }
    .maintenance-dialog { max-width:520px; }

    .compact-form {
      gap: 14px;
    }

    .appearance-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
      gap: 18px;
      align-items: start;
    }

    .appearance-controls {
      display: grid;
      gap: 14px;
    }

    .appearance-group {
      display: grid;
      gap: 12px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--soft);
      padding: 14px;
    }

    .appearance-group-title {
      display: flex;
      align-items: flex-start;
      gap: 10px;
    }

    .appearance-group-title i {
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      flex: 0 0 34px;
      border-radius: 8px;
      color: #fff;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
    }

    .appearance-group-title strong,
    .appearance-group-title span {
      display: block;
    }

    .appearance-group-title strong {
      color: var(--ink);
      font-size: .96rem;
      font-weight: 900;
    }

    .appearance-group-title span {
      color: var(--muted);
      font-size: .84rem;
      font-weight: 650;
      margin-top: 2px;
    }

    .color-control {
      display: flex;
      align-items: center;
      gap: 10px;
      min-height: 44px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      padding: 6px 10px;
    }

    .admin-form .color-control input[type="color"].form-control,
    .admin-form .color-control input[type="color"].form-control-lg {
      width: 42px;
      height: 30px;
      min-height: 30px;
      flex: 0 0 42px;
      border: 0;
      border-radius: 7px;
      padding: 0;
      background: transparent;
    }

    .color-control span {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 800;
      text-transform: uppercase;
    }

    .appearance-preview {
      display: grid;
      gap: 12px;
      padding: 14px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--panel);
      box-shadow: var(--shadow);
      position: sticky;
      top: 96px;
    }

    .appearance-preview-copy strong,
    .appearance-preview-copy span {
      display: block;
    }

    .appearance-preview-copy strong {
      color: var(--ink);
      font-size: .95rem;
      font-weight: 900;
    }

    .appearance-preview-copy span {
      color: var(--muted);
      font-size: .84rem;
      font-weight: 650;
      margin-top: 3px;
    }

    .appearance-hover-sample {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      border-radius: 8px;
      padding: 0 14px;
      color: #fff;
      font-size: .88rem;
      font-weight: 800;
      background: linear-gradient(135deg, var(--button-hover-start), var(--button-hover-end));
    }

    .system-preview-frame {
      display: grid;
      grid-template-columns: 116px minmax(0, 1fr);
      min-height: 260px;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 12px;
      background: var(--canvas);
    }

    .system-preview-sidebar {
      display: flex;
      flex-direction: column;
      gap: 8px;
      background: var(--sidebar);
      border-right: 1px solid var(--line);
      padding: 12px 10px;
    }

    .system-preview-brand {
      display: flex;
      align-items: center;
      gap: 7px;
      color: var(--ink);
      font-size: .76rem;
      font-weight: 900;
      margin-bottom: 8px;
    }

    .system-preview-brand span {
      width: 24px;
      height: 24px;
      border-radius: 7px;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
    }

    .system-preview-nav {
      display: flex;
      align-items: center;
      gap: 6px;
      min-height: 30px;
      border-radius: 8px;
      color: var(--muted);
      font-size: .72rem;
      font-weight: 800;
      padding: 0 8px;
    }

    .system-preview-nav.active {
      color: #fff;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      box-shadow: 0 10px 18px rgba(31, 122, 255, .18);
    }

    .system-preview-main {
      display: grid;
      align-content: start;
      gap: 12px;
      padding: 14px;
    }

    .system-preview-hero {
      display: grid;
      gap: 2px;
      min-height: 76px;
      align-content: center;
      border-radius: 12px;
      color: #fff;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      padding: 14px;
    }

    .system-preview-hero strong {
      font-size: 1rem;
      font-weight: 900;
    }

    .system-preview-hero span {
      font-size: .75rem;
      font-weight: 650;
      opacity: .92;
    }

    .system-preview-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .system-preview-card {
      display: grid;
      gap: 5px;
      min-height: 70px;
      align-content: center;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--panel);
      padding: 10px;
    }

    .system-preview-card small {
      color: var(--muted);
      font-size: .68rem;
      font-weight: 800;
    }

    .system-preview-card strong {
      color: var(--ink);
      font-size: 1.15rem;
      font-weight: 900;
    }

    .system-preview-actions {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

    .system-preview-actions .btn,
    .system-preview-actions .appearance-hover-sample {
      min-height: 38px;
      font-size: .78rem;
      padding: 0 12px;
    }

    .account-photo-row {
      display: flex;
      align-items: center;
      gap: 16px;
      padding: 14px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--soft);
    }

    .account-photo-preview {
      width: 82px;
      height: 82px;
      display: grid;
      place-items: center;
      flex: 0 0 82px;
      border-radius: 16px;
      overflow: hidden;
      color: #fff;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      font-size: 1.75rem;
      font-weight: 900;
      line-height: 1;
    }

    .account-photo-preview img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
    }

    .account-photo-field {
      flex: 1 1 auto;
      min-width: 0;
    }

    .page-transition {
      position: fixed;
      inset: 0;
      z-index: 2500;
      display: grid;
      place-items: center;
      background: rgba(7, 17, 31, .28);
      backdrop-filter: blur(5px);
      opacity: 0;
      pointer-events: none;
      transition: opacity .18s ease;
      visibility: hidden;
    }

    .page-transition.show {
      opacity: 1;
      pointer-events: auto;
      visibility: visible;
    }

    .page-transition-spinner {
      width: 46px;
      height: 46px;
      border-radius: 50%;
      border: 4px solid rgba(255, 255, 255, .36);
      border-top-color: var(--hero-start);
      border-right-color: var(--hero-end);
      animation: page-spin .72s linear infinite;
    }

    @keyframes page-spin {
      to {
        transform: rotate(360deg);
      }
    }

    .app-footer {
      border-top: 1px solid var(--line);
      color: var(--muted);
      font-size: .85rem;
      font-weight: 700;
    }

    .app-footer .page-wrap {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      gap: 12px;
      text-align: center;
    }

    .login-page {
      min-height: 100vh;
      display: grid;
      place-items: center;
      padding: 24px;
      background:
        radial-gradient(circle at 15% 0%, rgba(31, 122, 255, .28), transparent 34%),
        var(--canvas);
      background-image: var(--login-background, radial-gradient(circle at 15% 0%, rgba(31, 122, 255, .28), transparent 34%), var(--canvas));
      background-size: cover;
      background-position: center;
    }

    .login-shell {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(380px, .95fr);
      width: min(1080px, 100%);
      min-height: 640px;
      border: 1px solid rgba(255, 255, 255, .22);
      border-radius: 28px;
      box-shadow: 0 28px 80px rgba(0, 0, 0, .26);
      overflow: hidden;
    }

    .login-hero {
      display: flex;
      flex-direction: column;
      justify-content: center;
      background: linear-gradient(135deg, var(--login-start, var(--hero-start)), var(--login-end, var(--hero-end)));
      color: #fff;
      padding: 48px;
    }

    .login-logo {
      width: 92px;
      height: 92px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background: rgba(7, 17, 31, .82);
      color: #fff;
      font-size: 2rem;
      margin: 0 auto 28px;
      overflow: hidden;
      box-shadow: 0 18px 34px rgba(0, 0, 0, .22);
    }

    .login-logo img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .login-kicker {
      align-self: flex-start;
      border: 1px solid rgba(255, 255, 255, .22);
      border-radius: 999px;
      background: rgba(255, 255, 255, .14);
      color: #fff;
      font-size: .78rem;
      font-weight: 900;
      margin-bottom: 18px;
      padding: 8px 14px;
      text-transform: uppercase;
    }

    .login-hero h1 {
      color: #fff;
      font-size: clamp(2rem, 4vw, 2.65rem);
      font-weight: 900;
      line-height: 1.08;
      margin-bottom: 18px;
    }

    .login-hero p {
      color: rgba(255, 255, 255, .9);
      font-size: 1rem;
      font-weight: 650;
      line-height: 1.55;
      max-width: 460px;
      margin-bottom: 28px;
    }

    .login-feature-list {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: auto;
    }

    .login-feature-list span {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      border: 1px solid rgba(255, 255, 255, .2);
      border-radius: 999px;
      background: rgba(255, 255, 255, .13);
      color: #fff;
      font-size: .82rem;
      font-weight: 800;
      padding: 8px 12px;
    }

    .login-hero small {
      color: rgba(255, 255, 255, .78);
      font-weight: 800;
      margin-top: 42px;
    }

    .login-panel {
      display: flex;
      flex-direction: column;
      justify-content: center;
      background: var(--panel);
      padding: 56px 72px;
    }

    .login-copy h2 {
      color: var(--ink);
      font-size: 1.55rem;
      font-weight: 900;
      margin-bottom: 8px;
    }

    .login-copy p {
      color: var(--muted);
      font-size: .95rem;
      font-weight: 600;
      margin-bottom: 28px;
    }

    .login-form .form-label {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 900;
      letter-spacing: 0;
      margin-bottom: 6px;
      text-transform: uppercase;
    }

    .login-form .form-control,
    .login-form .form-select,
    .login-form .form-control-lg,
    .login-form .form-select-lg {
      border-radius: 8px;
      font-size: .92rem;
      font-weight: 650;
      min-height: 44px;
      padding-bottom: .48rem;
      padding-top: .48rem;
    }

    .login-form .form-control::placeholder {
      color: color-mix(in srgb, var(--muted) 72%, transparent);
      font-size: .9rem;
    }

    .login-input-wrap {
      position: relative;
    }

    .login-input-wrap i {
      position: absolute;
      left: 16px;
      top: 50%;
      transform: translateY(-50%);
      color: var(--muted);
      z-index: 2;
    }

    .login-input-wrap .form-control {
      min-height: 44px;
      border-radius: 8px;
      padding-left: 46px;
      font-size: .92rem;
    }

    .login-form-support {
      display: flex;
      justify-content: flex-end;
      margin: -8px 2px 14px;
    }

    .login-recovery-link {
      align-items: center;
      color: var(--primary);
      display: inline-flex;
      font-size: .8rem;
      font-weight: 600;
      gap: 6px;
      line-height: 1.2;
      text-decoration: none;
      transition: color .18s ease, transform .18s ease;
    }

    .login-recovery-link i {
      font-size: .78rem;
    }

    .login-recovery-link:hover {
      color: var(--primary-dark);
      transform: translateX(-2px);
    }

    .login-register-action {
      border-top: 1px solid var(--line);
      display: grid;
      gap: 10px;
      margin-top: 20px;
      padding-top: 18px;
      text-align: center;
    }

    .login-register-action > span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 550;
    }

    .login-hint {
      color: var(--muted);
      font-size: .86rem;
      font-weight: 650;
      margin-top: 24px;
      text-align: center;
    }

    .login-hint strong {
      color: var(--ink);
    }

    .admin-form {
      display: grid;
      gap: 18px;
    }

    .admin-form .form-control,
    .admin-form .form-select,
    .admin-form .form-control-lg,
    .admin-form .form-select-lg {
      min-height: 44px;
      border-radius: 8px;
      font-size: .92rem;
      font-weight: 650;
      padding-top: .48rem;
      padding-bottom: .48rem;
    }

    .admin-form textarea.form-control {
      min-height: 96px;
    }

    .notification-config-block {
      background: color-mix(in srgb, var(--soft) 76%, var(--panel));
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 18px;
    }

    .notification-config-block textarea.form-control {
      line-height: 1.5;
      min-height: 132px;
      resize: vertical;
    }

    .admin-form input[type="color"].form-control,
    .admin-form input[type="color"].form-control-lg {
      height: 44px;
      padding: 5px;
    }

    .admin-form input[type="file"].form-control {
      padding-top: .55rem;
      padding-bottom: .55rem;
    }

    .settings-grid {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 320px;
      gap: 18px;
      align-items: start;
    }

    .settings-grid > * {
      min-width: 0;
    }

    .office-client-layout {
      grid-template-columns: minmax(0, 1fr);
    }

    .office-client-list .compact-filter {
      grid-template-columns: minmax(220px, 1fr) minmax(150px, .55fr) auto auto;
    }

    .office-management-list,
    .office-management-list > .content-panel {
      min-width: 0;
      width: 100%;
    }

    .office-list-actions {
      align-items: center;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      justify-content: flex-end;
    }

    .office-management-list .modal-content {
      background: var(--panel);
      color: var(--ink);
    }

    .office-management-list .modal-header,
    .office-management-list .modal-footer {
      border-color: var(--line);
    }

    .office-management-list .office-form-dialog {
      max-width: 780px;
    }

    .office-management-list .office-vehicle-dialog {
      max-width: 720px;
    }

    .office-management-list .office-budget-dialog {
      max-width: 920px;
    }

    .office-management-list .office-product-dialog {
      max-width: 900px;
    }

    .office-management-list .office-product-dialog .modal-content {
      max-height: calc(100vh - 32px);
      overflow-y: auto;
    }

    .office-management-list .modal-content > section {
      padding: 18px 20px !important;
    }

    .office-management-list .office-form-dialog .modal-content {
      max-height: 82vh;
    }

    .office-management-list .modal-content .section-title {
      margin-bottom: 12px;
    }

    .office-management-list .modal-content .section-title h2 {
      font-size: 1rem;
    }

    .office-management-list .modal-content .section-title p {
      font-size: .78rem;
      line-height: 1.4;
    }

    .office-management-list .modal-content .admin-form {
      gap: 13px;
    }

    .office-management-list .form-label {
      color: var(--ink);
      font-family: inherit;
      font-size: .8rem;
      font-weight: 550;
      line-height: 1.25;
      margin-bottom: 6px;
    }

    .office-management-list .form-control,
    .office-management-list .form-select,
    .office-management-list textarea.form-control {
      font-family: inherit;
      font-size: .86rem;
      font-weight: 600;
      line-height: 1.4;
      min-height: 40px;
      padding-bottom: .4rem;
      padding-top: .4rem;
    }

    .office-management-list .form-control::placeholder,
    .office-management-list textarea.form-control::placeholder,
    .office-management-list .form-select option {
      font-family: inherit;
      font-size: .86rem;
      font-weight: 500;
    }

    .office-management-list .form-text,
    .office-management-list .form-check-label {
      font-family: inherit;
      font-size: .8rem;
      font-weight: 650;
      line-height: 1.45;
    }

    .office-management-list .btn {
      font-family: inherit;
      font-size: .84rem;
      font-weight: 750;
    }

    .office-management-list .admin-form .btn:not(.btn-sm) {
      min-height: 38px;
      padding: 0 13px;
    }

    .office-management-list .budget-items {
      gap: 8px;
      padding: 10px;
    }

    .product-filter {
      align-items: end;
      background: color-mix(in srgb, var(--field) 78%, transparent);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: grid;
      gap: 10px;
      grid-template-columns: minmax(240px, 1fr) minmax(160px, .5fr) minmax(130px, .35fr) auto;
      padding: 12px;
    }

    .product-filter .form-label {
      color: var(--ink);
      font-size: .76rem;
      font-weight: 550;
      margin-bottom: 5px;
    }

    .product-filter.is-admin {
      grid-template-columns: minmax(220px, 1fr) minmax(145px, .5fr) minmax(120px, .35fr) minmax(145px, .5fr) auto;
    }

    .product-filter .form-control,
    .product-filter .form-select,
    .product-filter .btn {
      font-size: .86rem;
      min-height: 40px;
    }

    .product-filter .filter-actions {
      align-items: center;
      display: flex;
      gap: 8px;
    }

    .product-filter .filter-actions .btn {
      align-items: center;
      display: inline-flex;
      gap: 7px;
      justify-content: center;
      min-width: 102px;
      white-space: nowrap;
    }

    .product-filter .filter-actions .filter-clear {
      flex: 0 0 40px;
      min-width: 40px;
      padding-left: 0;
      padding-right: 0;
      width: 40px;
    }

    .product-filter.service-filter {
      grid-template-columns: minmax(280px, 1fr) minmax(220px, .48fr) auto;
    }

    .product-filter.service-filter:not(.is-admin) {
      grid-template-columns: minmax(280px, 1fr) auto;
    }

    .product-form-tabs {
      border-bottom-color: var(--line);
      gap: 4px;
    }

    .product-form-tabs .nav-link {
      align-items: center;
      border-radius: 7px 7px 0 0;
      color: var(--muted);
      display: inline-flex;
      font-size: .82rem;
      font-weight: 800;
      gap: 7px;
      min-height: 38px;
      padding: 7px 12px;
    }

    .product-form-tabs .nav-link.active {
      background: var(--panel);
      border-color: var(--line) var(--line) var(--panel);
      color: var(--brand);
    }

    .product-form-tabs .status-pill {
      padding: 2px 6px;
    }

    .product-main-layout {
      display: grid;
      gap: 14px;
      grid-template-columns: minmax(0, 1fr) 132px;
      padding-top: 12px;
    }

    .product-fields {
      display: grid;
      gap: 10px 12px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-field-full {
      grid-column: 1 / -1;
    }

    .product-toggle-row {
      align-items: center;
      background: var(--soft);
      border: 1px solid var(--line);
      border-radius: 8px;
      display: flex;
      flex-wrap: wrap;
      gap: 22px;
      min-height: 44px;
      padding: 9px 12px;
    }

    .product-toggle-row .form-check {
      margin: 0;
    }

    .product-photo-field {
      align-self: start;
      display: grid;
      gap: 8px;
    }

    .product-photo-preview {
      align-items: center;
      aspect-ratio: 1;
      background: var(--soft);
      border: 1px dashed var(--line);
      border-radius: 8px;
      color: var(--muted);
      display: flex;
      flex-direction: column;
      font-size: .72rem;
      font-weight: 750;
      gap: 6px;
      justify-content: center;
      overflow: hidden;
      width: 100%;
    }

    .product-photo-preview i {
      color: var(--brand);
      font-size: 1.8rem;
    }

    .product-photo-preview img {
      height: 100%;
      object-fit: cover;
      width: 100%;
    }

    .product-price-head {
      align-items: center;
      display: flex;
      gap: 14px;
      justify-content: space-between;
      padding: 15px 0 10px;
    }

    .product-price-head strong,
    .product-price-head small {
      display: block;
    }

    .product-price-head strong {
      font-size: .9rem;
      font-weight: 900;
    }

    .product-price-head small {
      color: var(--muted);
      font-size: .75rem;
      font-weight: 650;
      margin-top: 2px;
    }

    .product-price-list {
      display: grid;
      gap: 9px;
    }

    .product-price-row {
      align-items: end;
      background: var(--soft);
      border: 1px solid var(--line);
      border-radius: 8px;
      display: grid;
      gap: 8px;
      grid-template-columns: minmax(90px, .35fr) minmax(90px, .35fr) minmax(180px, 1fr) minmax(140px, .65fr) auto 38px;
      padding: 10px;
    }

    .product-price-active {
      align-self: center;
      margin: 18px 0 0;
    }

    .product-price-remove {
      height: 38px;
      padding: 0;
      width: 38px;
    }

    .product-form-actions {
      background: var(--panel);
      border-top: 1px solid var(--line);
      bottom: 0;
      display: flex;
      gap: 9px;
      justify-content: flex-end;
      padding: 12px 0 2px;
      position: sticky;
      z-index: 4;
    }

    .product-catalog-dialog {
      max-width: 760px;
    }

    .product-catalog-dialog .modal-content {
      background: var(--panel);
      color: var(--ink);
      max-height: calc(100vh - 32px);
    }

    .product-catalog-dialog .modal-content > section {
      padding: 18px 20px;
    }

    .catalog-company-select {
      background: var(--soft);
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 10px;
    }

    .catalog-company-select .form-label {
      font-size: .78rem;
      font-weight: 550;
      margin-bottom: 5px;
    }

    .product-catalog-content {
      padding-top: 12px;
    }

    .catalog-inline-form {
      align-items: end;
      display: grid;
      gap: 8px;
      grid-template-columns: minmax(0, 1fr) auto auto;
      margin-bottom: 12px;
    }

    .catalog-inline-form .form-label {
      font-size: .78rem;
      font-weight: 550;
      margin-bottom: 5px;
    }

    .catalog-inline-form .form-control,
    .catalog-inline-form .btn,
    .catalog-company-select .form-select,
    .catalog-company-select .btn {
      font-size: .84rem;
      min-height: 40px;
    }

    .catalog-item-list {
      border: 1px solid var(--line);
      border-radius: 8px;
      overflow: hidden;
    }

    .catalog-item-row {
      align-items: center;
      display: grid;
      gap: 9px;
      grid-template-columns: 32px minmax(0, 1fr) auto 36px 36px;
      min-height: 52px;
      padding: 7px 9px;
    }

    .catalog-item-row + .catalog-item-row {
      border-top: 1px solid var(--line);
    }

    .catalog-item-icon {
      align-items: center;
      background: var(--brand-soft);
      border-radius: 7px;
      color: var(--brand);
      display: flex;
      height: 30px;
      justify-content: center;
      width: 30px;
    }

    .catalog-item-row strong,
    .catalog-item-row small {
      display: block;
    }

    .catalog-item-row strong {
      color: var(--ink);
      font-size: .82rem;
      font-weight: 550;
    }

    .catalog-item-row small {
      color: var(--muted);
      font-size: .7rem;
      font-weight: 650;
      margin-top: 2px;
    }

    .catalog-item-row form {
      margin: 0;
    }

    .catalog-item-row .btn {
      height: 34px;
      padding: 0;
      width: 34px;
    }

    .catalog-empty {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 700;
      padding: 22px;
      text-align: center;
    }

    .product-table-name {
      align-items: center;
      display: grid;
      gap: 10px;
      grid-template-columns: 42px minmax(0, 1fr);
      min-width: 230px;
    }

    .product-table-name > img,
    .product-table-name > span {
      align-items: center;
      background: var(--brand-soft);
      border: 1px solid var(--line);
      border-radius: 8px;
      color: var(--brand);
      display: flex;
      height: 40px;
      justify-content: center;
      object-fit: cover;
      width: 40px;
    }

    .product-table-name strong,
    .product-table-name small {
      display: block;
    }

    .product-table-name small {
      color: var(--muted);
      font-size: .72rem;
      font-weight: 650;
      margin-top: 2px;
    }

    .office-management-list .input-group-text {
      background: var(--soft);
      border-color: var(--line);
      color: var(--muted);
      font-size: .8rem;
      font-weight: 800;
    }

    @media (max-width: 991.98px) {
      .office-management-list .office-budget-dialog {
        max-width: none;
      }

      .office-management-list .office-budget-dialog .modal-content {
        max-height: 100vh;
      }

      .product-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .product-filter.service-filter,
      .product-filter.service-filter:not(.is-admin) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .product-filter.service-filter .filter-actions {
        grid-column: 1 / -1;
        justify-content: flex-end;
      }

      .product-price-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .product-price-row > div:nth-of-type(3),
      .product-price-row > div:nth-of-type(4) {
        grid-column: span 1;
      }
    }

    @media (max-width: 575.98px) {
      .office-management-list .office-client-dialog,
      .office-management-list .office-vehicle-dialog,
      .office-management-list .office-product-dialog {
        margin-left: 8px;
        margin-right: 8px;
        max-width: calc(100% - 16px);
      }

      .office-management-list .modal-content > section {
        padding: 15px !important;
      }

      .product-filter,
      .product-filter.service-filter,
      .product-filter.service-filter:not(.is-admin),
      .product-fields,
      .product-price-row {
        grid-template-columns: 1fr;
      }

      .product-filter .filter-actions,
      .product-filter.service-filter .filter-actions {
        grid-column: auto;
        justify-content: stretch;
      }

      .product-filter .filter-actions .btn:not(.filter-clear) {
        flex: 1 1 auto;
      }

      .product-main-layout {
        grid-template-columns: 1fr;
      }

      .product-photo-field {
        grid-template-columns: 110px minmax(0, 1fr);
      }

      .product-photo-field > .form-label,
      .product-photo-field > .form-text {
        grid-column: 1 / -1;
      }

      .product-photo-field .btn {
        align-self: center;
      }

      .product-price-head {
        align-items: stretch;
        flex-direction: column;
      }

      .product-price-row > div:nth-of-type(3),
      .product-price-row > div:nth-of-type(4) {
        grid-column: auto;
      }

      .product-price-active {
        margin-top: 0;
      }

      .product-form-actions {
        display: grid;
        grid-template-columns: 1fr;
      }

      .product-catalog-dialog {
        margin: 8px;
        max-width: calc(100% - 16px);
      }

      .product-catalog-dialog .modal-content {
        max-height: calc(100vh - 16px);
      }

      .catalog-inline-form {
        grid-template-columns: 1fr auto;
      }

      .catalog-inline-form > div {
        grid-column: 1 / -1;
      }

      .catalog-item-row {
        grid-template-columns: 30px minmax(0, 1fr) 34px 34px;
      }

      .catalog-item-row .status-pill {
        display: none;
      }
    }

    .config-grid {
      display: grid;
      gap: 18px;
    }

    .config-subnav {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 16px;
    }

    .config-subnav a {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      min-height: 38px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--panel);
      color: var(--ink);
      font-size: .86rem;
      font-weight: 550;
      padding: 0 12px;
      text-decoration: none;
    }

    .config-subnav a:hover {
      background: var(--brand-soft);
      border-color: var(--brand);
      color: var(--brand);
    }

    .config-subnav a.active {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-color: transparent;
      color: #fff;
      box-shadow: 0 10px 24px rgba(37, 99, 235, .18);
    }

    .menu-config-preview {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 10px;
    }

    .menu-config-group {
      cursor: grab;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--soft);
      padding: 12px;
      transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, opacity .18s ease;
    }

    .menu-config-group:hover {
      border-color: var(--brand);
      box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
      transform: translateY(-1px);
    }

    .menu-config-group.dragging {
      cursor: grabbing;
      opacity: .62;
      border-color: var(--brand);
      box-shadow: 0 16px 34px rgba(31, 122, 255, .18);
    }

    .menu-config-group strong,
    .menu-config-group span {
      display: block;
    }

    .menu-config-group strong {
      display: flex;
      align-items: center;
      gap: 8px;
      color: var(--ink);
      font-size: .9rem;
      font-weight: 900;
      margin-bottom: 4px;
    }

    .menu-config-group strong > i {
      color: var(--muted);
      cursor: grab;
      font-size: 1rem;
      margin-right: 0;
    }

    .menu-config-group strong span {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      margin: 0;
    }

    .menu-config-group strong span i {
      color: var(--brand);
    }

    .menu-config-group span {
      color: var(--muted);
      font-size: .8rem;
      font-weight: 700;
    }

    .menu-config-fields {
      display: grid;
      gap: 12px;
      margin-top: 12px;
    }

    .menu-config-items {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      border-top: 1px solid var(--line);
      padding-top: 12px;
    }

    .menu-config-items .form-label {
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

    .appearance-hub-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
      margin-bottom: 16px;
    }

    .appearance-hub-card {
      display: grid;
      grid-template-columns: 40px minmax(0, 1fr);
      column-gap: 10px;
      row-gap: 2px;
      align-items: center;
      min-height: 92px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--panel);
      color: var(--ink);
      padding: 12px;
      text-decoration: none;
      box-shadow: 0 12px 28px rgba(15, 23, 42, .05);
      transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
    }

    .appearance-hub-card:hover {
      color: var(--ink);
      border-color: var(--brand);
      box-shadow: 0 16px 34px rgba(31, 122, 255, .13);
      transform: translateY(-1px);
    }

    .appearance-hub-card > span {
      width: 40px;
      height: 40px;
      display: grid;
      place-items: center;
      grid-row: 1 / 3;
      border-radius: 8px;
      color: #fff;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
    }

    .appearance-hub-card strong,
    .appearance-hub-card small {
      display: block;
      min-width: 0;
    }

    .appearance-hub-card strong {
      font-size: .9rem;
      font-weight: 900;
    }

    .appearance-hub-card small {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 700;
      line-height: 1.35;
    }

    .settings-preview {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 8px;
      box-shadow: var(--shadow);
      padding: 18px;
      position: sticky;
      top: 96px;
    }

    .settings-logo-preview {
      width: 72px;
      height: 72px;
      border-radius: 12px;
      display: grid;
      place-items: center;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      font-size: 1.6rem;
      overflow: hidden;
      margin-bottom: 14px;
    }

    .settings-logo-preview img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .form-help {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 600;
      margin-top: 6px;
    }

    .flash-message {
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 12px 14px;
      font-weight: 800;
      margin-bottom: 16px;
    }

    .flash-message.success {
      background: var(--chip-success);
      color: var(--ok);
    }

    .flash-message.danger {
      background: var(--chip-danger);
      color: var(--danger);
    }

    .admin-table {
      --bs-table-bg: transparent;
      --bs-table-color: var(--ink);
      --bs-table-border-color: var(--line);
      margin-bottom: 0;
    }

    .admin-table th {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 900;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .admin-table td {
      color: var(--ink);
      font-size: .9rem;
      font-weight: 700;
      vertical-align: middle;
    }

    .table-actions {
      display: flex;
      justify-content: flex-end;
      gap: 6px;
    }

    .table-value {
      align-items: center;
      border-radius: 7px;
      display: inline-flex;
      font-size: .82rem;
      font-weight: 900;
      gap: 6px;
      line-height: 1;
      padding: 7px 9px;
      white-space: nowrap;
    }

    .table-value-cost {
      background: color-mix(in srgb, #ef4444 11%, transparent);
      color: #c62828;
    }

    .table-value-sale {
      background: color-mix(in srgb, #22c55e 12%, transparent);
      color: #16843d;
    }

    .table-value-duration {
      background: color-mix(in srgb, #3b82f6 11%, transparent);
      color: #2563eb;
    }

    [data-theme="dark"] .table-value-cost { color: #fb7185; }
    [data-theme="dark"] .table-value-sale { color: #4ade80; }
    [data-theme="dark"] .table-value-duration { color: #60a5fa; }

    .table-actions form {
      margin: 0;
    }

    .subscription-plan-switch {
      align-items: center;
      display: inline-flex;
      gap: 6px;
      min-width: 210px;
    }

    .subscription-plan-switch .form-select {
      border-radius: 8px;
      font-size: .78rem;
      font-weight: 800;
      min-height: 32px;
      min-width: 150px;
      padding-bottom: 4px;
      padding-top: 4px;
    }

    .table-actions [data-long-action-form] .btn {
      align-items: center;
      display: inline-flex;
      gap: 6px;
      justify-content: center;
      min-width: 74px;
    }

    .table-actions [data-long-action-form] .btn.is-loading {
      min-width: 118px;
      opacity: .9;
    }

    .working-notice {
      position: fixed;
      right: 22px;
      bottom: 22px;
      z-index: 1100;
      display: flex;
      align-items: center;
      gap: 10px;
      max-width: min(360px, calc(100vw - 32px));
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--panel);
      box-shadow: var(--shadow);
      color: var(--ink);
      font-size: .9rem;
      font-weight: 800;
      opacity: 0;
      padding: 12px 14px;
      pointer-events: none;
      transform: translateY(12px);
      transition: opacity .2s ease, transform .2s ease;
    }

    .working-notice.show {
      opacity: 1;
      transform: translateY(0);
    }

    .import-status-group,
    .import-review-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      flex-wrap: wrap;
      gap: 8px;
    }

    .import-review-toolbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      padding: 12px;
      margin-bottom: 12px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
    }

    .import-review-table .select-col {
      width: 42px;
      text-align: center;
    }

    .review-muted-row {
      opacity: .72;
    }

    .review-muted-row td {
      font-weight: 650;
    }

    .suggestion-edit-row td {
      background: var(--field);
      border-top: 0;
    }

    .suggestion-edit-form {
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 12px;
      background: var(--panel);
    }

    .suggestion-edit-form .form-label {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 900;
      margin-bottom: 4px;
      text-transform: uppercase;
    }

    .model-picker {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .parameter-list {
      display: grid;
      gap: 14px;
    }

    .parameter-group {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      overflow: hidden;
    }

    .parameter-group-title {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 12px 14px;
      border-bottom: 1px solid var(--line);
      color: var(--ink);
    }

    .parameter-group-title i {
      color: var(--brand);
    }

    .parameter-group-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1px;
      background: var(--line);
    }

    .parameter-item {
      display: grid;
      gap: 5px;
      min-width: 0;
      padding: 12px;
      background: var(--panel);
    }

    .parameter-item span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .parameter-item strong {
      color: var(--ink);
      font-size: .98rem;
      font-weight: 900;
      overflow-wrap: anywhere;
    }

    .parameter-item small {
      color: var(--muted);
      font-weight: 650;
    }

    .brand-list {
      display: grid;
      gap: 8px;
      max-height: 360px;
      overflow: auto;
      padding-right: 2px;
    }

    .brand-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      padding: 9px 10px;
    }

    .brand-item form {
      margin: 0;
    }

    .permission-collapse {
      display: grid;
      gap: 10px;
    }

    .permission-collapse-toggle {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 8px;
      color: var(--ink);
      display: flex;
      justify-content: space-between;
      padding: 12px 14px;
      text-align: left;
      width: 100%;
    }

    .permission-collapse-toggle > span {
      align-items: center;
      display: flex;
      gap: 10px;
      min-width: 0;
    }

    .permission-collapse-toggle strong,
    .permission-collapse-toggle small {
      display: block;
      line-height: 1.1;
    }

    .permission-collapse-toggle strong {
      font-size: .94rem;
      font-weight: 900;
    }

    .permission-collapse-toggle small {
      color: var(--muted);
      font-size: .75rem;
      font-weight: 800;
      margin-top: 3px;
    }

    .permission-collapse-toggle i:last-child {
      transition: transform .2s ease;
    }

    .permission-collapse-toggle:not(.collapsed) i:last-child {
      transform: rotate(180deg);
    }

    .permission-collapse .collapse,
    .permission-collapse .collapsing {
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 10px;
    }

    .permission-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .permission-option {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      cursor: pointer;
      padding: 10px;
    }

    .permission-option.admin-only {
      background: linear-gradient(180deg, var(--brand-soft), var(--field));
    }

    .permission-option:has(input:disabled) {
      cursor: not-allowed;
      opacity: .58;
    }

    .permission-option strong,
    .permission-option small {
      display: block;
    }

    .permission-option strong {
      color: var(--ink);
      font-size: .88rem;
      font-weight: 900;
    }

    .permission-option small {
      color: var(--muted);
      font-size: .74rem;
      font-weight: 700;
      margin-top: 2px;
    }

    .company-user-option {
      align-items: center;
      display: grid;
      grid-template-columns: auto 36px minmax(0, 1fr);
    }

    .company-user-option:has(input:checked) {
      background: var(--brand-soft);
      border-color: color-mix(in srgb, var(--brand) 45%, var(--line));
    }

    .company-user-avatar {
      align-items: center;
      background: var(--brand);
      border-radius: 7px;
      color: #fff;
      display: flex;
      font-size: .8rem;
      font-weight: 900;
      height: 34px;
      justify-content: center;
      width: 34px;
    }

    .company-user-option em {
      color: var(--brand);
      display: block;
      font-size: .7rem;
      font-style: normal;
      font-weight: 800;
      margin-top: 3px;
    }

    .sale-workspace {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 8px;
      box-shadow: var(--shadow);
      padding: 22px;
    }

    .service-form-grid { display:grid;gap:10px 12px;grid-template-columns:repeat(2,minmax(0,1fr));padding-top:12px; }
    .service-field-full { grid-column:1/-1; }
    .service-price-row { align-items:end;background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;grid-template-columns:130px 130px minmax(180px,1fr) auto 36px;padding:10px; }
    .service-price-row .form-check { align-self:center;margin:18px 0 0; }
    .service-price-row .btn { height:36px;padding:0;width:36px; }

    #serviceFormModal .modal-dialog {
      max-width: 820px;
    }

    #serviceFormModal .modal-content {
      background: var(--panel);
      color: var(--ink);
      max-height: calc(100vh - 32px);
    }

    #serviceFormModal .modal-content > section {
      padding: 18px 20px;
    }

    @media (max-width: 767.98px) {
      .service-form-grid,.service-price-row { grid-template-columns:1fr; }
      .service-price-row .form-check { margin-top:0; }
      #serviceFormModal .modal-dialog {
        margin: 8px;
        max-width: calc(100% - 16px);
      }
      #serviceFormModal .modal-content {
        max-height: calc(100vh - 16px);
      }
      #serviceFormModal .modal-content > section {
        padding: 14px;
      }
    }

    .sale-workspace-head,
    .sale-customer-row,
    .sale-actions,
    .sale-payment-head {
      align-items: end;
      display: flex;
      gap: 12px;
      justify-content: space-between;
    }

    .sale-workspace-head { align-items: flex-start; margin-bottom: 16px; }
    .sale-workspace-head h1 { font-size: 1.65rem; margin: 8px 0 3px; }
    .sale-workspace-head p { color: var(--muted); margin: 0; }
    .sale-company-bar { background: var(--soft); border: 1px solid var(--line); border-radius: 8px; margin-bottom: 14px; padding: 10px; }
    .sale-company-bar > div,.sale-list-filter > div { display:flex;gap:8px; }
    .sale-customer-row > div { flex: 1; }
    .sale-items-table { border: 1px solid var(--line); border-radius: 8px; margin-top: 14px; overflow: hidden; }
    .sale-item-head,.sale-item-row { align-items:center;display:grid;gap:9px;grid-template-columns:minmax(180px,1fr) 90px 120px 110px 36px;padding:9px 11px; }
    .sale-item-head { background:var(--soft);color:var(--muted);font-size:.7rem;font-weight:550;text-transform:uppercase; }
    .sale-item-row + .sale-item-row { border-top:1px solid var(--line); }
    .sale-item-row .form-control { font-size:.82rem;min-height:36px; }
    .sale-item-row > strong:last-of-type { text-align:right; }
    .sale-empty { align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:4px;justify-content:center;min-height:130px;padding:20px;text-align:center; }
    .sale-empty i { color:var(--brand);font-size:1.5rem; }
    .sale-close-grid { display:grid;gap:14px;grid-template-columns:minmax(0,1fr) 320px;margin-top:14px; }
    .sale-payment,.sale-totals { background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:12px; }
    .sale-payment-head > div { flex:1; }
    .sale-totals { display:grid;gap:6px; }
    .sale-totals label,.sale-totals > div { align-items:center;display:flex;justify-content:space-between;margin:0; }
    .sale-totals label { color:var(--muted);font-size:.78rem;font-weight:750; }
    .sale-totals label span { align-items:center;border:1px solid var(--line);border-radius:6px;display:flex;overflow:hidden;width:130px; }
    .sale-totals label b { background:var(--field);padding:7px;font-size:.72rem; }
    .sale-totals input { background:var(--panel);border:0;color:var(--ink);min-width:0;padding:7px;width:100%; }
    .sale-totals > div { border-top:1px solid var(--line);font-size:1rem;font-weight:900;margin-top:4px;padding-top:10px; }
    .sale-totals > div strong { color:var(--brand);font-size:1.35rem; }
    .sale-actions { border-top:1px solid var(--line);justify-content:flex-end;margin-top:15px;padding-top:14px; }
    .sale-list-filter { background:var(--soft);border:1px solid var(--line);border-radius:8px;margin-bottom:14px;padding:10px; }
    .sale-item-dialog { max-width:760px; }
    .sale-picker-tabs { border-bottom:1px solid var(--line);display:flex;gap:5px;margin-bottom:10px; }
    .sale-picker-tabs button { background:transparent;border:0;border-bottom:2px solid transparent;color:var(--muted);font-size:.82rem;font-weight:550;padding:8px 12px; }
    .sale-picker-tabs button.active { border-bottom-color:var(--brand);color:var(--brand); }
    .sale-picker-list { border:1px solid var(--line);border-radius:8px;max-height:390px;overflow:auto; }
    .sale-picker-item { align-items:center;background:transparent;border:0;color:var(--ink);display:flex;gap:10px;justify-content:space-between;padding:10px 12px;text-align:left;width:100%; }
    .sale-picker-item + .sale-picker-item { border-top:1px solid var(--line); }
    .sale-picker-item:hover { background:var(--brand-soft); }
    .sale-picker-item strong,.sale-picker-item small,.sale-picker-item em { display:block; }
    .sale-picker-item strong { font-size:.84rem; }
    .sale-picker-item small { color:var(--muted);font-size:.7rem;margin-top:2px; }
    .sale-picker-item em { color:var(--brand);font-style:normal;font-weight:900;text-align:right; }
    .sale-variant-head { align-items:center;display:flex;gap:12px;margin-bottom:12px; }
    .sale-variant-head > div { min-width:0; }
    .sale-variant-head strong,.sale-variant-head small { display:block; }
    .sale-variant-head strong { color:var(--ink);font-size:.9rem;font-weight:900; }
    .sale-variant-head small { color:var(--muted);font-size:.72rem;margin-top:2px; }
    .sale-service-form { display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 180px auto; }
    .sale-cash-panel { background:color-mix(in srgb,#22c55e 9%,var(--panel));border:1px solid color-mix(in srgb,#22c55e 28%,var(--line));border-radius:8px;margin:10px 0;padding:11px; }
    .sale-cash-panel > div:last-child { align-items:center;color:var(--muted);display:flex;font-size:.78rem;font-weight:750;justify-content:space-between;margin-top:8px; }
    .sale-cash-panel > div:last-child strong { color:#16843d;font-size:1rem; }
    [data-theme="dark"] .sale-cash-panel > div:last-child strong { color:#4ade80; }
    .sale-summary-cell strong,.sale-summary-cell small { display:block; }
    .sale-summary-cell strong { color:var(--ink);font-size:.84rem;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
    .sale-summary-cell small { color:var(--muted);font-size:.7rem;margin-top:4px; }
    .sale-payment-badge,.sale-total-badge { align-items:center;border-radius:7px;display:inline-flex;font-size:.76rem;font-weight:900;gap:6px;padding:7px 9px;white-space:nowrap; }
    .sale-payment-badge.payment-pix { background:color-mix(in srgb,#14b8a6 12%,transparent);color:#0f766e; }
    .sale-payment-badge.payment-cash { background:color-mix(in srgb,#22c55e 12%,transparent);color:#15803d; }
    .sale-payment-badge.payment-card { background:color-mix(in srgb,#3b82f6 12%,transparent);color:#2563eb; }
    .sale-payment-badge.payment-other { background:var(--soft);color:var(--muted); }
    .sale-total-badge { background:color-mix(in srgb,#22c55e 12%,transparent);color:#16843d;font-size:.84rem; }
    [data-theme="dark"] .sale-payment-badge.payment-pix { color:#2dd4bf; }
    [data-theme="dark"] .sale-payment-badge.payment-cash,[data-theme="dark"] .sale-total-badge { color:#4ade80; }
    [data-theme="dark"] .sale-payment-badge.payment-card { color:#60a5fa; }
    .table-action-dropdown { display:flex;justify-content:flex-end; }
    .table-action-dropdown .dropdown-item { align-items:center;display:flex;font-size:.78rem;font-weight:750;gap:8px; }
    .sale-details-dialog { max-width:680px; }
    .sale-delete-dialog { max-width:480px; }
    .sale-detail-meta { display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px; }
    .sale-detail-meta > div { background:var(--soft);border:1px solid var(--line);border-radius:7px;padding:9px; }
    .sale-detail-meta span,.sale-detail-meta strong { display:block; }
    .sale-detail-meta span { color:var(--muted);font-size:.64rem;font-weight:550;text-transform:uppercase; }
    .sale-detail-meta strong { color:var(--ink);font-size:.78rem;margin-top:3px; }
    .sale-detail-items { border:1px solid var(--line);border-radius:8px;overflow:hidden; }
    .sale-detail-items > div { align-items:center;display:flex;gap:10px;justify-content:space-between;padding:10px 12px; }
    .sale-detail-items > div + div { border-top:1px solid var(--line); }
    .sale-detail-items strong,.sale-detail-items small { display:block; }
    .sale-detail-items strong { color:var(--ink);font-size:.8rem; }
    .sale-detail-items small { color:var(--muted);font-size:.68rem;margin-top:2px; }
    .sale-detail-items b { color:var(--brand);font-size:.8rem;white-space:nowrap; }
    .sale-detail-totals { margin-left:auto;margin-top:12px;max-width:310px; }
    .sale-detail-totals > div { align-items:center;color:var(--muted);display:flex;font-size:.75rem;justify-content:space-between;padding:4px; }
    .sale-detail-totals .total { border-top:1px solid var(--line);color:var(--ink);font-size:.9rem;font-weight:900;margin-top:4px;padding-top:8px; }
    .sale-detail-notes { background:var(--soft);border-radius:7px;color:var(--muted);font-size:.74rem;margin:12px 0 0;padding:9px; }
    .payment-method-dialog { max-width:650px; }
    .payment-method-form { align-items:center;display:grid;gap:8px;grid-template-columns:1fr 160px auto auto auto;margin-bottom:12px; }
    .payment-method-list { border:1px solid var(--line);border-radius:8px;overflow:hidden; }
    .payment-method-list > div { align-items:center;display:flex;justify-content:space-between;padding:9px 11px; }
    .payment-method-list > div + div { border-top:1px solid var(--line); }
    .payment-method-list strong,.payment-method-list small { display:block; }
    .payment-method-list small { color:var(--muted);font-size:.7rem; }

    @media (max-width: 767.98px) {
      .sale-workspace { padding:15px; }
      .sale-workspace-head,.sale-customer-row { align-items:stretch;flex-direction:column; }
      .sale-customer-row .btn { width:100%; }
      .sale-item-head { display:none; }
      .sale-item-row { grid-template-columns:1fr 1fr;padding:11px; }
      .sale-item-row > strong:first-of-type { grid-column:1/-1; }
      .sale-item-row > strong:last-of-type { align-self:center;grid-column:1;text-align:left; }
      .sale-item-row > button:last-child { grid-column:2;justify-self:end;width:38px; }
      .sale-close-grid { grid-template-columns:1fr; }
      .sale-service-form,.payment-method-form { grid-template-columns:1fr; }
      .sale-actions { display:grid;grid-template-columns:1fr; }
      .sale-item-dialog,.payment-method-dialog { margin:8px;max-width:calc(100% - 16px); }
      .sale-details-dialog,.sale-delete-dialog { margin:8px;max-width:calc(100% - 16px); }
      .sale-detail-meta { grid-template-columns:1fr; }
      .sale-summary-cell strong { max-width:220px; }
    }

    .record-modal-dialog {
      max-width: 900px;
    }

    .company-record-dialog {
      max-width: 860px;
    }

    .record-modal .modal-content {
      background: var(--panel);
      color: var(--ink);
      max-height: calc(100vh - 32px);
    }

    .record-modal .settings-grid {
      display: block;
    }

    .record-modal .settings-preview {
      display: none;
    }

    .record-modal .section-title {
      margin-bottom: 14px;
    }

    .record-modal .section-title h2 {
      font-size: 1.05rem;
    }

    .record-modal .section-title p {
      font-size: .78rem;
      line-height: 1.4;
      margin-top: 2px;
    }

    .record-modal .admin-form {
      gap: 12px;
    }

    .record-modal .row {
      --bs-gutter-x: 12px;
      --bs-gutter-y: 10px;
    }

    .record-modal .form-label {
      font-size: .78rem;
      font-weight: 550;
      margin-bottom: 5px;
    }

    .record-modal .form-control,
    .record-modal .form-select,
    .record-modal .form-control-lg,
    .record-modal .form-select-lg {
      font-size: .86rem;
      min-height: 40px;
      padding-bottom: .4rem;
      padding-top: .4rem;
    }

    .record-modal textarea.form-control {
      min-height: 72px;
    }

    .management-actions .dropdown-toggle {
      align-items: center;
      display: inline-flex;
      gap: 5px;
      justify-content: center;
      min-width: 92px;
    }

    .management-actions .dropdown-menu {
      background: var(--panel);
      border-color: var(--line);
      box-shadow: var(--shadow);
      min-width: 210px;
      padding: 6px;
      z-index: 1060;
    }

    .management-actions .dropdown-item {
      align-items: center;
      border-radius: 6px;
      color: var(--ink);
      display: flex;
      font-size: .8rem;
      font-weight: 750;
      gap: 9px;
      min-height: 36px;
      width: 100%;
    }

    .management-actions .dropdown-item:hover,
    .management-actions .dropdown-item:focus {
      background: var(--brand-soft);
      color: var(--brand);
    }

    .management-actions form {
      margin: 0;
    }

    @media (max-width: 575.98px) {
      .record-modal-dialog {
        margin: 8px;
        max-width: calc(100% - 16px);
      }

      .record-modal .modal-content {
        max-height: calc(100vh - 16px);
      }
    }

    .permission-summary {
      display: flex;
      flex-wrap: wrap;
      gap: 5px;
      max-width: 320px;
    }

    .permission-summary span {
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--chip);
      color: var(--muted);
      font-size: .72rem;
      font-weight: 800;
      padding: 3px 7px;
    }

    .favorite-grid {
      display: grid;
      gap: 12px;
    }

    .favorite-card {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      border: 1px solid var(--line);
      border-left: 4px solid #eab308;
      border-radius: 8px;
      background: var(--field);
      padding: 14px;
    }

    .favorite-head {
      display: flex;
      align-items: center;
      gap: 9px;
      color: var(--ink);
      font-weight: 900;
    }

    .favorite-head i {
      color: #eab308;
    }

    .favorite-meta,
    .favorite-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .favorite-meta {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 800;
      margin-top: 8px;
    }

    .favorite-actions {
      justify-content: flex-end;
    }

    .favorite-actions .btn {
      align-items: center;
      display: inline-flex;
      justify-content: center;
      min-height: 32px;
      min-width: 112px;
    }

    .favorite-actions form {
      margin: 0;
    }

    .dashboard-hero {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 18px;
      border-radius: 18px;
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      color: #fff;
      padding: 28px;
      box-shadow: 0 18px 45px rgba(31, 122, 255, .22);
    }

    .dashboard-hero h1 {
      margin: 12px 0 6px;
      font-size: clamp(1.55rem, 2.4vw, 2.25rem);
      font-weight: 900;
    }

    .dashboard-hero p {
      color: rgba(255, 255, 255, .82);
      font-weight: 650;
      margin: 0;
    }

    .dashboard-hero-actions,
    .dashboard-metrics,
    .dashboard-grid {
      display: grid;
      gap: 14px;
    }

    .dashboard-hero-actions {
      grid-template-columns: repeat(3, max-content);
      align-items: center;
    }

    .dashboard-hero-actions form {
      margin: 0;
    }

    .dashboard-metrics {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .subscription-stats {
      display: grid;
      gap: 14px;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      margin-top: 18px;
    }

    .subscription-stat {
      align-items: center;
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--panel-strong) 92%, transparent), var(--panel)),
        var(--panel);
      border: 1px solid var(--line);
      border-left: 5px solid var(--brand);
      border-radius: 14px;
      box-shadow: 0 16px 36px rgba(15, 23, 42, .08);
      display: flex;
      gap: 14px;
      min-height: 118px;
      overflow: hidden;
      padding: 18px;
      position: relative;
    }

    .subscription-stat::after {
      background: currentColor;
      border-radius: 999px;
      content: "";
      height: 84px;
      opacity: .08;
      position: absolute;
      right: -28px;
      top: -30px;
      width: 84px;
    }

    .subscription-stat.accent-ok {
      border-left-color: var(--ok);
      color: var(--ok);
    }

    .subscription-stat.accent-review {
      border-left-color: var(--warning);
      color: var(--warning);
    }

    .subscription-stat.accent-danger {
      border-left-color: var(--danger);
      color: var(--danger);
    }

    .subscription-stat.accent-brand {
      border-left-color: var(--brand);
      color: var(--brand);
    }

    .subscription-stat-icon {
      align-items: center;
      background: color-mix(in srgb, currentColor 14%, transparent);
      border: 1px solid color-mix(in srgb, currentColor 28%, transparent);
      border-radius: 12px;
      display: inline-flex;
      flex: 0 0 46px;
      height: 46px;
      justify-content: center;
      width: 46px;
    }

    .subscription-stat-icon i {
      font-size: 1.25rem;
    }

    .subscription-stat div {
      display: grid;
      gap: 2px;
      min-width: 0;
      position: relative;
      z-index: 1;
    }

    .subscription-stat small {
      color: var(--muted);
      font-size: .74rem;
      font-style: normal;
      font-weight: 900;
      letter-spacing: .02em;
      text-transform: uppercase;
    }

    .subscription-stat strong {
      color: var(--ink);
      font-size: clamp(1.35rem, 2vw, 1.85rem);
      font-weight: 900;
      line-height: 1.05;
      overflow-wrap: anywhere;
    }

    .subscription-stat em {
      color: var(--muted);
      font-size: .84rem;
      font-style: normal;
      font-weight: 750;
      line-height: 1.3;
    }

    .subscription-bulk-actions {
      align-items: center;
      background: color-mix(in srgb, var(--danger) 7%, var(--panel));
      border: 1px solid color-mix(in srgb, var(--danger) 25%, var(--line));
      border-radius: 14px;
      display: flex;
      gap: 14px;
      justify-content: space-between;
      margin-top: 14px;
      padding: 14px 16px;
    }

    .subscription-bulk-actions.success {
      background: color-mix(in srgb, var(--ok) 8%, var(--panel));
      border-color: color-mix(in srgb, var(--ok) 25%, var(--line));
    }

    .subscription-bulk-actions div {
      display: grid;
      gap: 3px;
    }

    .subscription-bulk-actions strong {
      color: var(--ink);
      font-size: .98rem;
      font-weight: 900;
    }

    .subscription-bulk-actions span {
      color: var(--muted);
      font-size: .86rem;
      font-weight: 750;
    }

    .subscription-bulk-actions form {
      margin: 0;
    }

    .company-usage-head {
      align-items: center;
      display: flex;
      gap: 8px;
      justify-content: space-between;
      margin-bottom: 5px;
      min-width: 118px;
    }

    .company-usage-head span {
      color: var(--ink);
      font-size: .86rem;
      font-weight: 900;
    }

    .company-usage-head small {
      color: var(--muted);
      font-size: .72rem;
      font-weight: 550;
    }

    .company-usage-bar {
      background: color-mix(in srgb, var(--muted) 12%, transparent);
      border-radius: 999px;
      height: 7px;
      margin: 0 0 7px;
      overflow: hidden;
      width: 100%;
    }

    .company-usage-bar span {
      background: var(--ok);
      border-radius: inherit;
      display: block;
      height: 100%;
      min-width: 7px;
    }

    .company-usage-bar.review span {
      background: #f59e0b;
    }

    .company-usage-bar.danger span {
      background: var(--danger);
    }

    .company-history {
      border-top: 1px solid var(--line);
      display: grid;
      gap: 10px;
      margin-top: 18px;
      padding-top: 16px;
    }

    .company-history-head {
      align-items: center;
      display: flex;
      gap: 10px;
      justify-content: space-between;
    }

    .company-history-head span {
      align-items: center;
      color: var(--ink);
      display: inline-flex;
      font-size: .92rem;
      font-weight: 900;
      gap: 7px;
    }

    .company-history-head small,
    .company-history-empty {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 800;
    }

    .company-history-item {
      align-items: flex-start;
      background: color-mix(in srgb, var(--field) 88%, transparent);
      border: 1px solid var(--line);
      border-radius: 12px;
      display: flex;
      gap: 9px;
      padding: 10px;
      position: relative;
    }

    .company-history-icon {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 12%, var(--panel));
      border-radius: 10px;
      color: var(--brand);
      display: inline-flex;
      flex: 0 0 32px;
      height: 32px;
      justify-content: center;
      width: 32px;
    }

    .company-history-item.ok .company-history-icon {
      background: color-mix(in srgb, var(--ok) 13%, var(--panel));
      color: var(--ok);
    }

    .company-history-item.review .company-history-icon {
      background: color-mix(in srgb, #f59e0b 14%, var(--panel));
      color: #b45309;
    }

    .company-history-item.danger .company-history-icon {
      background: color-mix(in srgb, var(--danger) 12%, var(--panel));
      color: var(--danger);
    }

    .company-history-item div {
      display: grid;
      gap: 3px;
      min-width: 0;
    }

    .company-history-item strong {
      color: var(--ink);
      font-size: .82rem;
      font-weight: 900;
      line-height: 1.25;
    }

    .company-history-item small,
    .company-history-item em {
      color: var(--muted);
      font-size: .74rem;
      font-style: normal;
      font-weight: 750;
      line-height: 1.25;
    }

    .dashboard-card {
      border: 1px solid var(--line);
      border-left: 5px solid var(--brand);
      border-radius: 8px;
      background: var(--panel);
      box-shadow: var(--shadow);
      padding: 18px;
    }

    .dashboard-card.accent-green {
      border-left-color: #10b981;
    }

    .dashboard-card.accent-yellow {
      border-left-color: #eab308;
    }

    .dashboard-card.accent-red {
      border-left-color: #ef4444;
    }

    .dashboard-card span,
    .dashboard-card strong,
    .dashboard-card small {
      display: block;
    }

    .dashboard-card span {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 550;
      margin-bottom: 10px;
    }

    .dashboard-card span i {
      color: var(--brand);
      margin-right: 6px;
    }

    .dashboard-card strong {
      color: var(--ink);
      font-size: clamp(1.45rem, 2vw, 2rem);
      font-weight: 900;
      line-height: 1.1;
      margin-bottom: 8px;
    }

    .dashboard-card.compact strong {
      font-size: 1.85rem;
    }

    .dashboard-card small {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 750;
      line-height: 1.35;
    }

    .dashboard-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-list {
      display: grid;
      gap: 10px;
    }

    .dashboard-list-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--field);
      padding: 12px;
    }

    .dashboard-list-item strong,
    .dashboard-list-item span {
      display: block;
    }

    .dashboard-list-item strong {
      color: var(--ink);
      font-size: .92rem;
      font-weight: 900;
    }

    .dashboard-list-item span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 700;
      margin-top: 3px;
    }

    .dashboard-list-item b {
      color: var(--ink);
      font-size: .92rem;
      white-space: nowrap;
    }

    .office-hero {
      align-items: center;
      background:
        radial-gradient(circle at 12% 12%, rgba(255, 255, 255, .20), transparent 28%),
        linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 22px;
      box-shadow: 0 18px 45px rgba(31, 122, 255, .22);
      color: #fff;
      display: grid;
      gap: 18px;
      grid-template-columns: minmax(0, 1fr) auto;
      padding: clamp(22px, 2.6vw, 36px);
    }

    .office-hero h1 {
      font-size: clamp(1.7rem, 3vw, 2.75rem);
      font-weight: 900;
      margin: 14px 0 8px;
    }

    .office-hero p {
      color: rgba(255, 255, 255, .86);
      font-weight: 700;
      line-height: 1.55;
      margin: 0;
      max-width: 760px;
    }

    .office-hero .vehicle-badge {
      background: rgba(255, 255, 255, .16);
      border-color: rgba(255, 255, 255, .26);
      color: #fff;
    }

    .office-hero-stack {
      align-items: center;
      background: rgba(255, 255, 255, .16);
      border: 1px solid rgba(255, 255, 255, .26);
      border-radius: 16px;
      display: grid;
      justify-items: center;
      min-width: 190px;
      padding: 20px;
      text-align: center;
    }

    .office-hero-stack strong {
      font-size: clamp(1.55rem, 2.4vw, 2.25rem);
      font-weight: 900;
      line-height: 1;
    }

    .office-hero-stack span {
      color: rgba(255, 255, 255, .86);
      font-size: .82rem;
      font-weight: 550;
      margin-top: 8px;
    }

    .office-stat-grid,
    .office-module-grid,
    .office-workspace-grid {
      display: grid;
      gap: 14px;
    }

    .office-stat-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .office-stat-card,
    .office-module-card {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 8px;
      box-shadow: var(--shadow);
    }

    .office-stat-card {
      align-items: center;
      display: grid;
      gap: 8px;
      grid-template-columns: 44px minmax(0, 1fr);
      padding: 16px;
    }

    .office-stat-card i,
    .office-module-card > span {
      align-items: center;
      background: var(--brand-soft);
      border-radius: 8px;
      color: var(--brand);
      display: inline-flex;
      height: 42px;
      justify-content: center;
      width: 42px;
    }

    .office-stat-card span,
    .office-stat-card strong {
      display: block;
    }

    .office-stat-card span {
      color: var(--muted);
      font-size: .78rem;
      font-weight: 550;
    }

    .office-stat-card strong {
      color: var(--ink);
      font-size: 1.05rem;
      font-weight: 900;
    }

    .office-module-grid {
      grid-template-columns: repeat(7, minmax(0, 1fr));
    }

    .office-module-card {
      color: var(--ink);
      display: grid;
      gap: 10px;
      min-height: 154px;
      padding: 16px;
      text-decoration: none;
      transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    }

    .office-module-card:hover {
      border-color: color-mix(in srgb, var(--brand) 42%, var(--line));
      box-shadow: 0 18px 42px color-mix(in srgb, var(--brand) 12%, transparent);
      color: var(--ink);
      transform: translateY(-2px);
    }

    .office-module-card strong {
      font-size: .96rem;
      font-weight: 900;
      line-height: 1.25;
    }

    .office-module-card small {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 750;
      line-height: 1.35;
    }

    .office-workspace-grid {
      align-items: stretch;
      grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
    }

    .office-action-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .office-action-row .btn {
      align-items: center;
      display: inline-flex;
      font-weight: 550;
      gap: 8px;
      min-height: 42px;
    }

    .office-step-list {
      display: grid;
      gap: 10px;
    }

    .office-step {
      align-items: flex-start;
      background: var(--soft);
      border: 1px solid var(--line);
      border-radius: 8px;
      display: grid;
      gap: 12px;
      grid-template-columns: 38px minmax(0, 1fr);
      padding: 12px;
    }

    .office-step b {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 8px;
      color: var(--brand);
      display: inline-flex;
      font-size: .78rem;
      font-weight: 900;
      height: 34px;
      justify-content: center;
      width: 34px;
    }

    .office-step strong,
    .office-step small {
      display: block;
    }

    .office-step strong {
      color: var(--ink);
      font-size: .9rem;
      font-weight: 900;
      margin-bottom: 3px;
    }

    .office-step small {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 750;
      line-height: 1.35;
    }

    .budget-layout {
      align-items: start;
      grid-template-columns: minmax(460px, .9fr) minmax(0, 1.1fr);
    }

    .budget-items {
      border: 1px solid var(--line);
      border-radius: 12px;
      display: grid;
      gap: 10px;
      padding: 12px;
    }

    .budget-item-head {
      align-items: center;
      display: flex;
      gap: 10px;
      justify-content: space-between;
    }

    .budget-item-head strong {
      color: var(--ink);
      font-weight: 900;
    }

    .budget-item-head small {
      color: var(--muted);
      font-size: .76rem;
      font-weight: 750;
    }

    .budget-item-row {
      display: grid;
      gap: 8px;
      grid-template-columns: 116px minmax(180px, 1fr) minmax(76px, .34fr) minmax(108px, .45fr) minmax(88px, .34fr);
    }

    .empty-state {
      border: 1px dashed var(--line);
      border-radius: 8px;
      color: var(--muted);
      font-weight: 800;
      padding: 14px;
      text-align: center;
    }

    .mobile-nav {
      display: none;
    }

    .mobile-menu-toggle {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 10px;
      color: var(--ink);
      display: none;
      flex: 0 0 40px;
      height: 40px;
      justify-content: center;
      transition: background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
      width: 40px;
    }

    .mobile-menu-toggle:hover {
      background: var(--brand-soft);
      color: var(--brand);
      transform: translateY(-1px);
    }

    .mobile-system-menu {
      background: var(--sidebar);
      color: var(--sidebar-ink);
      border-right: 1px solid var(--line);
      border-radius: 0 22px 22px 0;
      box-shadow: 28px 0 60px rgba(15, 23, 42, .22);
      max-width: 86vw;
      width: 306px;
    }

    .mobile-system-menu .offcanvas-header {
      align-items: center;
      border-bottom: 1px solid var(--line);
      gap: 12px;
      padding: 18px 16px 16px;
    }

    .mobile-system-menu .btn-close {
      background-color: var(--field);
      border: 1px solid var(--line);
      border-radius: 10px;
      box-shadow: none;
      margin: 0;
      opacity: 1;
      padding: 10px;
    }

    .mobile-system-menu .offcanvas-body {
      display: flex;
      flex-direction: column;
      gap: 14px;
      padding: 16px;
    }

    .mobile-system-menu .sidebar-brand-link {
      min-width: 0;
    }

    .mobile-system-menu .sidebar-menu {
      gap: 6px;
    }

    .mobile-system-menu .sidebar-group.open {
      background: color-mix(in srgb, var(--brand-soft) 52%, var(--panel));
      border-color: var(--line);
      padding: 4px;
    }

    .mobile-system-menu .sidebar-group-toggle,
    .mobile-system-menu .nav-link,
    .mobile-system-menu .sidebar-logout-link {
      color: var(--sidebar-ink);
      display: flex;
      gap: 10px;
      justify-content: flex-start;
      min-height: 42px;
      padding-left: 12px;
      padding-right: 12px;
      white-space: nowrap;
    }

    .mobile-system-menu .sidebar-group-toggle > span {
      gap: 10px;
      justify-content: flex-start;
      min-width: 0;
      width: auto;
    }

    .mobile-system-menu .sidebar-text {
      max-width: none;
      opacity: 1;
      overflow: hidden;
      pointer-events: auto;
      text-overflow: ellipsis;
      transform: none;
      width: auto;
    }

    .mobile-system-menu .sidebar-submenu {
      border-left: 1px solid color-mix(in srgb, var(--hero-start) 30%, var(--line));
      margin-left: 13px;
      padding-left: 10px;
    }

    .mobile-system-menu .sidebar-submenu .nav-link {
      gap: 6px;
      min-height: 31px;
      padding-left: 7px;
      padding-right: 7px;
    }

    @media (max-width: 991.98px) {
      .app-shell {
        display: block;
      }

      body.mobile-menu-open {
        overflow: hidden;
      }

      body.mobile-menu-open::before {
        background: rgba(7, 17, 31, .42);
        content: "";
        inset: 0;
        position: fixed;
        z-index: 49;
      }

      .appearance-layout {
        grid-template-columns: 1fr;
      }

      .appearance-hub-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .appearance-preview {
        position: static;
      }

      .dashboard-hero {
        align-items: flex-start;
        flex-direction: column;
      }

      .dashboard-hero-actions {
        grid-template-columns: 1fr;
        width: 100%;
      }

      .dashboard-metrics,
      .subscription-stats,
      .notification-dashboard-grid,
      .dashboard-grid,
      .office-stat-grid,
      .office-workspace-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .budget-layout {
        grid-template-columns: 1fr;
      }

      .budget-item-row {
        grid-template-columns: minmax(104px, .28fr) minmax(180px, 1fr) repeat(3, minmax(86px, .35fr));
      }

      .office-hero {
        grid-template-columns: 1fr;
      }

      .office-hero-stack {
        justify-items: start;
        min-width: 0;
      }

      .office-module-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .compact-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .login-shell {
        grid-template-columns: 1fr;
        min-height: auto;
      }

      .login-hero,
      .login-panel {
        padding: 34px;
      }

      .login-feature-list {
        margin-bottom: 0;
      }

      .sidebar {
        border-radius: 0 22px 22px 0;
        box-shadow: 28px 0 60px rgba(15, 23, 42, .24);
        display: block;
        height: 100dvh;
        left: -330px;
        max-width: 86vw;
        overflow-y: auto;
        padding: 18px 16px;
        position: fixed;
        top: 0;
        transform: none !important;
        transition: left .28s cubic-bezier(.2, .8, .2, 1), box-shadow .22s ease;
        width: 306px;
        z-index: 60;
      }

      body.mobile-menu-open .sidebar {
        left: 0 !important;
        transform: none !important;
      }

      html body.mobile-menu-open .app-shell > .sidebar {
        left: 0 !important;
        transform: none !important;
      }

      .sidebar-head {
        align-items: center;
        grid-template-columns: minmax(0, 1fr) 38px;
      }

      .sidebar-brand-link {
        min-width: 0;
      }

      .sidebar-toggle {
        box-shadow: none;
      }

      body.sidebar-collapsed .sidebar,
      body.sidebar-collapsed .sidebar:hover {
        padding: 18px 16px;
        width: 306px;
      }

      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-text,
      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-card {
        opacity: 1;
        pointer-events: auto;
        transform: none;
      }

      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-text {
        max-width: none;
        overflow: visible;
        width: auto;
      }

      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-brand-link {
        height: auto;
        justify-content: center;
        margin: 0;
        min-height: 46px;
        min-width: 0;
        overflow: visible;
        width: auto;
      }

      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-brand-link .sidebar-text {
        display: block;
      }

      body.sidebar-collapsed .sidebar:not(:hover) .nav-link,
      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group-toggle,
      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-logout-link {
        gap: 10px;
        justify-content: flex-start;
        padding-left: 12px;
        padding-right: 12px;
      }

      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group-toggle > span {
        gap: 10px;
        justify-content: flex-start;
        min-width: 0;
        width: auto;
      }

      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group.open .sidebar-group-toggle {
        background: var(--brand-soft);
        box-shadow: none;
        color: var(--brand);
      }

      body.sidebar-collapsed .sidebar:not(:hover) .sidebar-group.open .sidebar-submenu {
        border-left: 1px solid color-mix(in srgb, var(--hero-start) 30%, var(--line));
        margin-left: 13px;
        max-height: 680px;
        opacity: 1;
        padding-left: 10px;
      }

      .mobile-nav {
        display: flex;
        min-width: 0;
      }

      .mobile-menu-toggle {
        display: inline-flex;
      }

      .page-wrap {
        padding: 16px;
      }

      .topbar {
        top: 0;
      }

    }

    .register-shell {
      grid-template-columns: minmax(360px, .92fr) minmax(520px, 1.08fr);
      width: min(1220px, 100%);
    }

    .register-shell .login-hero,
    .register-shell .login-panel {
      padding: 48px;
    }

    .register-shell .login-copy p {
      margin-bottom: 22px;
    }

    .register-shell .login-form .row.g-3 {
      --bs-gutter-y: .65rem;
    }

    .register-plan-grid {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    }

    .register-plan-card {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      cursor: pointer;
      display: flex;
      flex-direction: column;
      gap: 6px;
      min-height: 112px;
      min-width: 0;
      padding: 11px 12px;
      position: relative;
      transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
    }

    .register-plan-card:hover {
      border-color: color-mix(in srgb, var(--brand) 48%, var(--line));
      transform: translateY(-1px);
    }

    .register-plan-card:has(input:checked) {
      border-color: var(--brand);
      box-shadow: 0 14px 34px color-mix(in srgb, var(--brand) 18%, transparent);
    }

    .register-plan-card.featured {
      border-color: color-mix(in srgb, var(--brand) 62%, var(--line));
      box-shadow: 0 14px 34px color-mix(in srgb, var(--brand) 12%, transparent);
    }

    .register-plan-card input {
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }

    .register-plan-card-head {
      display: flex;
      flex-direction: column;
      gap: 4px;
      min-width: 0;
    }

    .register-plan-card-head strong {
      color: var(--ink);
      font-size: .88rem;
      font-weight: 900;
      line-height: 1.2;
    }

    .register-plan-card-head span,
    .register-plan-period {
      color: var(--muted);
      font-size: .72rem;
      font-weight: 800;
      line-height: 1.2;
    }

    .register-plan-price {
      color: var(--brand);
      font-size: 1.05rem;
      font-weight: 900;
      line-height: 1;
    }

    .register-plan-card small {
      color: var(--muted);
      display: -webkit-box;
      font-size: .72rem;
      line-height: 1.35;
      overflow: hidden;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }

    .register-plan-highlight,
    .client-plan-highlight {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 12%, var(--panel));
      border: 1px solid color-mix(in srgb, var(--brand) 24%, var(--line));
      border-radius: 999px;
      color: var(--brand);
      display: inline-flex;
      font-size: .72rem;
      font-weight: 900;
      gap: 5px;
      line-height: 1;
      padding: 6px 8px;
      width: fit-content;
    }

    @media (max-width: 991.98px) {
      .register-shell {
        grid-template-columns: 1fr;
        min-height: auto;
        width: min(720px, 100%);
      }

      .register-shell .login-hero,
      .register-shell .login-panel {
        padding: 32px;
      }

      .register-shell .login-hero {
        justify-content: flex-start;
        min-height: auto;
      }

      .register-shell .login-logo {
        height: 74px;
        margin: 0 0 18px;
        width: 74px;
      }

      .register-shell .login-kicker {
        margin-bottom: 12px;
      }

      .register-shell .login-hero h1 {
        font-size: clamp(1.8rem, 6vw, 2.35rem);
        margin-bottom: 12px;
        max-width: 420px;
      }

      .register-shell .login-hero p {
        margin-bottom: 18px;
        max-width: 520px;
      }

      .register-shell .login-feature-list {
        margin-bottom: 0;
      }

      .register-shell .login-hero small {
        margin-top: 18px;
      }
    }

    @media (max-width: 575.98px) {
      .register-shell {
        border-radius: 18px;
      }

      .register-shell .login-hero,
      .register-shell .login-panel {
        padding: 24px 20px;
      }

      .register-shell .login-logo {
        height: 58px;
        margin-bottom: 14px;
        width: 58px;
      }

      .register-shell .login-kicker {
        font-size: .7rem;
        padding: 7px 11px;
      }

      .register-shell .login-hero h1 {
        font-size: 1.65rem;
      }

      .register-shell .login-hero p {
        font-size: .92rem;
        line-height: 1.45;
      }

      .register-shell .login-feature-list {
        display: grid;
        grid-template-columns: 1fr;
        max-width: 210px;
      }

      .register-shell .login-hero small {
        display: none;
      }

      .register-shell .login-form {
        display: flex;
        flex-direction: column;
      }

      .register-shell .register-plan-step {
        order: 8;
      }

      .register-shell .login-form > .row:last-of-type {
        order: 7;
      }

      .register-shell .login-form > .btn {
        order: 9;
      }
    }

    .account-subscription-grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .account-plan-overview {
      align-items: stretch;
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--brand) 14%, var(--panel)), var(--panel));
      border: 1px solid color-mix(in srgb, var(--brand) 24%, var(--line));
      border-radius: 16px;
      display: grid;
      gap: 14px;
      grid-template-columns: 1fr minmax(170px, .28fr);
      margin-bottom: 14px;
      overflow: hidden;
      padding: 18px;
    }

    .account-plan-main h3 {
      color: var(--ink);
      font-size: clamp(1.35rem, 2vw, 1.9rem);
      font-weight: 900;
      line-height: 1.1;
      margin: 6px 0 8px;
    }

    .account-plan-main p,
    .account-payment-callout p {
      color: var(--muted);
      font-size: .92rem;
      font-weight: 700;
      line-height: 1.4;
      margin: 0;
    }

    .account-plan-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 16px;
    }

    .account-plan-status {
      align-items: center;
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: flex;
      flex-direction: column;
      gap: 6px;
      justify-content: center;
      min-height: 142px;
      padding: 16px;
      text-align: center;
    }

    .account-plan-status i {
      align-items: center;
      border-radius: 12px;
      display: inline-flex;
      font-size: 1.35rem;
      height: 46px;
      justify-content: center;
      width: 46px;
    }

    .account-plan-status.ok i {
      background: var(--chip-success);
      color: var(--ok);
    }

    .account-plan-status.review i {
      background: var(--warning-soft);
      color: var(--warning);
    }

    .account-plan-status.danger i {
      background: var(--chip-danger);
      color: var(--danger);
    }

    .account-plan-status span {
      color: var(--muted);
      font-size: .74rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .account-plan-status strong {
      color: var(--ink);
      font-size: 1.15rem;
      font-weight: 900;
    }

    .account-subscription-card {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 16px;
    }

    .account-subscription-card span {
      color: var(--muted);
      display: block;
      font-size: .78rem;
      font-weight: 900;
      margin-bottom: 8px;
      text-transform: uppercase;
    }

    .account-subscription-card strong {
      color: var(--ink);
      display: block;
      font-size: 1.3rem;
      font-weight: 900;
      line-height: 1.1;
      margin-bottom: 8px;
    }

    .account-subscription-card small {
      color: var(--muted);
      display: block;
      font-size: .84rem;
      line-height: 1.35;
    }

    .account-access-alert {
      border-color: color-mix(in srgb, var(--warning) 34%, var(--line));
      border-radius: 12px;
      font-weight: 700;
    }

    .account-payment-callout {
      align-items: center;
      background: color-mix(in srgb, var(--warning) 10%, var(--field));
      border: 1px solid color-mix(in srgb, var(--warning) 30%, var(--line));
      border-radius: 14px;
      display: flex;
      gap: 14px;
      justify-content: space-between;
      margin-top: 14px;
      padding: 16px;
    }

    .account-payment-callout h3 {
      color: var(--ink);
      font-size: 1.05rem;
      font-weight: 900;
      margin: 4px 0 4px;
    }

    .account-subnav {
      margin-bottom: 18px;
    }

    .account-history-block {
      border-top: 1px solid var(--line);
      padding-top: 18px;
    }

    .compact-title {
      margin-bottom: 12px;
    }

    .client-plan-grid {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }

    .client-payment-steps {
      display: grid;
      gap: 10px;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      margin-bottom: 16px;
    }

    .client-payment-steps span {
      align-items: center;
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 12px;
      color: var(--ink);
      display: inline-flex;
      font-size: .86rem;
      font-weight: 550;
      gap: 8px;
      min-height: 44px;
      padding: 10px 12px;
    }

    .client-payment-steps i {
      align-items: center;
      background: color-mix(in srgb, var(--brand) 12%, transparent);
      border-radius: 9px;
      color: var(--brand);
      display: inline-flex;
      flex: 0 0 28px;
      height: 28px;
      justify-content: center;
      width: 28px;
    }

    .client-plan-card {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 14px;
      display: flex;
      flex-direction: column;
      gap: 9px;
      margin: 0;
      min-width: 0;
      padding: 16px;
      position: relative;
    }

    .client-plan-card::before {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 14px 14px 0 0;
      content: "";
      height: 4px;
      left: -1px;
      position: absolute;
      right: -1px;
      top: -1px;
    }

    .client-plan-card.current {
      border-color: var(--brand);
      box-shadow: 0 14px 34px color-mix(in srgb, var(--brand) 14%, transparent);
    }

    .client-plan-card.featured {
      border-color: color-mix(in srgb, var(--brand) 62%, var(--line));
      box-shadow: 0 14px 34px color-mix(in srgb, var(--brand) 12%, transparent);
    }

    .client-plan-type {
      color: var(--brand);
      font-size: .78rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .client-plan-card strong {
      color: var(--ink);
      font-size: 1.05rem;
      font-weight: 900;
      line-height: 1.15;
    }

    .client-plan-price {
      color: var(--ink);
      font-size: 1.45rem;
      font-weight: 900;
      line-height: 1;
    }

    .client-plan-card small,
    .client-plan-card p,
    .pix-payment-card p,
    .pix-payment-values small {
      color: var(--muted);
      font-size: .86rem;
      line-height: 1.35;
      margin: 0;
    }

    .client-plan-card .btn {
      margin-top: auto;
    }

    .client-plan-features {
      display: grid;
      gap: 7px;
      margin: 2px 0 4px;
    }

    .client-plan-features span {
      align-items: center;
      color: var(--ink);
      display: flex;
      font-size: .82rem;
      font-weight: 800;
      gap: 7px;
      line-height: 1.25;
    }

    .client-plan-features i {
      color: var(--ok);
      flex: 0 0 auto;
      font-size: .95rem;
    }

    .pix-payment-card {
      background:
        linear-gradient(135deg, color-mix(in srgb, var(--brand) 12%, var(--field)), var(--field));
      border: 1px solid color-mix(in srgb, var(--brand) 32%, var(--line));
      border-radius: 16px;
      display: grid;
      gap: 16px;
      grid-template-columns: 1.2fr .8fr 1.1fr 1.2fr;
      padding: 18px;
      position: relative;
    }

    .pix-payment-card::before {
      background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
      border-radius: 16px 16px 0 0;
      content: "";
      height: 5px;
      left: -1px;
      position: absolute;
      right: -1px;
      top: -1px;
    }

    .pix-payment-card h3 {
      color: var(--ink);
      font-size: 1.15rem;
      font-weight: 900;
      margin: 4px 0 6px;
    }

    .pix-payment-values,
    .pix-key-box,
    .receipt-upload-form {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 12px;
      display: flex;
      flex-direction: column;
      gap: 7px;
      padding: 14px;
    }

    .pix-payment-values span,
    .pix-key-box span {
      color: var(--muted);
      font-size: .74rem;
      font-weight: 900;
      text-transform: uppercase;
    }

    .pix-payment-values strong,
    .pix-key-box strong {
      color: var(--ink);
      font-size: 1.15rem;
      font-weight: 900;
    }

    .pix-key-box code {
      background: var(--field);
      border: 1px solid var(--line);
      border-radius: 8px;
      color: var(--brand);
      font-size: .9rem;
      font-weight: 550;
      overflow-wrap: anywhere;
      padding: 9px 10px;
    }

    @media (max-width: 1199.98px) {
      .app-shell {
        grid-template-columns: 248px minmax(0, 1fr);
      }

      body.sidebar-collapsed .app-shell {
        grid-template-columns: 82px minmax(0, 1fr);
      }

      .sidebar {
        padding-left: 16px;
        padding-right: 16px;
      }

      .page-wrap {
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px;
      }

      .office-module-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      .topbar .page-wrap > .d-flex {
        align-items: flex-start !important;
        flex-wrap: wrap;
      }

      .topbar .d-none.d-lg-block {
        flex: 1 1 320px;
        min-width: 0;
      }

      .topbar .d-none.d-lg-block span {
        display: inline;
      }

      .topbar .theme-toggle {
        justify-content: center;
        min-width: 44px;
        padding-left: 0;
        padding-right: 0;
        width: 44px;
      }

      .topbar .theme-toggle span {
        display: none;
      }

      .topbar .status-pill {
        white-space: nowrap;
      }

      .topbar .profile-toggle {
        max-width: 170px;
      }

      .topbar .profile-toggle > span:not(.profile-avatar) {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .files-hero {
        align-items: stretch;
        gap: 18px;
        grid-template-columns: minmax(0, 1fr) minmax(132px, .22fr);
        padding: 24px;
      }

      .files-hero h1 {
        font-size: clamp(1.7rem, 3.4vw, 2.25rem);
      }

      .files-hero p {
        max-width: 560px;
      }

      .files-filter-bar {
        grid-template-columns: minmax(220px, 1fr) minmax(140px, .55fr) minmax(145px, .55fr) auto auto;
      }

      .compare-search-form {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .compare-search-form > * {
        max-width: none;
        width: 100%;
      }

      .compare-search-action {
        grid-column: 1 / -1;
      }

      .compare-showcase {
        grid-template-columns: minmax(0, 1fr) 46px minmax(0, 1fr);
      }

      .compare-summary {
        gap: 8px;
      }

      .files-table-header {
        display: none;
      }

      .files-table {
        grid-template-columns: 1fr;
      }

      .file-row {
        align-items: start;
        background: var(--field);
        border: 1px solid var(--line);
        border-radius: 12px;
        gap: 8px 12px;
        grid-template-columns: 34px minmax(0, 1fr) auto;
        margin-bottom: 10px;
        padding: 12px;
      }

      .file-row .file-card-body {
        grid-column: 2;
      }

      .file-meta-cell {
        font-size: .8rem;
        grid-column: 2 / span 2;
        padding-left: 0;
      }

      .file-meta-cell:nth-of-type(1)::before {
        content: "Tipo: ";
        color: var(--muted);
        font-weight: 900;
      }

      .file-meta-cell:nth-of-type(2)::before {
        content: "Modificado: ";
        color: var(--muted);
        font-weight: 900;
      }

      .file-meta-cell:nth-of-type(3)::before {
        content: "Tamanho: ";
        color: var(--muted);
        font-weight: 900;
      }

      .file-row .file-card-actions {
        grid-column: 3;
        grid-row: 1;
        justify-content: flex-end;
      }

      .landing-nav {
        align-items: stretch;
        grid-template-columns: 1fr;
        max-width: 1180px;
      }

      .landing-brand {
        justify-self: start;
      }

      .landing-nav-links {
        align-items: center;
        border-top: 1px solid var(--line);
        grid-template-columns: minmax(0, 1fr) auto;
        padding-top: 10px;
      }

      .landing-nav-sections {
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
      }

      .landing-nav-sections::-webkit-scrollbar {
        display: none;
      }

      .landing-nav-actions {
        border-left: 0;
        justify-content: flex-end;
        min-width: 0;
        padding-left: 0;
      }

      .landing-nav-actions .btn {
        min-height: 40px;
      }

      .pix-payment-card {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .landing-hero {
        grid-template-columns: 1fr;
      }

      .landing-product-shot,
      .landing-hero-carousel,
      .landing-hero-carousel .carousel-inner,
      .landing-hero-carousel .carousel-item,
      .landing-carousel-slide {
        height: 620px;
        min-height: 620px;
      }

      .landing-carousel-slide {
        gap: 20px;
        grid-template-columns: minmax(230px, .8fr) minmax(0, 1.2fr);
      }

      .landing-slide-copy {
        min-height: 0;
      }

      .landing-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .landing-tests,
      .landing-manuals,
      .landing-app-install,
      .landing-contact {
        grid-template-columns: 1fr;
      }

      .landing-pricing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .test-row {
        grid-template-columns: minmax(180px, 1fr) minmax(120px, .7fr);
      }

      .test-row-header {
        display: none;
      }
    }

    @media (max-width: 899.98px) {
      .files-filter-bar {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto auto;
      }

      .files-filter-bar label:first-child {
        grid-column: 1 / -1;
      }

      .compare-search-form {
        grid-template-columns: 1fr;
      }

      .compare-search-action {
        grid-column: auto;
      }

      .landing-nav-links {
        align-items: stretch;
        grid-template-columns: 1fr;
      }

      .landing-nav-actions {
        border-top: 1px solid var(--line);
        flex-wrap: wrap;
        justify-content: flex-start;
        padding-top: 10px;
        width: 100%;
      }

      .landing-nav-actions .btn {
        flex: 1 1 132px;
      }
    }

    @media (max-width: 767.98px) {
      .topbar .page-wrap > .d-flex {
        align-items: center !important;
        flex-wrap: nowrap;
        gap: 8px !important;
      }

      .topbar .page-wrap > .d-flex > .d-flex:last-child {
        gap: 6px !important;
        margin-left: auto;
      }

      .mobile-nav {
        flex: 1 1 auto;
        min-width: 0;
      }

      .mobile-nav .brand-mark {
        height: 38px;
        width: 38px;
      }

      .mobile-nav strong {
        font-size: .92rem;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .mobile-menu-toggle {
        flex-basis: 38px;
        height: 38px;
        width: 38px;
      }

      .theme-toggle span {
        display: none;
      }

      .theme-toggle {
        min-height: 38px;
        width: 38px;
        justify-content: center;
        padding: 7px;
      }

      .topbar .status-pill {
        display: none;
      }

      .profile-toggle {
        gap: 4px;
        min-height: 38px;
        padding: 4px 7px;
      }

      .profile-avatar {
        height: 26px;
        width: 26px;
      }

      .metric {
        border-right: 0;
        border-bottom: 1px solid var(--line);
        padding: 10px 0;
      }

      .metric:last-child {
        border-bottom: 0;
      }

      .vehicle-hero {
        padding: 22px 18px;
      }

      .search-panel {
        padding: 14px;
      }

      .appearance-hub-grid,
      .menu-config-preview,
      .menu-config-items,
      .dashboard-metrics,
      .subscription-stats,
      .notification-dashboard-grid,
      .dashboard-grid,
      .office-stat-grid,
      .office-module-grid,
      .office-workspace-grid,
      .permission-grid,
      .register-plan-grid,
      .account-subscription-grid {
        grid-template-columns: 1fr;
      }

      .budget-item-head {
        align-items: flex-start;
        flex-direction: column;
      }

      .budget-item-row {
        grid-template-columns: 1fr;
      }

      .compact-filter {
        grid-template-columns: 1fr;
      }

      .office-client-list .section-title {
        align-items: flex-start;
        flex-direction: column;
      }

      .office-record-list .section-title {
        align-items: flex-start;
        flex-direction: column;
      }

      .office-list-actions {
        align-items: stretch;
        flex-direction: column;
        justify-content: stretch;
        width: 100%;
      }

      .office-list-actions .btn {
        width: 100%;
      }

      .office-client-list .compact-filter,
      .office-client-list .compact-filter > div,
      .office-client-list .compact-filter .form-control,
      .office-client-list .compact-filter .form-select {
        min-width: 0;
        width: 100%;
      }

      .office-client-list .compact-filter {
        grid-template-columns: 1fr;
      }

      .office-client-list .compact-filter .btn {
        width: 100%;
      }

      .office-client-table {
        overflow: visible;
      }

      .office-client-table table,
      .office-client-table tbody {
        display: block;
        width: 100%;
      }

      .office-client-table thead {
        display: none;
      }

      .office-client-table tbody {
        display: grid;
        gap: 12px;
      }

      .office-client-table tbody tr:not(.office-client-empty) {
        background: var(--soft);
        border: 1px solid var(--line);
        border-radius: 8px;
        display: grid;
        gap: 0;
        overflow: hidden;
        padding: 4px 12px;
      }

      .office-client-table tbody tr:not(.office-client-empty) td {
        align-items: start;
        border-bottom: 1px solid var(--line);
        display: grid;
        gap: 4px;
        grid-template-columns: minmax(76px, .35fr) minmax(0, 1fr);
        padding: 11px 0;
        text-align: left;
      }

      .office-client-table tbody tr:not(.office-client-empty) td::before {
        color: var(--muted);
        content: attr(data-label);
        font-size: .68rem;
        font-weight: 900;
        letter-spacing: 0;
        text-transform: uppercase;
      }

      .office-client-table tbody tr:not(.office-client-empty) td:last-child {
        border-bottom: 0;
      }

      .office-client-table .table-actions {
        justify-content: flex-start !important;
      }

      .office-client-table .office-client-empty,
      .office-client-table .office-client-empty td {
        display: block;
        width: 100%;
      }

      .office-responsive-table {
        overflow: visible;
      }

      .office-responsive-table table,
      .office-responsive-table tbody {
        display: block;
        width: 100%;
      }

      .office-responsive-table thead {
        display: none;
      }

      .office-responsive-table tbody {
        display: grid;
        gap: 12px;
      }

      .office-responsive-table tbody tr:not(.office-table-empty) {
        background: var(--soft);
        border: 1px solid var(--line);
        border-radius: 8px;
        display: grid;
        overflow: hidden;
        padding: 4px 12px;
      }

      .office-responsive-table tbody tr:not(.office-table-empty) td {
        align-items: start;
        border-bottom: 1px solid var(--line);
        display: grid;
        gap: 4px;
        grid-template-columns: minmax(90px, .38fr) minmax(0, 1fr);
        padding: 11px 0;
        text-align: left;
      }

      .office-responsive-table tbody tr:not(.office-table-empty) td::before {
        color: var(--muted);
        content: attr(data-label);
        font-size: .68rem;
        font-weight: 900;
        text-transform: uppercase;
      }

      .office-responsive-table tbody tr:not(.office-table-empty) td:last-child {
        border-bottom: 0;
      }

      .office-responsive-table .table-actions {
        justify-content: flex-start !important;
      }

      .office-responsive-table .office-table-empty,
      .office-responsive-table .office-table-empty td {
        display: block;
        width: 100%;
      }

      .client-payment-steps {
        grid-template-columns: 1fr;
      }

      .pix-payment-card {
        grid-template-columns: 1fr;
      }

      .account-plan-overview,
      .account-payment-callout {
        grid-template-columns: 1fr;
      }

      .account-payment-callout {
        align-items: stretch;
        flex-direction: column;
      }

      .receipt-review-callout {
        align-items: stretch;
        flex-direction: column;
      }

      .subscription-bulk-actions {
        align-items: stretch;
        flex-direction: column;
      }

      .tests-hero,
      .tests-report-head {
        align-items: stretch;
        flex-direction: column;
      }

      .tests-hero-card {
        min-width: 0;
      }

      .tests-meta-grid {
        grid-template-columns: 1fr;
      }

      .test-row {
        grid-template-columns: 1fr;
      }

      .tests-actions .btn {
        flex: 1;
      }

      .tests-filter-bar {
        align-items: stretch;
        flex-direction: column;
      }

      .tests-filter-bar .form-select {
        max-width: none;
      }

      .tests-history-item,
      .tests-history-meta {
        align-items: stretch;
        flex-direction: column;
      }

      .files-hero,
      .landing-band {
        align-items: flex-start;
        flex-direction: column;
      }

      .files-actions,
      .files-filter-bar,
      .landing-feature-grid,
      .landing-pricing-grid {
        grid-template-columns: 1fr;
      }

      .landing-tests,
      .landing-manuals,
      .landing-app-install,
      .landing-contact {
        padding: 18px;
      }

      .landing-phone-device {
        max-width: 230px;
        transform: none;
      }

      .landing-phone-frame,
      .landing-phone-screen {
        min-height: 455px;
      }

      .landing-app-install-actions .btn {
        flex: 1 1 160px;
      }

      .landing-section {
        padding: 18px;
      }

      .landing-price-card.featured {
        transform: none;
      }

      .files-inline-form {
        align-items: stretch;
        flex-direction: column;
      }

      .file-grid {
        grid-template-columns: 1fr;
      }

      .files-drive-head {
        align-items: flex-start;
        flex-direction: column;
      }

      .files-table-header {
        display: none;
      }

      .files-table {
        grid-template-columns: 1fr;
      }

      .file-row {
        border: 1px solid var(--line);
        border-radius: 12px;
        gap: 8px;
        margin-bottom: 10px;
      }

      .file-meta-cell {
        padding-left: 40px;
      }

      .file-meta-cell:nth-of-type(1)::before {
        content: "Tipo: ";
        color: var(--muted);
        font-weight: 900;
      }

      .file-meta-cell:nth-of-type(2)::before {
        content: "Modificado: ";
        color: var(--muted);
        font-weight: 900;
      }

      .file-meta-cell:nth-of-type(3)::before {
        content: "Tamanho: ";
        color: var(--muted);
        font-weight: 900;
      }

      .file-row .file-card-actions {
        justify-content: flex-start;
        padding-left: 40px;
      }

      .pdf-preview-modal .modal-content {
        border-radius: 0;
        min-height: 100vh;
      }

      .pdf-preview-modal .modal-header {
        align-items: flex-start;
        flex-direction: column;
      }

      .pdf-preview-modal .modal-title {
        max-width: calc(100vw - 32px);
        white-space: normal;
      }

      .pdf-preview-actions {
        justify-content: space-between;
        margin-left: 0;
        width: 100%;
      }

      .pdf-preview-modal .modal-body {
        height: calc(100vh - 118px);
      }

      .landing-page {
        padding: 16px;
      }

      .landing-nav {
        align-items: center;
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 10px;
        padding: 10px;
        top: 8px;
        transition: background .2s ease, box-shadow .2s ease, padding .2s ease, transform .2s ease;
      }

      .landing-menu-toggle {
        display: inline-flex;
      }

      .landing-brand {
        justify-content: center;
        min-width: 0;
        width: 100%;
      }

      .landing-brand span {
        transition: height .2s ease, width .2s ease;
      }

      .landing-brand strong {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .landing-nav-links {
        align-items: stretch;
        grid-column: 1 / -1;
        grid-template-columns: 1fr;
        max-height: 132px;
        opacity: 1;
        overflow: hidden;
        transform: translateY(0);
        transition: max-height .24s ease, opacity .18s ease, transform .22s ease, margin .22s ease;
        width: 100%;
      }

      .landing-nav-sections {
        display: none;
      }

      .landing-nav-actions {
        border: 0;
        display: grid;
        gap: 8px;
        grid-template-columns: 44px minmax(0, 1fr) minmax(0, 1fr);
        min-width: 0;
        padding-left: 0;
        width: 100%;
      }

      .landing-nav-actions .btn {
        justify-content: center;
        min-width: 0;
        padding-left: 10px;
        padding-right: 10px;
        width: 100%;
      }

      .landing-theme-toggle {
        min-width: 44px;
        width: 44px;
      }

      .landing-nav-actions .btn-brand {
        grid-column: 1 / -1;
        min-width: 0;
      }

      .landing-nav.is-compact {
        align-items: center;
        border-radius: 16px;
        box-shadow: 0 14px 28px rgba(15, 23, 42, .14);
        gap: 8px;
        grid-template-columns: 38px minmax(0, 1fr);
        min-height: 52px;
        padding: 6px 8px;
      }

      .landing-nav.is-compact .landing-menu-toggle {
        height: 38px;
        width: 38px;
      }

      .landing-nav.is-compact .landing-brand {
        align-items: center;
        display: flex;
        gap: 10px;
        height: 40px;
        justify-content: center;
        min-height: 40px;
        overflow: hidden;
      }

      .landing-nav.is-compact .landing-brand strong {
        display: flex;
        align-items: center;
        height: 40px;
        line-height: 1;
      }

      .landing-nav.is-compact .landing-brand span {
        align-self: center;
        height: 38px;
        width: 38px;
      }

      .landing-nav.is-compact .landing-nav-links {
        display: none;
        max-height: 0;
        opacity: 0;
        pointer-events: none;
        transform: translateY(-8px);
      }

      .landing-hero {
        min-height: auto;
        scroll-margin-top: 150px;
      }

      .landing-hero-copy {
        grid-template-columns: 1fr;
        padding: 18px;
        text-align: left;
      }

      .landing-hero-copy .vehicle-badge,
      .landing-hero-copy h1,
      .landing-hero-copy p,
      .landing-hero-points,
      .landing-actions {
        grid-column: 1;
      }

      .landing-hero-copy h1 {
        font-size: clamp(1.45rem, 8vw, 2.15rem);
        line-height: 1.08;
        max-width: none;
      }

      .landing-hero-copy p {
        font-size: .98rem;
        line-height: 1.55;
      }

      .landing-hero-points {
        gap: 8px;
        margin-top: 18px;
      }

      .landing-hero-points span {
        font-size: .78rem;
        padding: 7px 10px;
      }

      .landing-actions {
        gap: 8px;
        grid-row: auto;
        justify-content: flex-start;
      }

      .landing-actions .btn {
        flex: 1 1 150px;
        min-width: 0;
        padding-left: 14px;
        padding-right: 14px;
      }

      .landing-product-shot {
        grid-template-columns: 74px minmax(0, 1fr);
        min-height: 340px;
      }

      .landing-hero-carousel,
      .landing-hero-carousel .carousel-inner,
      .landing-hero-carousel .carousel-item,
      .landing-carousel-slide {
        height: 720px;
        min-height: 720px;
      }

      .landing-carousel-slide {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 24px 18px 66px;
      }

      .landing-slide-copy {
        min-height: 185px;
      }

      .landing-carousel-slide h2 {
        font-size: 1.65rem;
      }

      .landing-carousel-slide p {
        font-size: .85rem;
      }

      .landing-app-preview {
        border-radius: 14px;
        gap: 9px;
        margin-top: 12px;
        padding: 10px;
        place-self: stretch;
      }

      .landing-preview-param-grid,
      .landing-preview-status-grid {
        grid-template-columns: 1fr;
      }

      .landing-preview-param-grid span,
      .landing-preview-status-grid span,
      .landing-preview-plan,
      .landing-preview-file-list span,
      .landing-preview-compare-row {
        padding: 8px;
      }

      .landing-preview-file-list span {
        grid-template-columns: auto 1fr;
      }

      .landing-preview-file-list span small {
        grid-column: 2;
      }

      .landing-preview-compare-head,
      .landing-preview-compare-row {
        grid-template-columns: 1fr .8fr .8fr;
      }

      .landing-slide-metrics {
        grid-template-columns: 1fr;
        min-height: 180px;
      }

      .landing-hero-carousel .carousel-control-prev {
        left: 18px;
      }

      .landing-hero-carousel .carousel-control-next {
        left: 62px;
      }

      .landing-section,
      .landing-tests,
      .landing-manuals,
      .landing-contact {
        scroll-margin-top: 150px;
      }

      .landing-tests-steps,
      .landing-tests-result-grid {
        grid-template-columns: 1fr;
      }

      .landing-preview-test-summary {
        grid-template-columns: 1fr;
      }

      .landing-preview-test-summary span {
        min-height: 0;
      }

      .landing-preview-test-list span {
        grid-template-columns: 1fr auto;
      }

      .landing-preview-test-list small {
        grid-column: 1 / -1;
      }

      .landing-footer {
        align-items: flex-start;
        grid-template-columns: 1fr;
      }

      .shot-sidebar {
        padding: 16px 10px;
      }

      .shot-sidebar strong,
      .shot-sidebar small {
        display: none;
      }

      .shot-main {
        padding: 16px;
      }

      .shot-grid {
        grid-template-columns: 1fr;
      }

      .dashboard-list-item {
        align-items: flex-start;
        flex-direction: column;
      }

      .login-page {
        padding: 14px;
      }

      .login-shell {
        border-radius: 18px;
      }

      .login-hero {
        text-align: left;
      }

      .login-logo {
        margin-left: 0;
        margin-right: 0;
      }

      .login-hero h1 {
        font-size: 1.85rem;
      }

      .login-panel {
        padding: 28px 22px;
      }

      .compare-panel .table-responsive {
        display: none;
      }

      .compare-panel .section-title {
        align-items: flex-start;
        flex-direction: column;
      }

      .compare-panel .section-title .d-flex {
        width: 100%;
        flex-direction: column;
      }

      .compare-cards {
        display: block;
      }

      .compare-showcase {
        grid-template-columns: 1fr;
      }

      .vs-badge {
        width: 100%;
        min-height: 38px;
      }

      .compare-row {
        grid-template-columns: 1fr;
      }

      .compare-param {
        font-size: .92rem;
      }

      .compare-result {
        justify-self: stretch;
      }

      .sensor-grid {
        grid-template-columns: 1fr;
      }

      .sensor-reading {
        grid-template-columns: minmax(82px, .68fr) minmax(0, 1fr);
      }

      .settings-grid {
        grid-template-columns: 1fr;
      }

      .permission-grid {
        grid-template-columns: 1fr;
      }

      .preference-card {
        grid-template-columns: 1fr;
        align-items: flex-start;
      }

      .preference-actions {
        width: 100%;
        justify-content: stretch;
      }

      .preference-actions .btn {
        width: 100%;
      }

      .print-format-grid { grid-template-columns: 1fr; }
      .print-preference-actions { align-items: stretch; flex-direction: column; }
      .print-preference-actions .btn { width: 100%; }
      .office-settings-tabs { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible; }
      .office-settings-tabs a { font-size:.7rem;justify-content:center;padding:9px 5px;text-align:center;white-space:nowrap; }
      .settings-tab-intro { align-items:flex-start;flex-direction:column; }
      .evolution-office-grid { grid-template-columns:1fr; }
      .data-maintenance-grid { grid-template-columns:1fr; }
      .data-maintenance-card { grid-template-columns:38px minmax(0,1fr); }
      .data-maintenance-card > i { height:38px;width:38px; }
      .data-maintenance-card .btn { grid-column:1/-1;width:100%; }

      .appearance-preview {
        grid-template-columns: 1fr;
        align-items: stretch;
      }

      .appearance-preview-actions {
        justify-content: stretch;
      }

      .appearance-preview-actions .btn,
      .appearance-hover-sample,
      .appearance-gradient-sample {
        width: 100%;
      }

      .account-photo-row {
        align-items: stretch;
        flex-direction: column;
      }

      .favorite-card,
      .favorite-actions {
        align-items: stretch;
        flex-direction: column;
      }

      .favorite-actions .btn,
      .favorite-actions form {
        width: 100%;
      }

      .settings-preview {
        position: static;
      }

      .import-review-toolbar,
      .import-status-group,
      .import-review-actions {
        align-items: stretch;
        flex-direction: column;
      }

      .import-review-actions .btn {
        width: 100%;
      }

      .working-notice {
        right: 16px;
        bottom: 16px;
        left: 16px;
        max-width: none;
      }

      .parameter-group-grid {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 991.98px) {
      .sidebar.mobile-sidebar-open {
        left: 0 !important;
        right: auto !important;
        transform: none !important;
      }
    }

    @media print {
      @page {
        margin: 12mm;
      }

      .sidebar,
      .topbar,
      .app-footer,
      .no-print,
      .page-transition {
        display: none !important;
      }

      body,
      body[data-theme="dark"] {
        --ink: #0f172a;
        --muted: #475569;
        --line: #cbd5e1;
        --panel: #ffffff;
        --canvas: #ffffff;
        --field: #ffffff;
        background: #fff !important;
        color: #0f172a !important;
        font-size: 10.5pt;
      }

      .app-shell {
        display: block;
      }

      .main,
      .page-wrap {
        display: block;
        margin: 0;
        max-width: none;
        padding: 0;
      }

      .content-panel,
      .tests-report-panel {
        border: 0;
        box-shadow: none;
        padding: 0;
      }

      .tests-hero,
      .search-panel {
        display: none !important;
      }

      .tests-print-header {
        align-items: flex-start;
        border-bottom: 2px solid #0f172a;
        display: flex;
        justify-content: space-between;
        margin-bottom: 10mm;
        padding-bottom: 5mm;
      }

      .tests-print-header strong,
      .tests-print-header span {
        display: block;
      }

      .tests-print-header strong {
        color: #0f172a;
        font-size: 15pt;
        font-weight: 900;
        line-height: 1.1;
      }

      .tests-print-header span,
      .tests-print-header small {
        color: #475569;
        font-size: 9pt;
        font-weight: 700;
      }

      .tests-report-head {
        border-bottom: 1px solid #cbd5e1;
        display: block;
        margin-bottom: 5mm;
        padding-bottom: 4mm;
      }

      .tests-report-head h2 {
        font-size: 16pt;
        line-height: 1.15;
        margin: 4mm 0 2mm;
      }

      .tests-report-head p {
        font-size: 9pt;
        line-height: 1.35;
      }

      .tests-summary {
        border: 1px solid #cbd5e1;
        border-radius: 8px;
        display: grid;
        gap: 0;
        grid-template-columns: repeat(3, 1fr);
        margin-bottom: 5mm;
        overflow: hidden;
      }

      .tests-summary .status-pill {
        background: #fff !important;
        border: 0;
        border-right: 1px solid #cbd5e1;
        border-radius: 0;
        color: #0f172a !important;
        justify-content: center;
        padding: 7px 8px;
      }

      .tests-summary .status-pill:last-child {
        border-right: 0;
      }

      .tests-meta-grid {
        gap: 8px;
        grid-template-columns: repeat(3, 1fr);
        margin-bottom: 5mm;
      }

      .tests-meta-grid label,
      .tests-notes {
        gap: 2px;
      }

      .tests-meta-grid span,
      .tests-notes span {
        color: #475569;
        font-size: 7.5pt;
      }

      .tests-meta-grid .form-control,
      .tests-notes .form-control {
        background: transparent !important;
        border: 0 !important;
        border-bottom: 1px solid #cbd5e1 !important;
        border-radius: 0 !important;
        color: #0f172a !important;
        font-size: 9pt;
        min-height: 0;
        padding: 2px 0 4px;
      }

      .tests-notes {
        margin-top: 5mm;
      }

      .tests-notes textarea {
        min-height: 24mm;
      }

      .tests-groups {
        gap: 5mm;
      }

      .test-group {
        border: 1px solid #cbd5e1;
        border-radius: 8px;
        overflow: hidden;
      }

      .test-group:not(:has(.test-row[data-test-status="ok"], .test-row[data-test-status="alert"])) {
        display: none;
      }

      .test-group-head {
        background: #f8fafc !important;
        border-left-width: 0;
        border-bottom: 1px solid #cbd5e1;
        padding: 7px 9px;
      }

      .test-group-head span,
      .test-group-head small {
        color: #0f172a;
        font-size: 9pt;
      }

      .test-row {
        break-inside: avoid;
        gap: 8px;
        grid-template-columns: 1.25fr .75fr .65fr .85fr;
        padding: 6px 9px;
      }

      .test-row[data-test-status="untested"] {
        display: none;
      }

      .test-row-header {
        background: #fff !important;
        color: #475569;
        display: grid;
        font-size: 7.2pt;
        letter-spacing: 0;
        padding: 5px 9px;
      }

      .test-param strong,
      .test-expected,
      .test-status .status-pill {
        font-size: 8.5pt;
      }

      .test-param small,
      .test-status small {
        font-size: 7.5pt;
        line-height: 1.25;
        margin-top: 1px;
      }

      .test-row .form-control {
        background: transparent !important;
        border: 0 !important;
        border-bottom: 1px solid #94a3b8 !important;
        border-radius: 0 !important;
        color: #0f172a !important;
        font-size: 8.5pt;
        min-height: 0;
        padding: 0 0 2px;
      }

      .test-status .status-pill {
        background: #fff !important;
        border-radius: 999px;
        padding: 3px 7px;
      }

      .test-status .status-pill.ok {
        border: 1px solid #16a34a;
        color: #15803d !important;
      }

      .test-status .status-pill.danger {
        border: 1px solid #dc2626;
        color: #b91c1c !important;
      }

      .test-group,
      .test-row {
        break-inside: avoid;
      }

      .form-control,
      .form-select {
        border-color: #94a3b8 !important;
      }
    }
/* Ordens de servico */
.office-order-dialog{--bs-modal-width:min(1080px,94vw)}
.office-order-dialog .modal-content{max-height:calc(100dvh - 24px);overflow:hidden}
.office-order-dialog .order-form-scroll{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.os-selected-items{margin-bottom:0;min-height:150px}
@media(max-width:991.98px){.office-order-dialog .modal-content,.office-order-dialog .order-form-scroll{height:100dvh;max-height:100dvh}.office-order-dialog .order-form-scroll{padding-bottom:24px!important}}

/* Controle de estoque */
.stock-company-filter{align-items:end;display:grid;grid-template-columns:minmax(240px,420px);padding:0 2px}.stock-stat-danger{border-top-color:#ef4444!important}.stock-product-grid{display:grid;gap:10px}.stock-product-card{align-items:center;border:1px solid var(--line);border-left:4px solid #16a34a;border-radius:7px;display:grid;gap:14px;grid-template-columns:42px minmax(0,1fr) auto;padding:13px 14px}.stock-product-card.is-low{background:rgba(239,68,68,.035);border-left-color:#ef4444}.stock-product-icon{align-items:center;background:var(--brand-soft);border-radius:7px;color:var(--brand);display:flex;font-size:18px;height:40px;justify-content:center;width:40px}.stock-product-card.is-low .stock-product-icon{background:#fff0f0;color:#dc2626}.stock-product-card>div:nth-child(2){display:grid;gap:2px;min-width:0}.stock-product-card>div:nth-child(2)>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-product-card>div:nth-child(2)>span,.stock-product-card>div:nth-child(2)>small{color:var(--muted);font-size:12px}.stock-product-balance{align-items:flex-end;display:grid;gap:2px;justify-items:end}.stock-product-balance span{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.stock-product-balance strong{font-size:17px}.stock-product-balance button{background:none;border:0;color:var(--brand);font-size:12px;font-weight:700;padding:3px 0}.stock-movement-filter{grid-template-columns:minmax(220px,1.4fr) minmax(190px,1fr) minmax(150px,.7fr) auto auto}.stock-movement-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;gap:5px;padding:5px 9px}.stock-movement-pill.entrada{background:#e7f8f0;color:#087a54}.stock-movement-pill.saida{background:#fff0f0;color:#c62828}.stock-movement-pill.ajuste{background:#eaf2ff;color:#1262ce}.stock-movement-dialog{max-width:560px}.stock-current-balance{background:var(--soft);border-radius:6px;color:var(--muted);font-size:12px;font-weight:700;margin-top:7px;padding:7px 10px}.stock-operation-grid{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.stock-operation-grid label{cursor:pointer}.stock-operation-grid input{position:absolute;opacity:0;pointer-events:none}.stock-operation-grid span{border:1px solid var(--line);border-radius:7px;display:grid;gap:2px;min-height:92px;padding:12px}.stock-operation-grid i{color:var(--brand);font-size:18px}.stock-operation-grid strong{font-size:13px}.stock-operation-grid small{color:var(--muted);font-size:10px}.stock-operation-grid input:checked+span{background:var(--brand-soft);border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}
.stock-status-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.stock-stat-negative{--card-accent:#7c3aed!important;border-top-color:#7c3aed!important}.stock-stat-negative i{background:color-mix(in srgb,#7c3aed 13%,var(--panel))!important;color:#7c3aed!important}.stock-balance-search{align-items:center;display:flex;gap:8px;margin-bottom:12px}.stock-balance-search>div{align-items:center;display:flex;flex:1;position:relative}.stock-balance-search>div>i{color:var(--muted);left:14px;position:absolute;z-index:2}.stock-balance-search .form-control{padding-left:39px}.stock-balance-search .btn{min-height:42px}.stock-quick-filters{display:grid;gap:8px;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:14px}.stock-quick-filters a{--stock-accent:#2563eb;align-items:center;background:color-mix(in srgb,var(--stock-accent) 5%,var(--panel));border:1px solid color-mix(in srgb,var(--stock-accent) 21%,var(--line));border-radius:8px;color:var(--ink);display:grid;gap:3px 8px;grid-template-columns:32px minmax(0,1fr) auto;min-height:54px;padding:9px 11px;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.stock-quick-filters a.normal{--stock-accent:#16a34a}.stock-quick-filters a.baixo{--stock-accent:#d99000}.stock-quick-filters a.zerado{--stock-accent:#e11d48}.stock-quick-filters a.negativo{--stock-accent:#7c3aed}.stock-quick-filters a i{align-items:center;background:color-mix(in srgb,var(--stock-accent) 13%,var(--panel));border-radius:7px;color:var(--stock-accent);display:flex;grid-row:1/3;height:32px;justify-content:center;width:32px}.stock-quick-filters a span{font-size:.68rem;font-weight:550}.stock-quick-filters a strong{font-size:1rem;grid-column:3;grid-row:1/3}.stock-quick-filters a:hover,.stock-quick-filters a.active{border-color:var(--stock-accent);box-shadow:0 9px 20px color-mix(in srgb,var(--stock-accent) 12%,transparent);transform:translateY(-1px)}.stock-product-card.is-normal{--stock-accent:#16a34a;border-left-color:#16a34a}.stock-product-card.is-baixo{--stock-accent:#d99000;background:color-mix(in srgb,#d99000 4%,var(--panel));border-left-color:#d99000}.stock-product-card.is-zerado{--stock-accent:#e11d48;background:color-mix(in srgb,#e11d48 5%,var(--panel));border-left-color:#e11d48}.stock-product-card.is-negativo{--stock-accent:#7c3aed;background:color-mix(in srgb,#7c3aed 5%,var(--panel));border-left-color:#7c3aed}.stock-product-card[class*="is-"] .stock-product-icon{background:color-mix(in srgb,var(--stock-accent) 13%,var(--panel));color:var(--stock-accent)}.stock-product-card[class*="is-"] .stock-product-balance>span{color:var(--stock-accent)}
.stock-empty-state{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 5%,var(--panel)),var(--panel));border:1px dashed color-mix(in srgb,var(--brand) 28%,var(--line));border-radius:12px;display:grid;gap:14px;grid-template-columns:48px minmax(0,1fr);min-height:96px;padding:18px 20px}.stock-empty-state>i{align-items:center;background:var(--brand-soft);border-radius:12px;color:var(--brand);display:flex;font-size:20px;height:48px;justify-content:center;width:48px}.stock-empty-state>div{display:grid;gap:3px}.stock-empty-state strong{color:var(--ink);font-size:.96rem;font-weight:750}.stock-empty-state span{color:var(--muted);font-size:.82rem;line-height:1.45}
@media(max-width:991.98px){.stock-movement-filter{grid-template-columns:1fr 1fr}.stock-movement-filter>div:first-child{grid-column:1/-1}}
@media(max-width:1199.98px){.stock-status-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stock-quick-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767.98px){.stock-status-stats{grid-template-columns:1fr 1fr}.stock-quick-filters{display:flex;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.stock-quick-filters a{flex:0 0 160px}}
@media(max-width:575.98px){.stock-company-filter,.stock-movement-filter{grid-template-columns:1fr}.stock-movement-filter>div:first-child{grid-column:auto}.stock-product-card{grid-template-columns:38px minmax(0,1fr)}.stock-product-balance{align-items:center;border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:1fr auto auto;justify-items:start;padding-top:9px}.stock-product-balance strong{font-size:15px}.stock-operation-grid{grid-template-columns:1fr}.stock-operation-grid span{align-items:center;grid-template-columns:24px 1fr;min-height:0}.stock-operation-grid small{grid-column:2}.stock-balance-search{display:grid;grid-template-columns:1fr auto}.stock-balance-search>div{grid-column:1/-1}.stock-status-stats{grid-template-columns:1fr 1fr}}

/* Padronizacao de filtros, tabelas, modais e menus de acao */
.followup-history-filter{grid-template-columns:minmax(280px,1.45fr) minmax(160px,.55fr) minmax(150px,.5fr) minmax(150px,.5fr) minmax(130px,auto)!important}.followup-filter-actions{align-items:end;align-self:end;display:flex;gap:8px;justify-content:flex-end;min-width:130px}.followup-filter-actions .btn-brand{min-height:44px;white-space:nowrap}.followup-filter-actions .filter-clear{align-self:auto}
@media(max-width:1399.98px){.followup-history-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important}.followup-filter-actions{grid-column:1/-1}}
@media(max-width:575.98px){.followup-history-filter{grid-template-columns:1fr!important}.followup-history-filter>div,.followup-history-filter>div:first-of-type,.followup-filter-actions{grid-column:1!important}.followup-filter-actions{display:grid;grid-template-columns:minmax(0,1fr) 44px}.followup-filter-actions .btn-brand{width:100%}}
.compact-filter:has(> div:nth-of-type(3)) {
  grid-template-columns: minmax(260px, 1.4fr) minmax(170px, .48fr) minmax(170px, .48fr) auto 44px;
}

.filter-clear,
.compact-filter > a:last-child,
.filter-panel > a:last-child {
  align-items: center;
  align-self: end;
  display: inline-flex;
  flex: 0 0 44px;
  height: 44px;
  justify-content: center;
  min-height: 44px;
  padding: 0 !important;
  width: 44px;
}

.office-list-actions .btn {
  align-items: center;
  display: inline-flex;
  gap: 7px;
  height: 42px;
  justify-content: center;
  min-height: 42px;
  padding: 0 14px;
  white-space: nowrap;
}

.office-list-actions .status-pill {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  min-height: 32px;
  padding: 6px 10px;
  white-space: nowrap;
}

/* Padrao visual dos comandos e filtros das listagens operacionais. */
.office-record-list .section-title,
.management-list .section-title,
.stock-balance-panel .section-title {
  column-gap: 18px;
  margin-bottom: 16px;
}

.office-record-list .btn:not(.btn-sm),
.management-list .btn:not(.btn-sm),
.stock-balance-panel .btn:not(.btn-sm) {
  align-items: center;
  display: inline-flex;
  font-size: .82rem;
  font-weight: 800;
  gap: 7px;
  justify-content: center;
}

.product-filter .form-control,
.product-filter .form-select,
.product-filter .btn,
.sale-list-filter .form-select,
.sale-list-filter .btn,
.stock-balance-search .form-control,
.stock-balance-search .btn,
.stock-movement-filter .form-control,
.stock-movement-filter .form-select,
.stock-movement-filter .btn {
  height: 42px;
  min-height: 42px;
}

.product-filter .filter-actions .filter-clear,
.stock-balance-search > a:last-child,
.stock-movement-filter > a:last-child {
  flex: 0 0 42px;
  height: 42px;
  min-height: 42px;
  min-width: 42px;
  padding: 0 !important;
  width: 42px;
}

.stock-movement-filter {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(260px, 1.4fr) minmax(190px, .8fr) minmax(160px, .65fr) auto 42px;
}

.stock-movement-filter > .btn,
.stock-movement-filter > a {
  align-self: end;
}

.stock-balance-search > .btn,
.stock-balance-search > a,
.sale-list-filter .btn {
  padding-left: 14px;
  padding-right: 14px;
  white-space: nowrap;
}

.sale-list-filter > div {
  align-items: center;
}

.sale-list-filter .form-select {
  flex: 1 1 auto;
  min-width: 0;
}

.table-actions .btn.btn-sm {
  align-items: center;
  display: inline-flex;
  flex: 0 0 36px;
  height: 36px;
  justify-content: center;
  min-height: 36px;
  padding: 0;
  width: 36px;
}

@media (max-width: 991.98px) {
  .stock-movement-filter {
    grid-template-columns: 1fr 1fr;
  }

  .stock-movement-filter > div:first-child {
    grid-column: 1 / -1;
  }

  .stock-movement-filter > .btn {
    justify-self: stretch;
  }
}

@media (max-width: 575.98px) {
  .stock-movement-filter {
    grid-template-columns: minmax(0, 1fr) 42px;
  }

  .stock-movement-filter > div,
  .stock-movement-filter > div:first-child {
    grid-column: 1 / -1;
  }

  .stock-movement-filter > .btn {
    grid-column: 1;
    width: 100%;
  }

  .stock-movement-filter > a:last-child {
    grid-column: 2;
  }
}

/* Institutional visual refresh and explicit PWA installation controls. */
.inst-install,
.inst-mobile-install {
  align-items: center;
  background: color-mix(in srgb, var(--inst-blue) 9%, transparent);
  border: 1px solid color-mix(in srgb, var(--inst-blue) 30%, var(--inst-line));
  border-radius: 11px;
  color: var(--inst-blue);
  display: inline-flex;
  font-size: .8rem;
  font-weight: 550;
  gap: 7px;
  justify-content: center;
  min-height: 40px;
  padding: 9px 13px;
  transition: .2s ease;
}

.inst-install:hover,
.inst-mobile-install:hover,
.inst-install.is-ready,
.inst-mobile-install.is-ready {
  background: var(--inst-blue);
  border-color: var(--inst-blue);
  color: #fff;
  transform: translateY(-1px);
}

.inst-mobile-install {
  margin-top: 12px;
  width: 100%;
}

.pwa-topbar-install.is-ready,
.pwa-mobile-install.is-ready {
  border-color: color-mix(in srgb, var(--brand) 55%, var(--line));
  color: var(--brand);
}

.pwa-mobile-install {
  background: transparent;
  border-left: 0;
  border-right: 0;
  border-top: 1px solid var(--line);
  cursor: pointer;
  margin-top: 12px;
  text-align: left;
  width: 100%;
}

.mobile-system-app-actions {
  display: grid;
  gap: 9px;
  margin-top: 10px;
  width: 100%;
}

.mobile-system-app-actions .mobile-system-install {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 13px;
  box-shadow: none;
  display: flex;
  font-size: .82rem;
  font-weight: 650;
  gap: 8px;
  justify-content: center;
  margin: 0;
  min-height: 46px;
  padding: 0 16px;
  text-decoration: none;
  transition: background .22s ease, border-color .22s ease, box-shadow .22s ease, transform .22s ease;
  width: 100%;
}

.mobile-system-app-actions .mobile-system-install {
  background: linear-gradient(120deg, #0f9f67, #22b978);
  border-color: #0f9f67;
  color: #fff;
  cursor: pointer;
}

.mobile-system-app-actions .mobile-system-install:hover,
.mobile-system-app-actions .mobile-system-install.is-ready {
  background: linear-gradient(120deg, #0b8958, #18a96c);
  border-color: #0b8958;
  box-shadow: 0 12px 25px rgba(15, 159, 103, .25);
  color: #fff;
  transform: translateY(-1px);
}

.inst-header {
  background: color-mix(in srgb, #fff 84%, #e9f2ff);
  box-shadow: 0 12px 38px rgba(18, 54, 100, .07);
}

.inst-hero {
  background:
    radial-gradient(circle at 8% 18%, rgba(95, 72, 255, .18), transparent 27%),
    radial-gradient(circle at 88% 22%, rgba(15, 193, 142, .16), transparent 28%),
    radial-gradient(circle at 72% 82%, rgba(38, 120, 255, .16), transparent 32%),
    linear-gradient(145deg, #f8fbff 0%, #eef5ff 48%, #f5f1ff 100%);
}

.inst-hero::after {
  background: linear-gradient(90deg, #2678ff, #725cff, #16a05f, #ff8a2a);
  bottom: 0;
  content: "";
  height: 5px;
  left: 0;
  position: absolute;
  right: 0;
}

[data-theme="dark"] .inst-hero {
  background:
    radial-gradient(circle at 8% 18%, rgba(114, 92, 255, .2), transparent 28%),
    radial-gradient(circle at 88% 22%, rgba(15, 193, 142, .16), transparent 30%),
    linear-gradient(145deg, #071322, #0b1d33 58%, #121733);
}

.inst-eyebrow {
  box-shadow: 0 8px 24px rgba(38, 120, 255, .12);
}

.inst-primary {
  background: linear-gradient(120deg, #096dff, #6157f5 58%, #7b4cf0);
  box-shadow: 0 16px 36px rgba(49, 92, 229, .3);
}

.inst-app-window {
  border-color: rgba(91, 137, 205, .3);
  box-shadow: 0 42px 90px rgba(28, 68, 124, .24), 0 0 0 8px rgba(255, 255, 255, .5);
}

.inst-hero-signals {
  display: grid;
  gap: 9px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 25px;
  max-width: 660px;
}

.inst-hero-signals article {
  align-items: center;
  backdrop-filter: blur(8px);
  background: rgba(255, 255, 255, .66);
  border: 1px solid rgba(182, 203, 232, .72);
  border-radius: 14px;
  display: grid;
  gap: 9px;
  grid-template-columns: 34px minmax(0, 1fr);
  min-width: 0;
  padding: 11px;
}

[data-theme="dark"] .inst-hero-signals article {
  background: rgba(12, 34, 58, .72);
  border-color: #29425f;
}

.inst-hero-signals article > i {
  align-items: center;
  background: #e7f0ff;
  border-radius: 10px;
  color: #2678ff;
  display: flex;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.inst-hero-signals article:nth-child(2) > i { background: #e3f8ef; color: #12925a; }
.inst-hero-signals article:nth-child(3) > i { background: #f0eaff; color: #725cff; }
.inst-hero-signals strong,
.inst-hero-signals small { display: block; }
.inst-hero-signals strong { font-size: .68rem; font-weight: 900; }
.inst-hero-signals small { color: var(--inst-muted); font-size: .55rem; line-height: 1.35; }

.inst-value-strip {
  background: linear-gradient(100deg, #071a31, #0d3156 52%, #102b4b);
  border: 0;
  color: #fff;
}

.inst-value-strip span { color: #d2e3f7; }
.inst-value-strip span:nth-child(1) i { color: #66a5ff; }
.inst-value-strip span:nth-child(2) i { color: #a78bfa; }
.inst-value-strip span:nth-child(3) i { color: #56d5a0; }
.inst-value-strip span:nth-child(4) i { color: #ffba64; }
.inst-value-strip span:nth-child(5) i { color: #5dd7ef; }

#recursos {
  background:
    radial-gradient(circle at 0 16%, rgba(38, 120, 255, .1), transparent 24%),
    radial-gradient(circle at 100% 78%, rgba(114, 92, 255, .09), transparent 23%),
    var(--panel);
}

.inst-feature-card {
  --card-accent: #2678ff;
  background: linear-gradient(145deg, color-mix(in srgb, var(--card-accent) 11%, #fff), #fff 68%);
  border-color: color-mix(in srgb, var(--card-accent) 28%, var(--inst-line));
  box-shadow: 0 18px 42px color-mix(in srgb, var(--card-accent) 8%, transparent);
  overflow: hidden;
}

.inst-feature-card::after {
  background: var(--card-accent);
  border-radius: 50%;
  content: "";
  filter: blur(4px);
  height: 130px;
  opacity: .08;
  position: absolute;
  right: -54px;
  top: -55px;
  width: 130px;
}

.inst-feature-card:nth-child(2) { --card-accent: #16a05f; }
.inst-feature-card:nth-child(3) { --card-accent: #e98b17; }
.inst-feature-card:nth-child(4) { --card-accent: #725cff; }
.inst-feature-card:nth-child(5) { --card-accent: #2e86de; }
.inst-feature-card:nth-child(6) { --card-accent: #dc4564; }
.inst-feature-card:hover { border-color: var(--card-accent); box-shadow: 0 24px 54px color-mix(in srgb, var(--card-accent) 17%, transparent); }
.inst-feature-card:not(.dark) > span { color: var(--card-accent); }
.inst-feature-card .inst-feature-icon { box-shadow: 0 10px 24px color-mix(in srgb, var(--card-accent) 18%, transparent); }

[data-theme="dark"] .inst-feature-card:not(.dark) {
  background: linear-gradient(145deg, color-mix(in srgb, var(--card-accent) 15%, #0b1b2e), #0b1b2e 68%);
}

.inst-integrations {
  background:
    radial-gradient(circle at 14% 10%, rgba(26, 188, 118, .12), transparent 25%),
    radial-gradient(circle at 90% 88%, rgba(38, 120, 255, .13), transparent 28%),
    linear-gradient(180deg, #f0f6ff, #f7faff);
}

[data-theme="dark"] .inst-integrations { background: linear-gradient(180deg, #09192c, #0d2037); }
.inst-integration-card.whatsapp { background: linear-gradient(145deg, #f4fff9, #fff 60%); border-color: #bfe8d3; }
.inst-integration-card.plate { background: linear-gradient(145deg, #f3f7ff, #fff 60%); border-color: #c3d7f7; }
[data-theme="dark"] .inst-integration-card.whatsapp { background: linear-gradient(145deg, #0c2a22, #0b1b2e 62%); }
[data-theme="dark"] .inst-integration-card.plate { background: linear-gradient(145deg, #10294d, #0b1b2e 62%); }

.inst-workflow {
  background:
    radial-gradient(circle at 12% 18%, rgba(72, 136, 255, .25), transparent 28%),
    radial-gradient(circle at 86% 78%, rgba(23, 184, 132, .18), transparent 27%),
    linear-gradient(135deg, #061426, #0b2b4d 58%, #10233d);
}

.inst-steps article {
  backdrop-filter: blur(7px);
  box-shadow: inset 0 1px rgba(255, 255, 255, .06), 0 18px 44px rgba(0, 0, 0, .16);
  transition: .25s ease;
}
.inst-steps article:hover { border-color: rgba(126, 184, 248, .55); transform: translateY(-5px); }

#planos {
  background: radial-gradient(circle at 50% 15%, rgba(114, 92, 255, .09), transparent 30%), var(--panel);
}
.inst-price-card { box-shadow: 0 18px 44px rgba(30, 67, 115, .08); }
.inst-price-card.highlight { background: linear-gradient(160deg, #edf5ff, #fff 52%); border-color: #6ca5f8; }

.inst-contact-card {
  background:
    radial-gradient(circle at 0 0, rgba(38, 120, 255, .14), transparent 35%),
    radial-gradient(circle at 100% 100%, rgba(114, 92, 255, .12), transparent 34%),
    linear-gradient(145deg, #eef5ff, #fff);
  box-shadow: 0 28px 70px rgba(28, 65, 116, .13);
}

.inst-final-cta {
  background:
    radial-gradient(circle at 14% 22%, rgba(255, 255, 255, .17), transparent 22%),
    radial-gradient(circle at 86% 78%, rgba(33, 216, 161, .28), transparent 28%),
    linear-gradient(120deg, #086cf2, #604ee7 58%, #15a273);
  position: relative;
}

@media (max-width: 1050px) {
  .inst-header-actions > .inst-install { display: none; }
}

@media (max-width: 760px) {
  .inst-hero-signals { grid-template-columns: 1fr; }
  .inst-hero-signals article { padding: 10px 11px; }
  .inst-value-strip .inst-container { align-items: flex-start; flex-direction: column; }
}

/* Stronger visual hierarchy for institutional cards. */
.inst-bento {
  gap: 24px;
}

.inst-feature-card {
  border-width: 2px;
  min-height: 270px;
  padding: 36px;
}

.inst-feature-card::before {
  background: linear-gradient(90deg, var(--card-accent), color-mix(in srgb, var(--card-accent) 35%, transparent));
  content: "";
  height: 6px;
  inset: 0 0 auto;
  position: absolute;
}

.inst-feature-card .inst-feature-icon {
  border: 1px solid color-mix(in srgb, var(--card-accent) 30%, transparent);
  border-radius: 17px;
  font-size: 1.5rem;
  height: 58px;
  width: 58px;
}

.inst-feature-card > span {
  font-size: .82rem;
  letter-spacing: .13em;
  margin-top: 24px;
}

.inst-feature-card h3 {
  font-size: 1.55rem;
  line-height: 1.2;
  margin: 10px 0 12px;
}

.inst-feature-card p {
  font-size: 1.02rem;
  line-height: 1.72;
}

.inst-feature-card.dark {
  background:
    radial-gradient(circle at 88% 12%, rgba(94, 160, 255, .22), transparent 28%),
    linear-gradient(145deg, #071a31, #11365c);
  border-color: #285b8d;
}

.inst-feature-card.dark::before {
  background: linear-gradient(90deg, #4698ff, #66d3ff);
}

.inst-mini-flow {
  gap: 10px;
  margin-top: 28px;
}

.inst-mini-flow b,
.inst-tech-tags b {
  font-size: .74rem;
  padding: 9px 12px;
}

.inst-workflow {
  padding-bottom: 118px;
  padding-top: 118px;
}

.inst-steps {
  gap: 20px;
}

.inst-steps article {
  --step-accent: #56a0ff;
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--step-accent) 22%, transparent), transparent 38%),
    linear-gradient(150deg, rgba(15, 52, 90, .94), rgba(8, 29, 52, .96));
  border: 2px solid color-mix(in srgb, var(--step-accent) 38%, #173d61);
  border-radius: 24px;
  min-height: 300px;
  overflow: hidden;
  padding: 32px 28px;
}

.inst-steps article::after {
  background: var(--step-accent);
  bottom: 0;
  content: "";
  height: 5px;
  left: 0;
  opacity: .9;
  position: absolute;
  right: 0;
}

.inst-steps article:nth-child(2) { --step-accent: #a88bff; }
.inst-steps article:nth-child(3) { --step-accent: #3dd3a0; }
.inst-steps article:nth-child(4) { --step-accent: #ffb454; }

.inst-steps b {
  align-items: center;
  background: color-mix(in srgb, var(--step-accent) 18%, rgba(7, 20, 38, .8));
  border: 1px solid color-mix(in srgb, var(--step-accent) 52%, transparent);
  border-radius: 999px;
  color: var(--step-accent);
  display: flex;
  font-size: .78rem;
  height: 32px;
  justify-content: center;
  right: 24px;
  top: 24px;
  width: 44px;
}

.inst-steps article > i {
  background: color-mix(in srgb, var(--step-accent) 17%, #0d2948);
  border: 1px solid color-mix(in srgb, var(--step-accent) 50%, transparent);
  border-radius: 18px;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--step-accent) 18%, transparent);
  color: var(--step-accent);
  font-size: 1.55rem;
  height: 64px;
  width: 64px;
}

.inst-steps h3 {
  font-size: 1.35rem;
  line-height: 1.2;
  margin: 38px 0 13px;
}

.inst-steps p {
  color: #c8d8e9;
  font-size: .98rem;
  line-height: 1.7;
  margin: 0;
}

.inst-pricing-grid {
  gap: 24px;
  max-width: 1180px;
}

.inst-price-card {
  --plan-accent: #2678ff;
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--plan-accent) 15%, transparent), transparent 34%),
    linear-gradient(155deg, color-mix(in srgb, var(--plan-accent) 8%, #fff), #fff 58%);
  border: 2px solid color-mix(in srgb, var(--plan-accent) 30%, var(--inst-line));
  border-radius: 26px;
  box-shadow: 0 24px 56px color-mix(in srgb, var(--plan-accent) 10%, transparent);
  display: flex;
  flex-direction: column;
  min-height: 540px;
  overflow: hidden;
  padding: 34px;
  transition: .25s ease;
}

.inst-price-card::before {
  background: linear-gradient(90deg, var(--plan-accent), color-mix(in srgb, var(--plan-accent) 45%, transparent));
  content: "";
  height: 7px;
  inset: 0 0 auto;
  position: absolute;
}

.inst-price-card.trial { --plan-accent: #2478f2; }
.inst-price-card.monthly { --plan-accent: #7257f4; }
.inst-price-card.annual { --plan-accent: #c47b12; }
.inst-price-card.lifetime { --plan-accent: #079478; }
.inst-price-card:hover {
  border-color: var(--plan-accent);
  box-shadow: 0 30px 66px color-mix(in srgb, var(--plan-accent) 18%, transparent);
  transform: translateY(-7px);
}

.inst-plan-heading {
  align-items: center;
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
}

.inst-plan-heading > i {
  align-items: center;
  background: color-mix(in srgb, var(--plan-accent) 12%, #fff);
  border: 1px solid color-mix(in srgb, var(--plan-accent) 28%, transparent);
  border-radius: 14px;
  color: var(--plan-accent);
  display: flex;
  font-size: 1.3rem;
  height: 50px;
  justify-content: center;
  width: 50px;
}

.inst-plan-heading small {
  color: var(--plan-accent);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.inst-price-card h3 {
  font-size: 1.65rem;
  line-height: 1.2;
  margin: 0 0 9px;
}

.inst-price-card > p {
  font-size: .92rem;
  line-height: 1.65;
  min-height: 48px;
}

.inst-price {
  background: color-mix(in srgb, var(--plan-accent) 9%, #fff);
  border: 1px solid color-mix(in srgb, var(--plan-accent) 24%, var(--inst-line));
  border-radius: 18px;
  margin: 24px 0;
  padding: 18px 20px;
}

.inst-price strong {
  color: var(--plan-accent);
  font-size: 2.15rem;
}

.inst-price span { font-size: .86rem; }
.inst-price.inst-trial-value {
  align-items: center;
  display: flex;
  gap: 14px;
}

.inst-trial-value > i {
  align-items: center;
  background: color-mix(in srgb, var(--plan-accent) 14%, #fff);
  border-radius: 14px;
  color: var(--plan-accent);
  display: flex;
  flex: 0 0 48px;
  font-size: 1.25rem;
  height: 48px;
  justify-content: center;
}

.inst-trial-value > span {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.inst-trial-value > span strong {
  color: var(--plan-accent);
  font-size: 1.35rem;
  letter-spacing: -.025em;
  line-height: 1.15;
}

.inst-trial-value > span small {
  color: var(--inst-muted);
  font-size: .76rem;
  line-height: 1.35;
}
.inst-price-card ul { gap: 13px; margin-bottom: 28px; }
.inst-price-card li { font-size: .88rem; line-height: 1.45; }
.inst-price-card li i { color: var(--plan-accent); font-size: 1rem; }
.inst-price-card > a {
  background: linear-gradient(120deg, var(--plan-accent), color-mix(in srgb, var(--plan-accent) 70%, #263b68));
  box-shadow: 0 12px 26px color-mix(in srgb, var(--plan-accent) 22%, transparent);
  font-size: .9rem;
  margin-top: auto;
  min-height: 50px;
  padding: 14px 17px;
}

.inst-plan-label {
  background: var(--plan-accent);
  font-size: .68rem;
  padding: 8px 12px;
  right: 24px;
  top: 25px;
}

[data-theme="dark"] .inst-price-card,
[data-theme="dark"] .inst-price-card.highlight {
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--plan-accent) 20%, transparent), transparent 35%),
    linear-gradient(155deg, color-mix(in srgb, var(--plan-accent) 11%, #0b1b2e), #0b1b2e 62%);
}

[data-theme="dark"] .inst-plan-heading > i,
[data-theme="dark"] .inst-price {
  background: color-mix(in srgb, var(--plan-accent) 12%, #0b1b2e);
}

[data-theme="dark"] .inst-trial-value > i {
  background: color-mix(in srgb, var(--plan-accent) 16%, #0b1b2e);
}

@media (max-width: 900px) {
  .inst-price-card { min-height: 0; }
  .inst-steps article { min-height: 280px; }
}

@media (max-width: 760px) {
  .inst-feature-card { min-height: 0; padding: 29px 25px; }
  .inst-feature-card h3 { font-size: 1.35rem; }
  .inst-feature-card p { font-size: .94rem; }
  .inst-steps { grid-template-columns: 1fr; }
  .inst-steps article { min-height: 0; padding: 28px 24px 32px; }
  .inst-steps h3 { margin-top: 30px; }
  .inst-price-card { padding: 30px 24px; }
  .inst-plan-label { font-size: .58rem; right: 18px; top: 21px; }
}

/* Institutional navigation: clearer actions and a livelier visual identity. */
.inst-header {
  background:
    radial-gradient(circle at 8% 50%, rgba(38, 120, 255, .09), transparent 23%),
    radial-gradient(circle at 92% 50%, rgba(22, 160, 95, .07), transparent 22%),
    rgba(250, 252, 255, .94);
  border-bottom: 0;
  box-shadow: 0 12px 34px rgba(20, 54, 96, .1);
}

.inst-header::after {
  background: linear-gradient(90deg, #2678ff, #725cff 38%, #18a66a 70%, #ff9d32);
  bottom: 0;
  content: "";
  height: 3px;
  left: 0;
  opacity: .9;
  position: absolute;
  right: 0;
}

[data-theme="dark"] .inst-header {
  background:
    radial-gradient(circle at 8% 50%, rgba(38, 120, 255, .16), transparent 23%),
    radial-gradient(circle at 92% 50%, rgba(22, 160, 95, .1), transparent 22%),
    rgba(6, 18, 33, .94);
}

.inst-brand-mark {
  background: linear-gradient(145deg, #086df7, #5268f4 58%, #725cff);
  box-shadow: 0 10px 25px rgba(50, 98, 238, .32);
}

/* KyneX logo already contains its own illuminated frame. */
.brand-mark.brand-mark-logo,
.inst-brand-mark.inst-brand-mark-logo {
  background: transparent;
  box-shadow: none;
  border-radius: 50%;
  overflow: visible;
}

.brand-mark.brand-mark-logo img,
.inst-brand-mark.inst-brand-mark-logo img {
  height: 100%;
  object-fit: contain;
  transform: scale(1.12);
  width: 100%;
  filter: drop-shadow(0 4px 10px rgba(0, 102, 255, .22));
}

body.sidebar-collapsed .sidebar:not(:hover) .sidebar-brand-link {
  height: 54px;
  min-height: 54px;
  min-width: 54px;
  overflow: visible;
  width: 54px;
}

body.sidebar-collapsed .sidebar:not(:hover) .brand-mark.brand-mark-logo {
  height: 52px;
  width: 52px;
}

/* Interactive feedback for the topbar controls. */
.topbar .theme-toggle,
.topbar .notification-toggle,
.topbar .profile-toggle,
.topbar .status-pill {
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease, transform .18s ease;
}

@media (hover: hover) {
  .topbar .theme-toggle:hover,
  .topbar .notification-toggle:hover,
  .topbar .profile-toggle:hover {
    background: color-mix(in srgb, var(--brand) 8%, var(--panel));
    border-color: color-mix(in srgb, var(--brand) 58%, var(--line));
    box-shadow: 0 9px 22px color-mix(in srgb, var(--brand) 15%, transparent);
    color: var(--brand);
    transform: translateY(-2px);
  }

  .topbar .status-pill:hover {
    box-shadow: 0 8px 18px color-mix(in srgb, var(--ok) 14%, transparent);
    transform: translateY(-2px);
  }
}

.topbar .theme-toggle:focus-visible,
.topbar .notification-toggle:focus-visible,
.topbar .profile-toggle:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--brand) 28%, transparent);
  outline-offset: 2px;
}

.notification-toggle.has-notifications > i {
  animation: kynex-bell-pulse 2.8s ease-in-out infinite;
  color: var(--brand);
}

@keyframes kynex-bell-pulse {
  0%, 82%, 100% { transform: rotate(0); }
  86% { transform: rotate(13deg); }
  90% { transform: rotate(-11deg); }
  94% { transform: rotate(7deg); }
}

.notification-dropdown {
  max-height: min(620px, calc(100vh - 92px));
  overflow-y: auto;
  padding: 12px;
  width: min(410px, calc(100vw - 24px));
}

.notification-head > div {
  display: grid;
  gap: 1px;
}

.notification-head small {
  color: var(--muted);
  font-size: .7rem;
  font-weight: 700;
}

.notification-summary {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 11px 2px 8px;
}

.notification-summary span {
  align-items: center;
  background: var(--field);
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--muted);
  display: flex;
  font-size: .68rem;
  font-weight: 800;
  gap: 5px;
  justify-content: center;
  min-height: 35px;
  padding: 6px;
}

.notification-summary span i { color: var(--brand); }
.notification-summary span b { color: var(--ink); font-size: .78rem; }
.notification-list-label { color: var(--muted); font-size: .68rem; font-weight: 900; letter-spacing: .08em; padding: 7px 8px 3px; text-transform: uppercase; }

.notification-empty {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 24px 15px 20px;
}

.notification-empty > i {
  align-items: center;
  background: var(--chip-success);
  border-radius: 50%;
  color: var(--ok);
  display: inline-flex;
  font-size: 1.35rem;
  height: 48px;
  justify-content: center;
  margin-bottom: 3px;
  width: 48px;
}

.notification-empty strong { color: var(--ink); font-size: .95rem; }
.notification-empty span { color: var(--muted); font-size: .76rem; line-height: 1.4; max-width: 250px; }

.notification-footer-link {
  align-items: center;
  border-top: 1px solid var(--line);
  color: var(--brand);
  display: flex;
  font-size: .76rem;
  font-weight: 900;
  justify-content: space-between;
  margin-top: 5px;
  padding: 11px 8px 3px;
  text-decoration: none;
}

.notification-footer-link:hover { color: var(--brand-dark); }

.notification-updated {
  color: var(--muted);
  display: block;
  font-size: .64rem;
  font-weight: 700;
  padding: 5px 8px 0;
  text-align: right;
}

.notification-item.followup > i {
  background: color-mix(in srgb, #18a66a 13%, var(--panel));
  color: #18a66a;
}

.inst-nav {
  background: rgba(255, 255, 255, .55);
  border: 1px solid rgba(202, 216, 235, .65);
  border-radius: 999px;
  gap: 3px;
  padding: 5px;
}

[data-theme="dark"] .inst-nav {
  background: rgba(13, 34, 58, .72);
  border-color: #263e5a;
}

.inst-nav a {
  border-radius: 999px;
  color: #52637d;
  padding: 9px 14px;
  position: relative;
}

.inst-nav a::after {
  background: var(--nav-accent, #2678ff);
  border-radius: 999px;
  bottom: 4px;
  content: "";
  height: 3px;
  left: 50%;
  opacity: 0;
  position: absolute;
  transform: translateX(-50%);
  transition: .2s ease;
  width: 18px;
}

.inst-nav a:nth-child(2) { --nav-accent: #725cff; }
.inst-nav a:nth-child(3) { --nav-accent: #16a05f; }
.inst-nav a:nth-child(4) { --nav-accent: #e58a16; }
.inst-nav a:nth-child(5) { --nav-accent: #e34f76; }

.inst-nav a:hover,
.inst-nav a.active {
  background: #fff;
  box-shadow: 0 5px 14px rgba(35, 65, 106, .1);
  color: var(--nav-accent, #2678ff);
}

[data-theme="dark"] .inst-nav a:hover,
[data-theme="dark"] .inst-nav a.active {
  background: #132a46;
}

.inst-nav a:hover::after,
.inst-nav a.active::after { opacity: 1; }

.inst-theme {
  background: linear-gradient(145deg, #fff9e9, #fff);
  border-color: #f0dba9;
  color: #b87308;
  box-shadow: 0 7px 18px rgba(190, 126, 18, .1);
}

.inst-theme:hover {
  background: #fff4d6;
  border-color: #e9bd58;
  transform: translateY(-1px);
}

.inst-install {
  background: linear-gradient(120deg, #0f9f67, #22b978);
  border-color: #0f9f67;
  box-shadow: 0 10px 24px rgba(15, 159, 103, .22);
  color: #fff;
}

.inst-install:hover,
.inst-install.is-ready {
  background: linear-gradient(120deg, #0b8958, #18a96c);
  border-color: #0b8958;
  box-shadow: 0 13px 28px rgba(15, 159, 103, .3);
}

.inst-access {
  background: linear-gradient(120deg, #176df3, #4a64ee 58%, #725cff);
  border-color: #2d67ec;
  box-shadow: 0 11px 26px rgba(53, 91, 226, .28);
  padding-left: 20px;
  padding-right: 20px;
}

.inst-access:hover {
  background: linear-gradient(120deg, #0e5edc, #3f55d7 58%, #6248db);
  border-color: #3159d8;
  box-shadow: 0 14px 30px rgba(53, 91, 226, .36);
}

.inst-mobile-menu .inst-mobile-install {
  background: linear-gradient(120deg, #0f9f67, #22b978);
  border-color: #0f9f67;
  color: #fff;
}

.inst-mobile-menu .inst-access {
  background: linear-gradient(120deg, #176df3, #725cff);
}

.inst-nav a:nth-child(3) { --nav-accent: #14a889; }
.inst-nav a:nth-child(4) { --nav-accent: #16a05f; }
.inst-nav a:nth-child(5) { --nav-accent: #e58a16; }
.inst-nav a:nth-child(6) { --nav-accent: #e34f76; }

/* Landing header action sizing and app-store style access button. */
.inst-header-actions {
  gap: 10px;
}

.inst-header-actions .inst-install,
.inst-header-actions .inst-access {
  border-radius: 13px;
  font-size: .82rem;
  gap: 8px;
  height: 42px;
  min-height: 42px;
  padding: 0 17px;
  white-space: nowrap;
}

.inst-header-actions .inst-install i,
.inst-header-actions .inst-access i {
  font-size: .95rem;
  line-height: 1;
}

.inst-header-actions .inst-access {
  background:
    radial-gradient(circle at 18% 15%, rgba(255, 255, 255, .22), transparent 34%),
    linear-gradient(120deg, #206cff 0%, #4c63ef 52%, #6b4dff 100%);
  border-color: rgba(69, 95, 239, .9);
  box-shadow: 0 11px 24px rgba(71, 89, 231, .28);
  min-width: 120px;
  overflow: hidden;
  position: relative;
}

.inst-header-actions .inst-access::after {
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .28), transparent);
  content: "";
  inset: -60% auto -60% -55%;
  position: absolute;
  transform: rotate(18deg);
  transition: left .35s ease;
  width: 42%;
}

.inst-header-actions .inst-access:hover {
  background:
    radial-gradient(circle at 18% 15%, rgba(255, 255, 255, .26), transparent 34%),
    linear-gradient(120deg, #155ee8 0%, #3f54d8 52%, #5b3ee6 100%);
  border-color: rgba(58, 77, 215, .95);
  box-shadow: 0 15px 30px rgba(71, 89, 231, .38);
  color: #fff;
  transform: translateY(-2px);
}

.inst-header-actions .inst-access:hover::after {
  left: 115%;
}

.inst-header-actions .inst-install {
  min-width: 112px;
}

.inst-mobile-menu .inst-access {
  gap: 8px;
}

/* Institutional interaction and readability refinements. */
.inst-nav a[href="#inicio"] { --nav-accent: #2678ff; }
.inst-nav a[href="#plataforma"] { --nav-accent: #725cff; }
.inst-nav a[href="#recursos"] { --nav-accent: #e58a16; }
.inst-nav a[href="#conhecimento"] { --nav-accent: #1687d9; }
.inst-nav a[href="#integracoes"] { --nav-accent: #16a05f; }
.inst-nav a[href="#planos"] { --nav-accent: #e34f76; }
.inst-nav a[href="#contato"] { --nav-accent: #8b5cf6; }

.inst-header-actions .inst-install {
  overflow: hidden;
  position: relative;
  transition: background .24s ease, border-color .24s ease, box-shadow .24s ease, transform .24s ease;
}

.inst-header-actions .inst-install::after {
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .42), transparent);
  content: "";
  inset: -70% auto -70% -60%;
  position: absolute;
  transform: rotate(18deg);
  transition: left .42s ease;
  width: 45%;
}

.inst-header-actions .inst-install:hover {
  background: linear-gradient(120deg, #08794d, #0ea968 58%, #20c681);
  border-color: #08794d;
  box-shadow: 0 17px 34px rgba(10, 145, 88, .38);
  color: #fff;
  transform: translateY(-3px) scale(1.025);
}

.inst-header-actions .inst-install:hover::after { left: 120%; }
.inst-header-actions .inst-install:hover i { transform: scale(1.14); }
.inst-header-actions .inst-install i { transition: transform .24s ease; }

.inst-hero-signals {
  gap: 13px;
  max-width: 760px;
}

.inst-hero-signals article {
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--signal-accent) 14%, transparent), transparent 45%),
    rgba(255, 255, 255, .86);
  border: 1px solid color-mix(in srgb, var(--signal-accent) 34%, #c4d5eb);
  border-radius: 18px;
  box-shadow: 0 14px 32px color-mix(in srgb, var(--signal-accent) 10%, transparent);
  gap: 12px;
  grid-template-columns: 44px minmax(0, 1fr);
  min-height: 86px;
  padding: 15px 14px;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

.inst-hero-signals article:nth-child(1) { --signal-accent: #2678ff; }
.inst-hero-signals article:nth-child(2) { --signal-accent: #16a05f; }
.inst-hero-signals article:nth-child(3) { --signal-accent: #725cff; }
.inst-hero-signals article:hover {
  border-color: var(--signal-accent);
  box-shadow: 0 20px 40px color-mix(in srgb, var(--signal-accent) 18%, transparent);
  transform: translateY(-4px);
}
.inst-hero-signals article > i {
  background: color-mix(in srgb, var(--signal-accent) 12%, #fff);
  color: var(--signal-accent);
  font-size: 1.05rem;
  height: 44px;
  width: 44px;
}
.inst-hero-signals article:nth-child(2) > i,
.inst-hero-signals article:nth-child(3) > i {
  background: color-mix(in srgb, var(--signal-accent) 12%, #fff);
  color: var(--signal-accent);
}
.inst-hero-signals strong { color: var(--inst-text); font-size: .88rem; line-height: 1.25; }
.inst-hero-signals small { font-size: .75rem; line-height: 1.45; margin-top: 4px; }
[data-theme="dark"] .inst-hero-signals article {
  background: linear-gradient(145deg, color-mix(in srgb, var(--signal-accent) 12%, #0c223a), #0c223a 68%);
  border-color: color-mix(in srgb, var(--signal-accent) 42%, #29425f);
}

.inst-faq-list details {
  overflow: hidden;
  transition: border-color .24s ease, box-shadow .24s ease, background .24s ease;
}
.inst-faq-list details:hover,
.inst-faq-list details[open] {
  border-color: color-mix(in srgb, var(--inst-blue) 48%, var(--inst-line));
  box-shadow: 0 12px 28px rgba(37, 91, 160, .1);
}
.inst-faq-list summary { transition: color .2s ease, padding .24s ease; }
.inst-faq-list details[open] summary { color: var(--inst-blue); }
.inst-faq-list summary i { transition: color .24s ease, transform .3s cubic-bezier(.2, .8, .2, 1); }
.inst-faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows .34s cubic-bezier(.2, .8, .2, 1), opacity .24s ease;
}
.inst-faq-answer > div { min-height: 0; overflow: hidden; }
.inst-faq-list details[open] .inst-faq-answer { grid-template-rows: 1fr; opacity: 1; }
.inst-faq-list details p { margin: 0; }

.inst-final-cta a {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  min-height: 48px;
  transition: background .24s ease, border-color .24s ease, box-shadow .24s ease, color .24s ease, transform .24s ease;
}
.inst-final-cta a:first-child:hover {
  background: #071a31;
  border-color: #071a31;
  box-shadow: 0 16px 34px rgba(6, 20, 38, .3);
  color: #fff;
  transform: translateY(-4px);
}
.inst-final-cta a:first-child:hover i { transform: translateX(4px); }
.inst-final-cta a:first-child i { transition: transform .24s ease; }
.inst-final-cta a:last-child:hover {
  background: rgba(255, 255, 255, .18);
  border-color: #fff;
  box-shadow: 0 14px 30px rgba(24, 29, 93, .22);
  color: #fff;
  transform: translateY(-4px);
}

@media (max-width: 760px) {
  .inst-hero-signals article { min-height: 78px; }
  .inst-hero-signals strong { font-size: .86rem; }
  .inst-hero-signals small { font-size: .74rem; }
}

.inst-technical-showcase {
  background:
    radial-gradient(circle at 8% 16%, rgba(71, 132, 255, .22), transparent 27%),
    radial-gradient(circle at 92% 82%, rgba(24, 182, 132, .18), transparent 28%),
    linear-gradient(145deg, #061425, #0b2949 58%, #10223c);
  color: #fff;
  overflow: hidden;
  position: relative;
  scroll-margin-top: 76px;
}

.inst-technical-showcase::before {
  background-image: radial-gradient(rgba(121, 173, 232, .3) 1px, transparent 1px);
  background-size: 25px 25px;
  content: "";
  inset: 0;
  opacity: .35;
  pointer-events: none;
  position: absolute;
}

.inst-technical-showcase .inst-container {
  position: relative;
  z-index: 1;
}

.inst-technical-showcase .inst-section-heading > span { color: #68d9b4; }
.inst-technical-showcase .inst-section-heading p { color: #bdcee1; }

.inst-tech-story-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.inst-tech-story {
  --tech-accent: #2f86ff;
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--tech-accent) 21%, transparent), transparent 32%),
    rgba(8, 30, 53, .82);
  border: 1px solid color-mix(in srgb, var(--tech-accent) 42%, #264563);
  border-radius: 28px;
  box-shadow: 0 28px 70px rgba(0, 0, 0, .2);
  display: grid;
  gap: 30px;
  overflow: hidden;
  padding: 32px;
  position: relative;
}

.inst-tech-story::before {
  background: linear-gradient(90deg, var(--tech-accent), color-mix(in srgb, var(--tech-accent) 25%, transparent));
  content: "";
  height: 6px;
  inset: 0 0 auto;
  position: absolute;
}

.inst-tech-story.tests {
  --tech-accent: #26b67a;
  align-items: center;
  grid-column: 1 / -1;
  grid-template-columns: minmax(330px, .78fr) minmax(520px, 1.22fr);
  padding: 38px;
}

.inst-tech-story.manuals { --tech-accent: #2f86ff; }
.inst-tech-story.compare { --tech-accent: #8a6cff; }

.inst-tech-kicker {
  align-items: center;
  color: var(--tech-accent);
  display: inline-flex;
  font-size: .75rem;
  font-weight: 900;
  gap: 8px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.inst-tech-kicker i {
  align-items: center;
  background: color-mix(in srgb, var(--tech-accent) 18%, transparent);
  border: 1px solid color-mix(in srgb, var(--tech-accent) 42%, transparent);
  border-radius: 10px;
  display: flex;
  font-size: 1rem;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.inst-tech-story h3 {
  color: #fff;
  font-size: clamp(1.55rem, 2.3vw, 2.15rem);
  font-weight: 900;
  letter-spacing: -.035em;
  line-height: 1.15;
  margin: 18px 0 13px;
}

.inst-tech-story-copy > p {
  color: #b9cadd;
  font-size: .96rem;
  line-height: 1.72;
  margin: 0;
}

.inst-tech-story-copy ul {
  display: grid;
  gap: 11px;
  list-style: none;
  margin: 25px 0 0;
  padding: 0;
}

.inst-tech-story-copy li {
  align-items: center;
  color: #d6e3ef;
  display: flex;
  font-size: .86rem;
  font-weight: 700;
  gap: 9px;
}

.inst-tech-story-copy li i { color: var(--tech-accent); }

.inst-tech-screen {
  background: #f7faff;
  border: 1px solid rgba(191, 210, 233, .9);
  border-radius: 20px;
  box-shadow: 0 24px 52px rgba(0, 0, 0, .26);
  color: #10213a;
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 20px;
}

.inst-tech-screen-top {
  align-items: center;
  border-bottom: 1px solid #dce6f2;
  display: grid;
  gap: 11px;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  padding-bottom: 14px;
}

.inst-tech-screen-top > span {
  align-items: center;
  background: linear-gradient(145deg, #139c68, #31c68b);
  border-radius: 12px;
  color: #fff;
  display: flex;
  font-size: 1.15rem;
  height: 44px;
  justify-content: center;
  width: 44px;
}

.inst-tech-screen-top strong,
.inst-tech-screen-top small { display: block; }
.inst-tech-screen-top strong { font-size: .92rem; font-weight: 900; }
.inst-tech-screen-top small { color: #6b7c92; font-size: .7rem; margin-top: 2px; }
.inst-tech-screen-top em { background: #fff1cf; border-radius: 999px; color: #9b6810; font-size: .64rem; font-style: normal; font-weight: 900; padding: 7px 9px; }

.inst-test-metrics {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.inst-test-metrics span {
  background: #fff;
  border: 1px solid #dce6f2;
  border-radius: 13px;
  display: grid;
  gap: 5px;
  padding: 13px;
}

.inst-test-metrics small { color: #718198; font-size: .64rem; font-weight: 800; }
.inst-test-metrics strong { font-size: 1.05rem; font-weight: 900; }
.inst-test-metrics .measured { border-color: #9fc3fb; }
.inst-test-metrics .measured strong { color: #2678ff; }
.inst-test-metrics .approved { border-color: #9fddc1; }
.inst-test-metrics .approved strong { color: #159563; }

.inst-test-progress { background: #e2eaf4; border-radius: 999px; height: 7px; overflow: hidden; }
.inst-test-progress span { background: linear-gradient(90deg, #159e69, #36ca91); border-radius: inherit; display: block; height: 100%; }
.inst-test-steps-preview { display: grid; gap: 8px; }
.inst-test-steps-preview span { align-items: center; background: #fff; border: 1px solid #dce6f2; border-radius: 11px; display: grid; gap: 9px; grid-template-columns: 27px minmax(0, 1fr) auto; padding: 9px 11px; }
.inst-test-steps-preview span > i { align-items: center; background: #eef3f9; border-radius: 8px; color: #8291a5; display: flex; height: 27px; justify-content: center; width: 27px; }
.inst-test-steps-preview b { font-size: .74rem; }
.inst-test-steps-preview em { color: #8391a3; font-size: .61rem; font-style: normal; font-weight: 800; }
.inst-test-steps-preview .done i { background: #e3f7ed; color: #159563; }
.inst-test-steps-preview .active { border-color: #8db8f8; box-shadow: 0 0 0 3px rgba(38, 120, 255, .07); }
.inst-test-steps-preview .active i { background: #e8f1ff; color: #2678ff; }
.inst-test-steps-preview .active em { color: #2678ff; }

.inst-manual-search {
  align-items: center;
  background: #eaf2ff;
  border: 1px solid #cbddf8;
  border-radius: 12px;
  color: #58708f;
  display: flex;
  font-size: .72rem;
  gap: 9px;
  padding: 12px;
}

.inst-manual-file {
  align-items: center;
  background: #fff;
  border: 1px solid #dce6f2;
  border-radius: 13px;
  display: grid;
  gap: 11px;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  padding: 12px;
}

.inst-manual-file > i { align-items: center; background: #e8f1ff; border-radius: 10px; color: #2678ff; display: flex; font-size: 1rem; height: 38px; justify-content: center; width: 38px; }
.inst-manual-file:nth-child(3) > i { background: #e4f8ef; color: #159563; }
.inst-manual-file:nth-child(4) > i { background: #fff1dd; color: #c27b12; }
.inst-manual-file strong,
.inst-manual-file small { display: block; }
.inst-manual-file strong { font-size: .75rem; }
.inst-manual-file small { color: #738298; font-size: .62rem; margin-top: 2px; }
.inst-manual-file em { background: #eef3f9; border-radius: 999px; color: #61738c; font-size: .56rem; font-style: normal; font-weight: 900; padding: 6px 8px; }

.inst-compare-head,
.inst-compare-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: 1.35fr 1fr 1fr;
}

.inst-compare-head { color: #718198; font-size: .62rem; font-weight: 900; padding: 0 10px; text-transform: uppercase; }
.inst-compare-row { background: #fff; border: 1px solid #dce6f2; border-radius: 12px; font-size: .7rem; padding: 11px 10px; }
.inst-compare-row span { align-items: center; display: flex; gap: 7px; }
.inst-compare-row span i { color: #795ef1; }
.inst-compare-row b { color: #34465f; }
.inst-compare-note { align-items: center; background: #eeeaff; border-radius: 11px; color: #674fd2; display: flex; font-size: .65rem; font-weight: 800; gap: 8px; padding: 10px 11px; }

@media (max-width: 1050px) {
  .inst-tech-story.tests { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .inst-tech-story-grid { grid-template-columns: 1fr; }
  .inst-tech-story,
  .inst-tech-story.tests { grid-column: auto; padding: 25px 20px; }
  .inst-tech-screen { border-radius: 16px; padding: 14px; }
  .inst-test-metrics { grid-template-columns: 1fr; }
  .inst-test-steps-preview span { grid-template-columns: 27px minmax(0, 1fr); }
  .inst-test-steps-preview em { grid-column: 2; }
  .inst-tech-screen-top { align-items: start; grid-template-columns: 40px minmax(0, 1fr); }
  .inst-tech-screen-top > span { height: 40px; width: 40px; }
  .inst-tech-screen-top em { grid-column: 2; justify-self: start; }
  .inst-compare-head,
  .inst-compare-row { grid-template-columns: 1.2fr .9fr .9fr; }
}

.main .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--ink);
  --bs-table-border-color: var(--line);
  --bs-table-striped-bg: color-mix(in srgb, var(--soft) 72%, transparent);
  --bs-table-striped-color: var(--ink);
  --bs-table-hover-bg: color-mix(in srgb, var(--brand) 7%, transparent);
  --bs-table-hover-color: var(--ink);
  color: var(--ink);
}

.main .table > :not(caption) > * > * {
  background-color: transparent;
  border-bottom-color: var(--line);
  color: var(--ink);
}

.main .table thead th {
  color: var(--muted);
}

.modal-header .btn-close {
  background-image: none !important;
  background-color: var(--field);
  border: 1px solid var(--line);
  border-radius: 7px;
  flex: 0 0 38px;
  height: 38px;
  opacity: 1;
  padding: 0;
  position: relative;
  width: 38px;
}

.modal-header .btn-close::before,
.modal-header .btn-close::after {
  background: var(--ink);
  border-radius: 999px;
  content: "";
  height: 1.5px;
  left: 10px;
  position: absolute;
  top: 18px;
  width: 16px;
}

.modal-header .btn-close::before { transform: rotate(45deg); }
.modal-header .btn-close::after { transform: rotate(-45deg); }
.modal-header .btn-close:hover { background: var(--brand-soft); border-color: var(--brand); }

.modal .section-title > button[data-bs-dismiss="modal"]:has(.bi-x-lg) {
  align-items: center;
  display: inline-flex;
  flex: 0 0 38px;
  height: 38px;
  justify-content: center;
  padding: 0;
  width: 38px;
}

.main .dropdown-menu,
body > .table-action-portal {
  --bs-dropdown-bg: var(--field);
  --bs-dropdown-border-color: var(--line);
  --bs-dropdown-color: var(--ink);
  --bs-dropdown-link-color: var(--ink);
  --bs-dropdown-link-hover-bg: var(--brand-soft);
  --bs-dropdown-link-hover-color: var(--brand);
  background: var(--field);
  border-color: var(--line);
  box-shadow: 0 16px 38px rgba(0, 0, 0, .18);
  color: var(--ink);
  min-width: 176px;
  padding: 6px;
  z-index: 1090;
}

.main .dropdown-menu .dropdown-item,
body > .table-action-portal .dropdown-item {
  border-radius: 6px;
  color: var(--ink);
  padding: 8px 10px;
}

.main .dropdown-menu .dropdown-divider,
body > .table-action-portal .dropdown-divider { border-color: var(--line); }

body > .table-action-portal {
  inset: auto !important;
  left: var(--table-action-left, 8px) !important;
  margin: 0 !important;
  position: fixed !important;
  top: var(--table-action-top, 8px) !important;
  transform: none !important;
}

@media (max-width: 991.98px) {
  .compact-filter:has(> div:nth-of-type(3)) {
    grid-template-columns: 1fr 1fr;
  }
  .compact-filter:has(> div:nth-of-type(3)) > div:first-child { grid-column: 1 / -1; }
}

@media (max-width: 575.98px) {
  .compact-filter,
  .compact-filter:has(> div:nth-of-type(3)) { grid-template-columns: 1fr 44px; }
  .compact-filter > div,
  .compact-filter:has(> div:nth-of-type(3)) > div,
  .compact-filter:has(> div:nth-of-type(3)) > div:first-child { grid-column: 1 / -1; }
  .compact-filter > .btn-brand { grid-column: 1; }
  .compact-filter > .filter-clear,
  .compact-filter > a:last-child { grid-column: 2; }
}

/* Relatorios da oficina */
.report-print-header{display:none}.report-hero .office-hero-stack strong{font-size:1.25rem}.report-filter-panel{align-items:end;display:flex;gap:14px;justify-content:space-between}.report-filter-form{align-items:end;display:grid;flex:1;gap:10px;grid-template-columns:minmax(150px,.7fr) minmax(145px,.55fr) minmax(145px,.55fr) minmax(190px,.8fr) auto}.report-filter-form .form-label{font-size:.72rem;font-weight:900;margin-bottom:5px;text-transform:uppercase}.report-filter-form .form-control,.report-filter-form .form-select,.report-filter-form .btn{font-size:.84rem;min-height:42px}.report-filter-form [data-report-custom].is-hidden{display:none}.report-export-actions{display:flex;gap:8px}.report-export-actions .btn{align-items:center;display:inline-flex;font-size:.8rem;font-weight:800;gap:6px;min-height:42px;white-space:nowrap}.report-kpi-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.report-kpi{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;display:flex;justify-content:space-between;min-height:130px;overflow:hidden;padding:18px;position:relative}.report-kpi::before{content:"";height:4px;inset:0 0 auto;position:absolute}.report-kpi.revenue::before{background:#22c55e}.report-kpi.ticket::before{background:var(--brand)}.report-kpi.margin::before{background:#f59e0b}.report-kpi.orders::before{background:#ef4444}.report-kpi>div{display:grid;gap:4px}.report-kpi span{color:var(--muted);font-size:.75rem;font-weight:900;text-transform:uppercase}.report-kpi strong{color:var(--ink);font-size:1.55rem;font-weight:900}.report-kpi small{color:var(--muted);font-size:.72rem;font-weight:700}.report-kpi>i{align-items:center;border-radius:8px;display:flex;font-size:1.25rem;height:46px;justify-content:center;width:46px}.report-kpi.revenue>i{background:color-mix(in srgb,#22c55e 13%,transparent);color:#16a34a}.report-kpi.ticket>i{background:var(--brand-soft);color:var(--brand)}.report-kpi.margin>i{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#d97706}.report-kpi.orders>i{background:color-mix(in srgb,#ef4444 12%,transparent);color:#dc2626}.report-main-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr)}.report-chart-card{min-width:0}.report-bar-chart{align-items:end;display:flex;gap:7px;height:260px;overflow-x:auto;padding:24px 2px 0}.report-bar-column{align-items:center;display:grid;flex:1 0 34px;gap:5px;grid-template-rows:18px 1fr 17px;height:100%;min-width:34px;text-align:center}.report-bar-value{color:var(--muted);font-size:.55rem;font-weight:800;overflow:hidden;white-space:nowrap}.report-bar-track{align-items:end;background:var(--soft);border-radius:5px 5px 2px 2px;display:flex;height:100%;overflow:hidden}.report-bar-track span{background:linear-gradient(180deg,var(--button-end),var(--button-start));border-radius:5px 5px 2px 2px;display:block;min-height:3px;transition:height .25s ease;width:100%}.report-bar-column small{color:var(--muted);font-size:.62rem;font-weight:750}.report-payment-list{display:grid;gap:5px}.report-payment-list article{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:9px;grid-template-columns:36px minmax(0,1fr) auto;padding:10px 0}.report-payment-list article:last-child{border-bottom:0}.report-payment-icon{align-items:center;background:var(--brand-soft);border-radius:7px;color:var(--brand);display:flex;height:34px;justify-content:center;width:34px}.report-payment-list article>div{display:grid;gap:2px}.report-payment-list article strong{font-size:.8rem}.report-payment-list article div>span{color:var(--muted);font-size:.66rem}.report-payment-list article div>div{background:var(--soft);border-radius:99px;height:4px;margin-top:4px;overflow:hidden}.report-payment-list article div>div i{background:var(--brand);display:block;height:100%}.report-payment-list article>b{font-size:.78rem;white-space:nowrap}.report-operational-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.report-status-grid{display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.report-status-grid>div{background:var(--soft);border:1px solid var(--line);border-radius:7px;display:grid;gap:4px;padding:12px}.report-status-grid span{color:var(--muted);font-size:.68rem;font-weight:800}.report-status-grid strong{font-size:1.25rem}.report-inline-metrics{border-top:1px solid var(--line);display:flex;gap:22px;margin-top:14px;padding-top:13px}.report-inline-metrics span{color:var(--muted);font-size:.75rem}.report-inline-metrics i{color:var(--brand);margin-right:5px}.report-inline-metrics strong{color:var(--ink)}.report-stock-highlight{display:grid;gap:10px;grid-template-columns:1fr 1fr}.report-stock-highlight>div{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:7px;display:flex;gap:10px;padding:13px}.report-stock-highlight i{align-items:center;background:var(--brand-soft);border-radius:7px;color:var(--brand);display:flex;height:36px;justify-content:center;width:36px}.report-stock-highlight span{color:var(--muted);font-size:.72rem}.report-stock-highlight strong{color:var(--ink);display:block;font-size:1.05rem}.report-stock-highlight .is-alert i{background:var(--danger-soft);color:var(--danger)}.report-stock-cost{align-items:center;border-top:1px solid var(--line);display:flex;justify-content:space-between;margin-top:14px;padding-top:13px}.report-stock-cost span{color:var(--muted);font-size:.75rem}.report-stock-cost strong{font-size:1.05rem}.report-ranking,.report-order-list{display:grid}.report-ranking article{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:10px;grid-template-columns:32px minmax(0,1fr) auto;padding:10px 0}.report-ranking article:last-child{border-bottom:0}.report-rank{color:var(--brand);font-size:.78rem;font-weight:900}.report-ranking article>div{min-width:0}.report-ranking strong,.report-ranking small{display:block}.report-ranking strong{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-ranking small{color:var(--muted);font-size:.65rem;margin-top:3px}.report-ranking small i{color:var(--brand);margin-right:3px}.report-ranking b{font-size:.76rem;white-space:nowrap}.report-section-link{color:var(--brand);font-size:.72rem;font-weight:550;text-decoration:none}.report-order-list article{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;padding:10px 0}.report-order-list article:last-child{border-bottom:0}.report-order-list article>div:first-child{min-width:0}.report-order-list strong,.report-order-list span,.report-order-list small{display:block}.report-order-list article>div:first-child strong{font-size:.78rem}.report-order-list article>div:first-child span{font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-order-list small{color:var(--muted);font-size:.62rem;margin-top:2px}.report-order-list article>div:last-child{text-align:right}.report-order-list article b{font-size:.72rem;margin-top:5px}.report-empty{align-items:center;color:var(--muted);display:flex;flex-direction:column;font-size:.75rem;gap:8px;justify-content:center;min-height:150px;text-align:center}.report-empty i{color:var(--brand);font-size:1.4rem}.report-disclaimer{align-items:flex-start;background:var(--brand-soft);border:1px solid color-mix(in srgb,var(--brand) 25%,var(--line));border-radius:8px;color:var(--muted);display:flex;font-size:.72rem;gap:9px;padding:11px 13px}.report-disclaimer i{color:var(--brand)}.report-disclaimer strong{color:var(--ink)}

/* Semantic information cards stay independent from each user's brand colors. */

/* Mechanic management and personal performance */
.mechanic-form-modal .modal-dialog { max-width: 1180px; }
.mechanic-form-modal .modal-body { background: color-mix(in srgb, var(--soft) 38%, var(--panel)); }
.mechanic-commission-grid { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.mechanic-commission-card { background:var(--panel); border:1px solid var(--line); border-radius:14px; display:grid; gap:14px; padding:16px; }
.mechanic-commission-card > div:first-child { align-items:center; display:flex; gap:12px; }
.mechanic-commission-card > div:first-child > i { align-items:center; border-radius:11px; display:flex; flex:0 0 42px; font-size:1.05rem; height:42px; justify-content:center; }
.mechanic-commission-card.product > div:first-child > i { background:#e8f8f1; color:#0f9f6e; }
.mechanic-commission-card.service > div:first-child > i { background:#eaf2ff; color:#2477f3; }
.mechanic-commission-card strong,.mechanic-commission-card small { display:block; }
.mechanic-commission-card strong { font-size:.88rem; }
.mechanic-commission-card small { color:var(--muted); font-size:.72rem; margin-top:2px; }
.mechanic-permission-manager { background:color-mix(in srgb,var(--brand) 2%,var(--panel)); border:1px solid var(--line); border-radius:18px; padding:14px; }
.mechanic-access-fields{background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 3%,var(--panel)),var(--panel));border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line));border-radius:18px;display:grid;gap:14px;padding:15px;transition:border-color .2s ease,box-shadow .2s ease,opacity .2s ease}.mechanic-access-fields.is-enabled{border-color:color-mix(in srgb,var(--brand) 38%,var(--line));box-shadow:0 12px 28px color-mix(in srgb,var(--brand) 7%,transparent)}.mechanic-access-fields.is-disabled [data-mechanic-access-controls],.mechanic-access-fields.is-disabled .mechanic-permission-manager{opacity:.6}.mechanic-access-state{align-items:center;background:color-mix(in srgb,#d99000 8%,var(--panel));border:1px solid color-mix(in srgb,#d99000 24%,var(--line));border-radius:13px;display:flex;gap:10px;padding:11px 13px}.mechanic-access-state>i{align-items:center;background:color-mix(in srgb,#d99000 14%,var(--panel));border-radius:9px;color:#b87500;display:flex;flex:0 0 36px;height:36px;justify-content:center}.mechanic-access-state span{display:grid;gap:2px}.mechanic-access-state strong{font-size:.78rem}.mechanic-access-state small{color:var(--muted);font-size:.69rem}.mechanic-access-state[hidden]{display:none!important}
.mechanic-permission-summary { align-items:center; display:flex; gap:12px; justify-content:space-between; margin:-2px 2px 13px; }
.mechanic-permission-summary span { align-items:center; color:var(--ink); display:flex; font-size:.72rem; font-weight:700; gap:6px; }
.mechanic-permission-summary span i,.mechanic-permission-summary span strong { color:var(--brand); }
.mechanic-permission-summary small { color:var(--muted); font-size:.64rem; }
.mechanic-rate { display:grid; gap:4px; }
.mechanic-rate span { align-items:center; color:var(--muted); display:flex; font-size:.72rem; font-weight:750; gap:6px; white-space:nowrap; }
.mechanic-rate i { color:var(--brand); }

.mechanic-dashboard { background:linear-gradient(125deg,#0b2d59,#1660bd 62%,#2d80f5); border-radius:18px; box-shadow:0 20px 42px rgba(18,83,164,.18); color:#fff; overflow:hidden; padding:22px; }
.mechanic-dashboard-head { align-items:center; display:flex; gap:22px; justify-content:space-between; }
.mechanic-dashboard-head span { color:#86c6ff; font-size:.68rem; font-weight:850; letter-spacing:.09em; }
.mechanic-dashboard-head h2 { font-size:1.35rem; margin:4px 0; }
.mechanic-dashboard-head p { color:rgba(255,255,255,.72); font-size:.78rem; margin:0; }
.mechanic-dashboard-head > div:last-child { background:rgba(255,255,255,.11); border:1px solid rgba(255,255,255,.18); border-radius:14px; min-width:210px; padding:14px 18px; text-align:right; }
.mechanic-dashboard-head small,.mechanic-dashboard-head strong { display:block; }
.mechanic-dashboard-head small { color:rgba(255,255,255,.7); font-size:.68rem; }
.mechanic-dashboard-head strong { font-size:1.3rem; margin-top:3px; }
.mechanic-dashboard-grid { display:grid; gap:16px; grid-template-columns:minmax(0,1fr) minmax(340px,.8fr); margin-top:18px; }
.mechanic-dashboard-metrics { display:grid; gap:10px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.mechanic-dashboard-metrics article { align-items:center; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.16); border-radius:13px; display:flex; gap:11px; min-height:74px; padding:13px; }
.mechanic-dashboard-metrics article > i { align-items:center; background:rgba(255,255,255,.13); border-radius:9px; display:flex; flex:0 0 38px; height:38px; justify-content:center; }
.mechanic-dashboard-metrics small,.mechanic-dashboard-metrics strong { display:block; }
.mechanic-dashboard-metrics small { color:rgba(255,255,255,.68); font-size:.66rem; }
.mechanic-dashboard-metrics strong { font-size:1rem; margin-top:3px; }
.mechanic-dashboard-orders { background:var(--panel); border-radius:14px; color:var(--ink); padding:14px; }
.mechanic-dashboard-orders-title { align-items:center; display:flex; justify-content:space-between; margin-bottom:5px; }
.mechanic-dashboard-orders-title strong { font-size:.82rem; }
.mechanic-dashboard-orders-title a { color:var(--brand); font-size:.68rem; font-weight:750; text-decoration:none; }
.mechanic-dashboard-orders > a { align-items:center; border-bottom:1px solid var(--line); color:var(--ink); display:flex; gap:10px; justify-content:space-between; padding:10px 2px; text-decoration:none; }
.mechanic-dashboard-orders > a:last-of-type { border-bottom:0; }
.mechanic-dashboard-orders > a span { min-width:0; }
.mechanic-dashboard-orders > a strong,.mechanic-dashboard-orders > a small { display:block; }
.mechanic-dashboard-orders > a strong { font-size:.75rem; }
.mechanic-dashboard-orders > a small { color:var(--muted); font-size:.62rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mechanic-dashboard-orders > a em { color:#0f9f6e; font-size:.72rem; font-style:normal; font-weight:850; white-space:nowrap; }
@media(max-width:991.98px){.mechanic-dashboard-grid{grid-template-columns:1fr}.mechanic-commission-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.mechanic-dashboard{padding:16px}.mechanic-dashboard-head{align-items:stretch;flex-direction:column}.mechanic-dashboard-head>div:last-child{text-align:left}.mechanic-dashboard-metrics{grid-template-columns:1fr}.mechanic-permission-summary{align-items:flex-start;flex-direction:column;gap:3px}}
.dashboard-hero,.office-hero{box-shadow:0 18px 45px rgba(15,23,42,.16)}
.dashboard-card{--card-accent:#2563eb;background:linear-gradient(145deg,color-mix(in srgb,var(--card-accent) 5%,var(--panel)),var(--panel) 58%);border:1px solid var(--line);border-left:0;border-top:4px solid var(--card-accent);box-shadow:0 14px 30px rgba(15,23,42,.08);min-height:142px;overflow:hidden;position:relative;transition:box-shadow .2s ease,transform .2s ease}
.dashboard-card::after{background:var(--card-accent);border-radius:999px;content:"";height:84px;opacity:.055;position:absolute;right:-30px;top:-35px;width:84px}
.dashboard-card:hover{box-shadow:0 18px 38px rgba(15,23,42,.12);transform:translateY(-2px)}
.dashboard-card.accent-blue{--card-accent:#2563eb}.dashboard-card.accent-green{--card-accent:#16a34a}.dashboard-card.accent-yellow{--card-accent:#d99a00}.dashboard-card.accent-red{--card-accent:#dc2626}.dashboard-card.accent-violet{--card-accent:#7c3aed}.dashboard-card.accent-cyan{--card-accent:#0891b2}.dashboard-card.accent-orange{--card-accent:#ea580c}.dashboard-card.accent-rose{--card-accent:#e11d48}
.dashboard-card span{align-items:center;display:flex;gap:9px;margin-bottom:13px;position:relative;z-index:1}.dashboard-card span i{align-items:center;background:color-mix(in srgb,var(--card-accent) 13%,var(--panel));border:1px solid color-mix(in srgb,var(--card-accent) 22%,var(--line));border-radius:8px;color:var(--card-accent);display:inline-flex;font-size:1rem;height:38px;justify-content:center;margin:0;width:38px}.dashboard-card strong,.dashboard-card small{position:relative;z-index:1}.dashboard-card.compact{min-height:132px}
.notification-dashboard-card{--card-accent:#2563eb;background:linear-gradient(145deg,color-mix(in srgb,var(--card-accent) 5%,var(--panel)),var(--panel));border-color:color-mix(in srgb,var(--card-accent) 20%,var(--line));border-radius:8px;box-shadow:0 10px 24px rgba(15,23,42,.055);min-height:82px}.notification-dashboard-card.receipt{--card-accent:#2563eb}.notification-dashboard-card.pending{--card-accent:#d97706}.notification-dashboard-card.overdue{--card-accent:#dc2626}.notification-dashboard-card.receipt i,.notification-dashboard-card.pending i,.notification-dashboard-card.overdue i{background:color-mix(in srgb,var(--card-accent) 13%,var(--panel));border:1px solid color-mix(in srgb,var(--card-accent) 22%,var(--line));color:var(--card-accent)}
.notification-item.stock>i{background:color-mix(in srgb,#d99000 13%,var(--panel));color:#d99000}.notification-item.finance>i{background:color-mix(in srgb,#e11d48 12%,var(--panel));color:#e11d48}
.notification-item.subscription>i{background:color-mix(in srgb,#7c3aed 13%,var(--panel));color:#7c3aed}.notification-dashboard-card.subscription{--card-accent:#7c3aed}.notification-dashboard-card.subscription i{background:color-mix(in srgb,#7c3aed 13%,var(--panel));border:1px solid color-mix(in srgb,#7c3aed 22%,var(--line));color:#7c3aed}
.office-stat-card,.office-module-card{--card-accent:#2563eb;background:linear-gradient(145deg,color-mix(in srgb,var(--card-accent) 5%,var(--panel)),var(--panel) 62%);border-color:color-mix(in srgb,var(--card-accent) 18%,var(--line));box-shadow:0 13px 28px rgba(15,23,42,.075);overflow:hidden;position:relative}
.tone-blue{--card-accent:#2563eb!important}.tone-cyan{--card-accent:#0891b2!important}.tone-violet{--card-accent:#7c3aed!important}.tone-orange{--card-accent:#ea580c!important}.tone-green{--card-accent:#16a34a!important}.tone-rose{--card-accent:#e11d48!important}.tone-indigo{--card-accent:#4f46e5!important}.tone-teal{--card-accent:#0f9f83!important}.tone-amber{--card-accent:#d99000!important}.tone-slate{--card-accent:#64748b!important}
.office-stat-card:nth-child(4n+1),.office-module-card:nth-child(9n+1){--card-accent:#2563eb}.office-stat-card:nth-child(4n+2),.office-module-card:nth-child(9n+2){--card-accent:#0891b2}.office-stat-card:nth-child(4n+3),.office-module-card:nth-child(9n+3){--card-accent:#7c3aed}.office-stat-card:nth-child(4n),.office-module-card:nth-child(9n+4){--card-accent:#ea580c}.office-module-card:nth-child(9n+5){--card-accent:#16a34a}.office-module-card:nth-child(9n+6){--card-accent:#e11d48}.office-module-card:nth-child(9n+7){--card-accent:#4f46e5}.office-module-card:nth-child(9n+8){--card-accent:#0f9f83}.office-module-card:nth-child(9n){--card-accent:#d99000}
.office-stat-card{border-top:4px solid var(--card-accent);gap:5px 13px;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;min-height:108px;padding:15px 17px}.office-stat-card i,.office-module-card>span{background:color-mix(in srgb,var(--card-accent) 13%,var(--panel));border:1px solid color-mix(in srgb,var(--card-accent) 24%,var(--line));color:var(--card-accent)}.office-stat-card i{font-size:1.05rem;grid-row:1/3;height:44px;width:44px}.office-stat-card strong{font-size:1.35rem;line-height:1.05}.office-stat-card span{align-self:end;font-size:.72rem;line-height:1.25;text-transform:uppercase}
.office-module-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.office-overview-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.office-module-card{border-top:4px solid var(--card-accent);gap:7px;min-height:158px;padding:16px 46px 16px 16px}.office-module-card>span{font-size:1.08rem;height:44px;margin-bottom:3px;width:44px}.office-module-card strong{font-size:1rem}.office-module-card small{font-size:.76rem;line-height:1.45}.office-module-card:hover{border-color:color-mix(in srgb,var(--card-accent) 48%,var(--line));border-top-color:var(--card-accent);box-shadow:0 18px 38px color-mix(in srgb,var(--card-accent) 12%,transparent)}.office-module-arrow{align-items:center;background:color-mix(in srgb,var(--card-accent) 10%,var(--panel));border:1px solid color-mix(in srgb,var(--card-accent) 20%,var(--line));border-radius:8px;color:var(--card-accent);display:flex;height:30px;justify-content:center;position:absolute;right:12px;top:12px;width:30px}.office-overview-grid>.office-module-card:nth-child(6):nth-last-child(4){grid-column:2}
.subscription-stat.accent-brand{border-left-color:#2563eb;color:#2563eb}.company-history-icon,.stock-product-icon,.report-payment-icon{background:color-mix(in srgb,#2563eb 13%,var(--panel));color:#2563eb}.report-kpi.ticket::before{background:#2563eb}.report-kpi.ticket>i{background:color-mix(in srgb,#2563eb 13%,var(--panel));color:#2563eb}
body[data-theme="dark"] .form-control::placeholder,body[data-theme="dark"] textarea.form-control::placeholder{color:#91a3bd!important;opacity:1}body[data-theme="dark"] .form-text{color:var(--muted)!important}body[data-theme="dark"] .form-control:disabled,body[data-theme="dark"] .form-select:disabled{background:#101c2f;color:#91a3bd;opacity:1}body[data-theme="dark"] .btn-brand:disabled{color:rgba(255,255,255,.88)!important;opacity:.68}
.audit-pagination{align-items:center;border-top:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;margin-top:14px;padding-top:18px}.audit-pagination p{color:var(--muted);font-size:.78rem;margin:0}.audit-pagination p strong{color:var(--ink)}.audit-pagination nav{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.audit-pagination nav a,.audit-pagination nav span{align-items:center;border:1px solid var(--line);border-radius:7px;color:var(--ink);display:inline-flex;font-size:.76rem;font-weight:550;height:36px;justify-content:center;min-width:36px;padding:0 10px;text-decoration:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.audit-pagination nav a:hover{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 42%,var(--line));color:var(--brand);transform:translateY(-1px)}.audit-pagination nav .active{background:linear-gradient(135deg,var(--button-start),var(--button-end));border-color:transparent;color:#fff}.audit-pagination nav .disabled{color:var(--muted);opacity:.45}.audit-pagination nav .ellipsis{border-color:transparent;min-width:24px;padding:0 3px}
@media(max-width:1499.98px){.office-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.office-overview-grid>.office-module-card:nth-child(6):nth-last-child(4){grid-column:auto}.office-overview-grid>.office-module-card:nth-child(9):nth-last-child(2){grid-column:2}}
@media(max-width:1199.98px){.office-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-overview-grid,.office-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-overview-grid>.office-module-card:nth-child(9):nth-last-child(2){grid-column:auto}.office-overview-grid>.office-module-card:last-child:nth-child(odd){grid-column:1/-1;min-height:132px}}
@media(max-width:767.98px){.dashboard-card{min-height:124px}.office-module-card{min-height:148px;padding:15px 40px 15px 15px}}
@media(max-width:575.98px){.office-stat-grid,.office-overview-grid,.office-module-grid{grid-template-columns:1fr}.office-overview-grid>.office-module-card:last-child:nth-child(odd){grid-column:auto}.office-stat-card{min-height:96px}.office-module-card{min-height:132px}}
@media(max-width:575.98px){.audit-pagination{align-items:stretch;flex-direction:column}.audit-pagination nav{justify-content:center}.audit-pagination p{text-align:center}}

/* Gestão SaaS: navegação única para clientes, assinaturas e cobrança. */
.saas-workspace-nav{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;gap:16px;grid-template-columns:minmax(220px,.38fr) minmax(0,1fr);margin-bottom:20px;padding:12px 14px}.saas-workspace-title{align-items:center;display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr) auto;min-width:0}.saas-workspace-title>span{align-items:center;background:linear-gradient(135deg,#2563eb,#0891b2);border-radius:8px;color:#fff;display:flex;font-size:1rem;height:42px;justify-content:center;width:42px}.saas-workspace-title>div{display:grid;min-width:0}.saas-workspace-title strong{color:var(--ink);font-size:.88rem}.saas-workspace-title small{color:var(--muted);font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saas-workspace-title>a{align-items:center;border:1px solid var(--line);border-radius:7px;color:var(--muted);display:flex;height:32px;justify-content:center;text-decoration:none;width:32px}.saas-workspace-title>a:hover{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.saas-workspace-tabs{background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:5px;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));padding:5px}.saas-workspace-tabs>a{align-items:center;border:1px solid transparent;border-radius:7px;color:var(--muted);display:flex;font-size:.72rem;font-weight:550;gap:6px;justify-content:center;min-height:38px;padding:7px;text-decoration:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;white-space:nowrap}.saas-workspace-tabs>a:hover{background:var(--panel);border-color:var(--line);color:var(--ink);transform:translateY(-1px)}.saas-workspace-tabs>a.active{background:linear-gradient(135deg,#2563eb,#3b82f6);border-color:transparent;box-shadow:0 7px 16px rgba(37,99,235,.2);color:#fff}.saas-company-shortcuts{background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px;padding:6px}.saas-company-shortcuts a{align-items:center;border:1px solid transparent;border-radius:7px;color:var(--muted);display:flex;font-size:.72rem;font-weight:550;gap:7px;justify-content:center;min-height:38px;text-decoration:none}.saas-company-shortcuts a:hover,.saas-company-shortcuts a.active{background:var(--panel);border-color:var(--line);color:var(--brand)}
@media(max-width:1199.98px){.saas-workspace-nav{grid-template-columns:1fr}.saas-workspace-tabs>a{font-size:.69rem}}
@media(max-width:767.98px){.saas-workspace-nav{padding:10px}.saas-workspace-tabs{display:flex;overflow-x:auto;scrollbar-width:thin}.saas-workspace-tabs>a{flex:0 0 auto;min-width:116px}.saas-company-shortcuts{grid-template-columns:1fr 1fr}.saas-workspace-title small{white-space:normal}}
@media(max-width:420px){.saas-company-shortcuts{grid-template-columns:1fr}.saas-workspace-title{grid-template-columns:38px minmax(0,1fr) auto}.saas-workspace-title>span{height:38px;width:38px}}

/* Financeiro operacional da oficina. */
.finance-office-hero{background:linear-gradient(135deg,#0f766e,#0891b2)}.finance-stat-grid .office-stat-card strong{font-size:1.18rem}.finance-filter-panel{align-items:end;background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(210px,1.5fr) repeat(3,minmax(135px,.72fr)) repeat(2,minmax(145px,.78fr)) auto 42px;padding:12px}.finance-filter-panel .form-label{font-size:.68rem;font-weight:900;margin-bottom:5px;text-transform:uppercase}.finance-filter-panel .form-control,.finance-filter-panel .form-select,.finance-filter-panel .btn{font-size:.8rem;min-height:42px}.finance-filter-panel .filter-clear{align-items:center;display:flex;height:42px;justify-content:center;padding:0;width:42px}.finance-entry-table th{white-space:nowrap}.finance-type-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.68rem;font-weight:900;gap:5px;padding:6px 9px;white-space:nowrap}.finance-type-pill.receber{background:color-mix(in srgb,#16a34a 13%,var(--panel));color:#12804a}.finance-type-pill.pagar{background:color-mix(in srgb,#e11d48 12%,var(--panel));color:#d01742}.finance-value.receber{color:#12804a}.finance-value.pagar{color:#d01742}.finance-entry-dialog{max-width:780px}.finance-type-selector{display:grid;gap:10px;grid-template-columns:1fr 1fr}.finance-type-selector label{cursor:pointer;margin:0}.finance-type-selector input{position:absolute;opacity:0;pointer-events:none}.finance-type-selector span{background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:2px 10px;grid-template-columns:40px minmax(0,1fr);padding:12px;transition:border-color .18s ease,background .18s ease,transform .18s ease}.finance-type-selector i{align-items:center;border-radius:8px;display:flex;font-size:1rem;grid-row:1/3;height:38px;justify-content:center;width:38px}.finance-type-selector strong{color:var(--ink);font-size:.8rem}.finance-type-selector small{color:var(--muted);font-size:.68rem}.finance-type-selector label:first-child i{background:color-mix(in srgb,#16a34a 13%,var(--panel));color:#12804a}.finance-type-selector label:last-child i{background:color-mix(in srgb,#e11d48 12%,var(--panel));color:#d01742}.finance-type-selector input:checked+span{background:var(--panel);border-color:var(--brand);box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 10%,transparent);transform:translateY(-1px)}
@media(max-width:1399.98px){.finance-filter-panel{grid-template-columns:2fr repeat(3,1fr)}.finance-filter-panel>div:nth-of-type(5),.finance-filter-panel>div:nth-of-type(6){grid-column:span 1}.finance-filter-panel>.btn-brand{grid-column:3}.finance-filter-panel>.filter-clear{grid-column:4}}
@media(max-width:991.98px){.finance-filter-panel{grid-template-columns:1fr 1fr}.finance-filter-panel>div:first-child{grid-column:1/-1}.finance-filter-panel>.btn-brand{grid-column:1}.finance-filter-panel>.filter-clear{grid-column:2;justify-self:end}.finance-stat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:575.98px){.finance-filter-panel{grid-template-columns:1fr 42px}.finance-filter-panel>div,.finance-filter-panel>div:first-child{grid-column:1/-1}.finance-filter-panel>.btn-brand{grid-column:1}.finance-filter-panel>.filter-clear{grid-column:2}.finance-type-selector,.finance-stat-grid{grid-template-columns:1fr}.finance-entry-dialog{margin:10px}.finance-office-hero .office-hero-stack strong{font-size:1.1rem}}
@media(max-width:1399.98px){.report-filter-panel{align-items:stretch;flex-direction:column}.report-filter-form{grid-template-columns:repeat(4,1fr)}.report-filter-form .btn{grid-column:4}.report-kpi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:991.98px){.report-main-grid,.report-operational-grid{grid-template-columns:1fr}.report-status-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767.98px){.report-filter-form{grid-template-columns:1fr 1fr}.report-filter-form>div:first-child,.report-filter-form>div:nth-last-of-type(1){grid-column:1/-1}.report-filter-form .btn{grid-column:1/-1}.report-export-actions{display:grid;grid-template-columns:1fr 1fr}.report-kpi-grid{grid-template-columns:1fr}.report-kpi{min-height:112px}.report-bar-chart{height:220px}.report-inline-metrics{align-items:flex-start;flex-direction:column;gap:7px}.report-stock-highlight{grid-template-columns:1fr}}
@media(max-width:480px){.report-filter-form{grid-template-columns:1fr}.report-filter-form>div{grid-column:1!important}.report-export-actions{grid-template-columns:1fr}.report-status-grid{grid-template-columns:1fr 1fr}.report-ranking article{grid-template-columns:26px minmax(0,1fr)}.report-ranking article>b{grid-column:2}.report-order-list article{align-items:flex-start}.report-order-list article>div:last-child{flex:0 0 auto}}

@media print{
  @page{size:A4;margin:10mm}
  body{background:#fff!important;color:#111827!important;font-family:Arial,sans-serif!important}
  .report-page{padding:0!important}.report-print-header{border-bottom:2px solid #1f7aff;display:flex!important;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.report-print-header span{font-size:10px}.report-page .report-hero,.report-page .report-filter-panel,.report-page .report-export-actions,.report-page+.footer,.sidebar,.topbar,.mobile-system-menu,.page-loader{display:none!important}.app-shell{display:block!important}.main{margin:0!important;width:100%!important}.report-kpi-grid{grid-template-columns:repeat(4,1fr)!important;gap:6px!important}.report-kpi{break-inside:avoid;min-height:80px!important;padding:10px!important}.report-kpi strong{font-size:14px!important}.report-kpi>i{height:30px;width:30px}.report-main-grid,.report-operational-grid{break-inside:avoid;gap:8px;grid-template-columns:1.4fr .8fr!important;margin-bottom:8px!important}.report-page .content-panel{background:#fff!important;border:1px solid #d7e0ec!important;box-shadow:none!important;color:#111827!important;padding:10px!important}.report-page *{--ink:#111827;--muted:#5d6b82;--line:#d7e0ec;--soft:#f1f5fb;--panel:#fff;--field:#fff}.report-bar-chart{height:150px}.report-disclaimer{break-inside:avoid}.report-payment-list article,.report-ranking article,.report-order-list article{padding:6px 0}.report-status-grid>div,.report-stock-highlight>div{padding:8px}}

/* Identidade da oficina e fluxo de orçamentos */
.office-identity-panel{max-width:1180px}.office-brand-editor{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:16px;grid-template-columns:92px minmax(0,1fr);margin-bottom:20px;padding:15px}.office-logo-preview{align-items:center;background:var(--field);border:1px dashed var(--line);border-radius:8px;color:var(--brand);display:flex;font-size:1.8rem;height:82px;justify-content:center;overflow:hidden;width:82px}.office-logo-preview img{height:100%;object-fit:contain;padding:6px;width:100%}.office-form-section{border-bottom:1px solid var(--line);font-size:.88rem;font-weight:550;margin:22px 0 14px;padding-bottom:8px}.office-color-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.office-color-grid label{background:var(--soft);border:1px solid var(--line);border-radius:7px;display:grid;gap:8px;padding:11px}.office-color-grid span{font-size:.72rem;font-weight:800}.office-color-grid .form-control-color{height:38px;width:100%}.budget-catalog-head{align-items:center;display:flex;justify-content:space-between;margin:5px 0 10px}.budget-catalog-head>div{display:grid;gap:2px}.budget-catalog-head strong{font-size:.86rem}.budget-catalog-head small{color:var(--muted);font-size:.7rem}.budget-items-table{min-height:160px}.budget-close-grid{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(270px,.45fr)}.budget-convert-action{color:#0f8a55!important}.sale-source-budget{align-items:center;background:color-mix(in srgb,#22c55e 11%,var(--panel));border:1px solid color-mix(in srgb,#22c55e 35%,var(--line));border-radius:8px;color:var(--ink);display:flex;gap:11px;margin-bottom:14px;padding:12px}.sale-source-budget>i{color:#16a34a;font-size:1.2rem}.sale-source-budget span{display:grid}.sale-source-budget strong{font-size:.8rem}.sale-source-budget small{color:var(--muted);font-size:.68rem}
@media(max-width:767.98px){.office-color-grid{grid-template-columns:1fr 1fr}.budget-close-grid{grid-template-columns:1fr}.budget-catalog-head{align-items:stretch;flex-direction:column;gap:10px}.budget-catalog-head .btn{width:100%}}
@media(max-width:480px){.office-brand-editor{grid-template-columns:1fr}.office-logo-preview{margin:auto}.office-color-grid{grid-template-columns:1fr}}

/* Institutional landing: workshop management plus technical intelligence. */
.landing-carousel-slide.management{background:linear-gradient(135deg,#123a63,#0f766e)}
.landing-management-kpis{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.landing-management-kpis span{--preview-accent:#2563eb;background:#f8fafc;border:1px solid #dde7f3;border-top:3px solid var(--preview-accent);border-radius:8px;display:grid;gap:3px;grid-template-columns:auto 1fr;padding:12px}.landing-management-kpis span.violet{--preview-accent:#7c3aed}.landing-management-kpis span.green{--preview-accent:#159f68}.landing-management-kpis span.orange{--preview-accent:#e86a19}.landing-management-kpis i{color:var(--preview-accent);font-size:1rem;grid-row:1/3}.landing-management-kpis small{font-size:.66rem}.landing-management-kpis strong{font-size:1rem}.landing-management-flow{display:grid;gap:8px}.landing-management-flow span{align-items:center;background:#f8fafc;border:1px solid #dde7f3;border-radius:8px;display:grid;gap:8px;grid-template-columns:auto minmax(0,1fr) auto;padding:10px 12px}.landing-management-flow i{color:#2563eb}.landing-management-flow strong{font-size:.78rem}.landing-management-flow em{background:#eaf2ff;border-radius:999px;color:#2563eb;font-size:.62rem;font-style:normal;font-weight:900;padding:5px 7px}.landing-management-flow span:nth-child(2) em{background:#fff4df;color:#b45309}.landing-management-flow span:nth-child(3) em{background:#e8f7f0;color:#12805c}
.landing-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-feature-grid article{--feature-accent:#2563eb;background:linear-gradient(160deg,color-mix(in srgb,var(--feature-accent) 7%,var(--panel)),var(--panel) 54%);border-color:color-mix(in srgb,var(--feature-accent) 24%,var(--line));border-radius:8px;min-height:220px}.landing-feature-grid article:nth-child(2){--feature-accent:#7c3aed}.landing-feature-grid article:nth-child(3){--feature-accent:#16a34a}.landing-feature-grid article:nth-child(4){--feature-accent:#0f9f83}.landing-feature-grid article:nth-child(5){--feature-accent:#e86a19}.landing-feature-grid article:nth-child(6){--feature-accent:#e11d48}.landing-feature-grid article::after{display:none}.landing-feature-grid .landing-feature-icon{background:color-mix(in srgb,var(--feature-accent) 12%,var(--panel));border-color:color-mix(in srgb,var(--feature-accent) 28%,var(--line));color:var(--feature-accent)}.landing-feature-grid .landing-feature-icon i{color:var(--feature-accent)}.landing-feature-grid article>small{background:color-mix(in srgb,var(--feature-accent) 11%,var(--panel));color:var(--feature-accent)}.landing-feature-grid p{color:var(--muted);display:block;font-size:.8rem;font-weight:650;line-height:1.55;margin:9px 0 0}
.landing-management{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,#2563eb 9%,transparent),transparent 50%),var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 22px 60px color-mix(in srgb,#2563eb 9%,transparent);display:grid;gap:30px;grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);margin:64px auto 0;max-width:1180px;overflow:hidden;padding:30px;position:relative;scroll-margin-top:112px}.landing-management::before{background:linear-gradient(90deg,#2563eb,#0f9f83);content:"";height:5px;inset:0 0 auto;position:absolute}.landing-management h2{color:var(--ink);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:900;line-height:1.08;margin:16px 0}.landing-management-copy>p{color:var(--muted);font-weight:650;line-height:1.65;margin:0}.landing-management-benefits{display:grid;gap:10px;margin-top:22px}.landing-management-benefits span{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:2px 10px;grid-template-columns:38px minmax(0,1fr);padding:10px 0}.landing-management-benefits span:last-child{border-bottom:0}.landing-management-benefits i{align-items:center;background:var(--brand-soft);border-radius:8px;color:var(--brand);display:flex;font-size:1rem;grid-row:1/3;height:36px;justify-content:center;width:36px}.landing-management-benefits strong{color:var(--ink);font-size:.88rem}.landing-management-benefits small{color:var(--muted);font-size:.73rem;font-weight:650}
.landing-operations-preview{background:var(--field);border:1px solid var(--line);border-radius:8px;box-shadow:0 22px 52px rgba(15,23,42,.14);display:grid;gap:14px;padding:18px}.landing-operations-head{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr) auto;padding-bottom:13px}.landing-operations-head>span{align-items:center;background:linear-gradient(135deg,var(--button-start),var(--button-end));border-radius:8px;color:#fff;display:flex;height:42px;justify-content:center;width:42px}.landing-operations-head strong,.landing-operations-head small{display:block}.landing-operations-head strong{color:var(--ink);font-size:.92rem}.landing-operations-head small{color:var(--muted);font-size:.7rem}.landing-operations-head em{background:var(--brand-soft);border-radius:999px;color:var(--brand);font-size:.68rem;font-style:normal;font-weight:900;padding:6px 9px}.landing-operations-metrics{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.landing-operations-metrics span{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;gap:3px;grid-template-columns:1fr auto;padding:12px}.landing-operations-metrics small{color:var(--muted);font-size:.62rem;font-weight:550;text-transform:uppercase}.landing-operations-metrics strong{color:var(--ink);font-size:1.08rem}.landing-operations-metrics i{color:var(--brand);grid-column:2;grid-row:1/3}.landing-operations-list{display:grid}.landing-operations-list>div{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;padding:11px 4px}.landing-operations-list>div:last-child{border-bottom:0}.landing-operations-list .head{color:var(--muted);font-size:.68rem;text-transform:uppercase}.landing-operations-list div>span{align-items:center;display:grid;gap:1px 8px;grid-template-columns:28px minmax(0,1fr)}.landing-operations-list div>span i{align-items:center;background:var(--brand-soft);border-radius:7px;color:var(--brand);display:flex;grid-row:1/3;height:28px;justify-content:center;width:28px}.landing-operations-list b{color:var(--ink);font-size:.76rem}.landing-operations-list small{color:var(--muted);font-size:.65rem}.landing-operations-list em{border-radius:999px;font-size:.62rem;font-style:normal;font-weight:900;padding:5px 8px}.landing-operations-list .waiting{background:var(--warning-soft);color:var(--warning)}.landing-operations-list .working{background:var(--brand-soft);color:var(--brand)}.landing-operations-list .done{background:var(--chip-success);color:var(--ok)}
#base-tecnica{scroll-margin-top:112px}
@media(max-width:991.98px){.landing-management{grid-template-columns:1fr}.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:899.98px){.landing-nav{align-items:center;gap:10px;grid-template-columns:44px minmax(0,1fr);padding:10px}.landing-menu-toggle{display:inline-flex}.landing-brand{justify-content:center;justify-self:stretch;min-width:0}.landing-nav-links{grid-column:1/-1;grid-template-columns:1fr;max-height:none;width:100%}.landing-nav-sections{display:none}.landing-nav-actions{border-left:0;border-top:1px solid var(--line);display:grid;gap:8px;grid-template-columns:44px repeat(2,minmax(0,1fr));justify-content:stretch;padding-left:0;padding-top:10px;width:100%}.landing-nav-actions .btn{justify-content:center;min-width:0;padding-left:9px;padding-right:9px;width:100%}.landing-theme-toggle{min-width:44px;width:44px}}
@media(min-width:900px) and (max-width:1199.98px){.landing-nav{align-items:center;gap:10px;grid-template-columns:44px minmax(0,1fr);padding:10px}.landing-menu-toggle{display:inline-flex}.landing-brand{justify-content:center;justify-self:stretch;min-width:0}.landing-nav-links{grid-column:1/-1;grid-template-columns:1fr;max-height:none;width:100%}.landing-nav-sections{display:none}.landing-nav-actions{border-left:0;border-top:1px solid var(--line);display:grid;gap:8px;grid-template-columns:44px repeat(2,minmax(0,1fr));justify-content:stretch;padding-left:0;padding-top:10px;width:100%}.landing-nav-actions .btn{justify-content:center;min-width:0;padding-left:9px;padding-right:9px;width:100%}.landing-theme-toggle{min-width:44px;width:44px}}
@media(max-width:767.98px){.landing-management{padding:18px;scroll-margin-top:150px}.landing-feature-grid{grid-template-columns:1fr}.landing-operations-metrics{grid-template-columns:1fr}.landing-management-kpis{gap:7px}.landing-management-flow{gap:6px}.landing-management-flow span{padding:8px}.landing-management-flow span:last-child{display:none}.management-preview{gap:8px!important}.landing-operations-list>div{align-items:flex-start}.landing-operations-list em{white-space:nowrap}#base-tecnica{scroll-margin-top:150px}}
@media(max-width:420px){.landing-management-kpis{grid-template-columns:1fr 1fr}.landing-management-kpis span{padding:8px}.landing-management-flow em{display:none}.landing-operations-list>div{align-items:stretch;flex-direction:column}.landing-operations-list em{align-self:flex-start}}

/* Recuperacao responsiva: rolagem de modais e listagens operacionais. */
.modal-dialog-scrollable .modal-content {
  max-height: calc(100dvh - 24px);
  min-height: 0;
  overflow: hidden;
}

.modal-dialog-scrollable .modal-content > form {
  display: flex;
  flex-direction: column;
  max-height: inherit;
  min-height: 0;
  overflow: hidden;
}

.modal-dialog-scrollable .modal-body,
.office-management-list .office-form-dialog .modal-content > section,
#serviceFormModal .modal-content > section,
.product-catalog-dialog .modal-content > section {
  -webkit-overflow-scrolling: touch;
  max-height: inherit;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  touch-action: pan-y;
}

.office-management-list .office-form-dialog .modal-content,
#serviceFormModal .modal-content,
.product-catalog-dialog .modal-content {
  max-height: calc(100dvh - 24px);
  overflow: hidden;
}

@media (max-width: 991.98px) {
  .modal-dialog-scrollable,
  .office-form-dialog,
  .product-catalog-dialog,
  .finance-entry-dialog,
  .stock-movement-dialog {
    height: auto;
    margin: 8px auto;
    max-width: calc(100% - 16px);
    min-height: 0;
    width: calc(100% - 16px);
  }

  .modal-dialog-scrollable .modal-content,
  .office-management-list .office-form-dialog .modal-content,
  #serviceFormModal .modal-content,
  .product-catalog-dialog .modal-content,
  .record-modal .modal-content {
    height: auto;
    max-height: calc(100dvh - 16px);
  }
}

@media (max-width: 767.98px) {
  .main,
  .page-wrap,
  .content-panel,
  .management-list,
  .office-management-list {
    max-width: 100%;
    min-width: 0;
  }

  .management-list .section-title,
  .office-management-list .section-title,
  .stock-balance-panel .section-title {
    align-items: stretch;
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .office-list-actions {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
    width: 100%;
  }

  .office-list-actions .btn,
  .office-list-actions .status-pill {
    justify-content: center;
    max-width: 100%;
    width: 100%;
  }

  .product-filter,
  .product-filter.is-admin,
  .product-filter.service-filter,
  .product-filter.service-filter:not(.is-admin) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
  }

  .product-filter > div,
  .product-filter .form-control,
  .product-filter .form-select {
    min-width: 0;
    width: 100%;
  }

  .product-filter .filter-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px;
    width: 100%;
  }

  .product-filter .filter-actions .btn:not(.filter-clear) {
    min-width: 0;
    width: 100%;
  }

  .management-list > .table-responsive,
  .management-list .office-responsive-table {
    overflow: visible;
  }

  .management-list > .table-responsive table,
  .management-list > .table-responsive tbody,
  .management-list .office-responsive-table table,
  .management-list .office-responsive-table tbody {
    display: block;
    width: 100%;
  }

  .management-list > .table-responsive thead,
  .management-list .office-responsive-table thead {
    display: none;
  }

  .management-list > .table-responsive tbody,
  .management-list .office-responsive-table tbody {
    display: grid;
    gap: 12px;
  }

  .management-list > .table-responsive tbody tr:not(.office-table-empty),
  .management-list .office-responsive-table tbody tr:not(.office-table-empty) {
    background: var(--soft);
    border: 1px solid var(--line);
    border-radius: 10px;
    display: grid;
    overflow: hidden;
    padding: 5px 14px;
    width: 100%;
  }

  .management-list > .table-responsive tbody tr:not(.office-table-empty) td,
  .management-list .office-responsive-table tbody tr:not(.office-table-empty) td {
    align-items: start;
    border-bottom: 1px solid var(--line);
    display: grid;
    gap: 6px;
    grid-template-columns: minmax(94px, .38fr) minmax(0, 1fr);
    min-width: 0;
    overflow-wrap: anywhere;
    padding: 12px 0;
    text-align: left;
    white-space: normal;
    width: 100%;
  }

  .management-list > .table-responsive tbody tr:not(.office-table-empty) td::before,
  .management-list .office-responsive-table tbody tr:not(.office-table-empty) td::before {
    color: var(--muted);
    content: attr(data-label);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
  }

  .management-list > .table-responsive tbody tr:not(.office-table-empty) td:last-child,
  .management-list .office-responsive-table tbody tr:not(.office-table-empty) td:last-child {
    border-bottom: 0;
  }

  .management-list .table-actions {
    flex-wrap: wrap;
    justify-content: flex-start !important;
  }

  .management-list .product-table-name,
  .management-list .product-table-name > div,
  .management-list .service-table-name,
  .management-list .service-table-name > div,
  .office-management-list .product-table-name,
  .office-management-list .product-table-name > div,
  .office-management-list .service-table-name,
  .office-management-list .service-table-name > div {
    max-width: 100%;
    min-width: 0 !important;
    overflow-wrap: anywhere;
    width: 100%;
  }

  .management-list .product-table-name strong,
  .management-list .service-table-name strong,
  .office-management-list .product-table-name strong,
  .office-management-list .service-table-name strong {
    white-space: normal;
  }

  .office-settings-tabs {
    display: flex !important;
    gap: 4px;
    overflow-x: auto !important;
    padding-bottom: 2px;
    scrollbar-width: thin;
  }

  .office-settings-tabs a {
    flex: 0 0 auto;
    font-size: .76rem !important;
    min-height: 42px;
    padding: 9px 11px !important;
    white-space: nowrap;
  }
}

@media (max-width: 575.98px) {
  .modal-dialog-scrollable,
  .office-form-dialog,
  .product-catalog-dialog,
  .finance-entry-dialog,
  .stock-movement-dialog {
    margin: 6px auto;
    max-width: calc(100% - 12px);
    width: calc(100% - 12px);
  }

  .modal-dialog-scrollable .modal-content,
  .office-management-list .office-form-dialog .modal-content,
  #serviceFormModal .modal-content,
  .product-catalog-dialog .modal-content,
  .record-modal .modal-content {
    max-height: calc(100dvh - 12px);
  }

  .modal-footer {
    background: var(--panel);
    flex: 0 0 auto;
    position: relative;
    z-index: 2;
  }
}
/* Acompanhamento pós-serviço */
.followup-rules-list {
  display: grid;
  gap: 12px;
}

.followup-subtabs {
  background: var(--soft);
  border: 1px solid var(--line);
  border-radius: 14px;
  display: inline-flex;
  gap: 4px;
  margin: 0 0 16px;
  padding: 4px;
}

.followup-subtabs a {
  align-items: center;
  border-radius: 10px;
  color: var(--muted);
  display: inline-flex;
  font-weight: 900;
  gap: 7px;
  padding: 9px 14px;
  text-decoration: none;
}

.followup-subtabs a.active,
.followup-subtabs a:hover {
  background: var(--panel);
  color: var(--brand);
  box-shadow: 0 8px 20px rgba(15, 35, 70, .08);
}

.followup-history-stats {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 16px;
}

.followup-history-stats article {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 16px;
}

.followup-history-stats i {
  color: var(--brand);
  font-size: 1.25rem;
}

.followup-history-stats span {
  color: var(--muted);
  display: block;
  font-size: .78rem;
  font-weight: 900;
  margin-top: 8px;
  text-transform: uppercase;
}

.followup-history-stats strong {
  display: block;
  font-size: 1.5rem;
  font-weight: 900;
}

.followup-history-detail {
  display: grid;
  gap: 8px 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.followup-history-detail span {
  background: var(--soft);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px 12px;
}

.followup-rule-card {
  align-items: center;
  background:
    radial-gradient(circle at top right, rgba(31, 122, 255, .12), transparent 30%),
    var(--panel);
  border: 1px solid rgba(31, 122, 255, .18);
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(15, 35, 70, .06);
  display: grid;
  gap: 16px;
  grid-template-columns: 130px minmax(260px, 1.1fr) minmax(260px, .9fr) auto;
  padding: 16px;
}

.followup-rule-status {
  align-items: center;
  display: flex;
  gap: 10px;
}

.followup-rule-slug {
  color: var(--brand);
  display: inline-block;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  margin-bottom: 3px;
  text-transform: uppercase;
}

.followup-rule-main h3 {
  font-size: 1.08rem;
  font-weight: 900;
  margin: 0 0 4px;
}

.followup-rule-main p,
.followup-rule-preview p {
  color: var(--muted);
  margin: 0;
}

.followup-keyword-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.followup-keyword-chips span,
.followup-keyword-chips em {
  background: var(--brand-soft);
  border: 1px solid rgba(31, 122, 255, .14);
  border-radius: 999px;
  color: var(--brand-dark);
  font-size: .78rem;
  font-style: normal;
  font-weight: 800;
  padding: 5px 9px;
}

.followup-rule-preview {
  background: rgba(18, 128, 92, .06);
  border: 1px solid rgba(18, 128, 92, .14);
  border-radius: 14px;
  padding: 12px;
}

.followup-rule-preview small {
  color: var(--ok);
  display: block;
  font-weight: 900;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.followup-whatsapp-preview {
  background: linear-gradient(180deg, #e7ffef, #f8fffb);
  border: 1px solid rgba(18, 128, 92, .18);
  border-radius: 18px;
  color: #12372a;
  font-weight: 700;
  min-height: 260px;
  padding: 16px;
  white-space: pre-wrap;
}

.followup-edit-modal textarea {
  min-height: 260px;
  resize: vertical;
}

@media (max-width: 1199.98px) {
  .followup-rule-card {
    grid-template-columns: 1fr;
  }
  .followup-rule-actions {
    justify-self: start;
  }
}

@media (max-width: 767.98px) {
  .followup-history-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .followup-history-detail {
    grid-template-columns: 1fr;
  }
  .followup-subtabs {
    display: flex;
    width: 100%;
  }
  .followup-subtabs a {
    flex: 1;
    justify-content: center;
  }
}

.add-item-cta {
  align-items: center;
  background: linear-gradient(135deg, var(--button-start), #22c55e);
  border: 0;
  border-radius: 14px;
  box-shadow: 0 14px 30px rgba(31, 122, 255, .22);
  color: #fff;
  display: inline-flex;
  font-weight: 800;
  gap: 9px;
  min-height: 46px;
  padding: 0 20px;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.add-item-cta i {
  font-size: 1.12rem;
}

.add-item-cta:hover,
.add-item-cta:focus {
  color: #fff;
  filter: saturate(1.08);
  transform: translateY(-1px);
  box-shadow: 0 18px 36px rgba(31, 122, 255, .3);
}

.add-item-cta:active {
  transform: translateY(0);
  box-shadow: 0 10px 22px rgba(31, 122, 255, .2);
}

.followup-template-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.followup-template-card {
  border: 1px solid rgba(31, 122, 255, .18);
  box-shadow: 0 16px 36px rgba(15, 35, 70, .06);
}

.followup-template-card textarea {
  min-height: 180px;
  resize: vertical;
}

@media (max-width: 991.98px) {
  .followup-template-grid {
    grid-template-columns: 1fr;
  }
}

/* Button typography system: clear hierarchy across app and institutional UI. */
:root {
  --button-weight-primary: 700;
  --button-weight-secondary: 600;
  --button-weight-subtle: 550;
  --button-radius: 30px;
  --button-height: 42px;
  --button-height-sm: 36px;
  --button-height-lg: 48px;
  --button-font-size: .84rem;
  --button-font-size-sm: .78rem;
  --button-font-size-lg: .9rem;
  --button-padding-x: 16px;
  --button-padding-x-sm: 12px;
  --button-padding-x-lg: 20px;
}

button,
.btn,
[role="button"] {
  font-family: inherit;
}

.btn {
  align-items: center;
  border-radius: var(--button-radius) !important;
  display: inline-flex;
  font-size: var(--button-font-size) !important;
  font-weight: var(--button-weight-secondary) !important;
  gap: 7px;
  justify-content: center;
  letter-spacing: -.01em;
  line-height: 1.15;
  min-height: var(--button-height) !important;
  padding: 0 var(--button-padding-x) !important;
  vertical-align: middle;
}

.btn.btn-sm {
  font-size: var(--button-font-size-sm) !important;
  gap: 6px;
  min-height: var(--button-height-sm) !important;
  padding: 0 var(--button-padding-x-sm) !important;
}

.btn.btn-lg {
  font-size: var(--button-font-size-lg) !important;
  gap: 8px;
  min-height: var(--button-height-lg) !important;
  padding: 0 var(--button-padding-x-lg) !important;
}

.btn > i {
  flex: 0 0 auto;
  font-size: 1em;
  line-height: 1;
}

.btn.btn-icon {
  flex: 0 0 var(--button-height);
  height: var(--button-height) !important;
  padding: 0 !important;
  width: var(--button-height);
}

.btn.btn-sm.btn-icon {
  flex-basis: var(--button-height-sm);
  height: var(--button-height-sm) !important;
  width: var(--button-height-sm);
}

.btn.btn-lg.btn-icon {
  flex-basis: var(--button-height-lg);
  height: var(--button-height-lg) !important;
  width: var(--button-height-lg);
}

.btn.btn-primary,
.btn.btn-success,
.btn.btn-danger,
.btn-brand,
.add-item-cta {
  font-weight: var(--button-weight-primary) !important;
}

.btn.btn-secondary,
.btn.btn-light,
.btn[class*="btn-outline-"] {
  font-weight: var(--button-weight-secondary) !important;
}

.btn.btn-link,
.btn-link,
.filter-clear,
.stock-product-balance button {
  font-weight: var(--button-weight-subtle) !important;
}

.theme-toggle,
.profile-toggle,
.pwa-topbar-install,
.pwa-mobile-install {
  font-size: var(--button-font-size);
  font-weight: var(--button-weight-secondary);
  min-height: var(--button-height);
  letter-spacing: -.01em;
}

.theme-toggle,
.profile-toggle {
  height: var(--button-height);
  padding-bottom: 0;
  padding-top: 0;
}

.notification-toggle,
.mobile-menu-toggle {
  height: var(--button-height);
  min-height: var(--button-height);
  width: var(--button-height);
}

.inst-primary,
.inst-access,
.inst-contact-form button,
.inst-app-greeting button,
.inst-final-cta a:first-child {
  font-weight: var(--button-weight-primary);
  letter-spacing: -.01em;
}

.inst-secondary,
.inst-install,
.inst-mobile-install,
.inst-final-cta a:last-child {
  font-weight: var(--button-weight-secondary);
  letter-spacing: -.01em;
}

.sale-picker-tabs button,
.status-filter-button {
  font-weight: var(--button-weight-subtle);
}

.status-filter-button {
  font-size: var(--button-font-size-sm);
  min-height: var(--button-height-sm);
  padding: 0 var(--button-padding-x-sm);
}

/* Control rows use the same height as their adjacent buttons. */
.compact-filter .form-control,
.compact-filter .form-select,
.product-filter .form-control,
.product-filter .form-select,
.catalog-inline-form .form-control,
.catalog-company-select .form-select,
.sale-list-filter .form-control,
.sale-list-filter .form-select,
.stock-balance-search .form-control,
.stock-movement-filter .form-control,
.stock-movement-filter .form-select,
.report-filter-form .form-control,
.report-filter-form .form-select,
.finance-filter-panel .form-control,
.finance-filter-panel .form-select {
  font-size: var(--button-font-size);
  height: var(--button-height);
  min-height: var(--button-height);
}

.search-panel .form-control,
.search-panel .form-select,
.search-panel .btn,
.login-panel .btn,
.register-shell .login-panel .btn,
.landing-actions .btn,
.landing-app-install-actions .btn {
  font-size: var(--button-font-size-lg) !important;
  min-height: var(--button-height-lg) !important;
  padding-left: var(--button-padding-x-lg) !important;
  padding-right: var(--button-padding-x-lg) !important;
}

/* Inputs com ícone precisam preservar uma área própria à esquerda. */
.search-panel .search-input {
  padding-left: 48px !important;
  padding-right: 18px !important;
}

.search-panel .search-input::placeholder {
  color: #64748b;
  font-weight: 500;
  opacity: 1;
}

.form-action-row,
.preference-actions,
.office-action-row,
.office-list-actions,
.product-form-actions,
.modal-footer {
  align-items: center;
  gap: 8px;
}

/* Action menus are intentionally quieter than primary page actions. */
.main .dropdown-menu .dropdown-item,
body > .table-action-portal .dropdown-item,
.file-action-menu .dropdown-item,
.management-actions .dropdown-item,
.table-action-dropdown .dropdown-item {
  align-items: center;
  display: flex;
  font-size: .82rem !important;
  font-weight: 500 !important;
  gap: 9px;
  line-height: 1.2;
  min-height: 38px;
  padding: 8px 10px;
  text-align: left;
  width: 100%;
}

.main .dropdown-menu .dropdown-item.text-danger,
body > .table-action-portal .dropdown-item.text-danger,
.file-action-menu .dropdown-item.text-danger,
.management-actions .dropdown-item.text-danger,
.table-action-dropdown .dropdown-item.text-danger,
.dropdown-item.danger {
  font-weight: 600 !important;
}

.main .dropdown-menu .dropdown-item > i,
body > .table-action-portal .dropdown-item > i,
.file-action-menu .dropdown-item > i,
.management-actions .dropdown-item > i,
.table-action-dropdown .dropdown-item > i {
  flex: 0 0 18px;
  font-size: .95rem;
  line-height: 1;
  text-align: center;
}

/* Rounded actions keep icon-only controls visually balanced. */
.theme-toggle,
.profile-toggle,
.mobile-menu-toggle,
.inst-primary,
.inst-secondary,
.inst-access,
.inst-install,
.inst-mobile-install,
.inst-contact-form button,
.inst-final-cta a,
.add-item-cta {
  border-radius: var(--button-radius);
}

.inst-header-actions .inst-install,
.inst-header-actions .inst-access {
  border-radius: var(--button-radius);
}

.notification-toggle,
.modal-header .btn-close,
.table-actions .btn.btn-sm {
  border-radius: 50% !important;
}

.modal-header .btn-close {
  flex-basis: var(--button-height-sm);
  height: var(--button-height-sm);
  min-height: var(--button-height-sm);
  width: var(--button-height-sm);
}

.profile-avatar {
  border-radius: 50%;
}

.profile-menu .dropdown-menu,
.notification-dropdown {
  border-radius: 18px;
}

.profile-card-head {
  border-radius: 14px;
}

/* Topbar dropdown typography and motion. Individual translate/scale properties
   preserve Bootstrap Popper's inline transform used for positioning. */
.topbar .profile-menu > .dropdown-menu.dropdown-menu-end,
.topbar .notification-menu > .dropdown-menu.dropdown-menu-end {
  left: auto;
  right: 0;
}

.topbar .profile-menu > .dropdown-menu,
.topbar .notification-menu > .dropdown-menu {
  display: block;
  opacity: 0;
  pointer-events: none;
  scale: .975;
  transform-origin: top right;
  translate: 0 -9px;
  transition:
    opacity .16s ease,
    scale .22s cubic-bezier(.2, .8, .2, 1),
    translate .22s cubic-bezier(.2, .8, .2, 1),
    visibility 0s linear .22s;
  visibility: hidden;
  will-change: opacity, scale, translate;
}

.topbar .profile-menu > .dropdown-menu.show,
.topbar .notification-menu > .dropdown-menu.show {
  opacity: 1;
  pointer-events: auto;
  scale: 1;
  translate: 0 0;
  transition-delay: 0s;
  visibility: visible;
}

.profile-toggle .bi-chevron-down {
  transition: transform .22s cubic-bezier(.2, .8, .2, 1);
}

.profile-toggle.show .bi-chevron-down {
  transform: rotate(180deg);
}

.profile-card-head strong {
  font-size: .92rem;
  font-weight: 700;
  letter-spacing: -.012em;
}

.profile-card-head small {
  font-size: .76rem;
  font-weight: 500;
}

.profile-card-head span {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .035em;
}

.profile-menu .dropdown-item {
  font-size: .86rem;
  font-weight: 550;
  letter-spacing: -.006em;
  transition: background .16s ease, color .16s ease, transform .16s ease;
}

.profile-menu .dropdown-item:hover,
.profile-menu .dropdown-item:focus {
  transform: translateX(2px);
}

.profile-menu .dropdown-item.danger {
  font-weight: 600;
}

.notification-toggle > i {
  transform-origin: 50% 12%;
  transition: color .18s ease, transform .18s ease;
}

.notification-toggle.show > i {
  animation: kynex-bell-open .46s cubic-bezier(.2, .8, .2, 1);
}

@keyframes kynex-bell-open {
  0% { transform: rotate(0) scale(1); }
  28% { transform: rotate(15deg) scale(1.08); }
  55% { transform: rotate(-12deg) scale(1.08); }
  78% { transform: rotate(6deg) scale(1.03); }
  100% { transform: rotate(0) scale(1); }
}

.notification-head strong {
  font-size: .94rem;
  font-weight: 700;
  letter-spacing: -.012em;
}

.notification-head small {
  font-weight: 500;
}

.notification-head a,
.notification-footer-link {
  font-weight: 600;
}

.notification-summary span {
  font-weight: 550;
}

.notification-list-label {
  font-weight: 600;
  letter-spacing: .065em;
}

.notification-item strong {
  font-weight: 650;
  letter-spacing: -.008em;
}

.notification-item small,
.notification-item em,
.notification-updated {
  font-weight: 500;
}

@media (prefers-reduced-motion: reduce) {
  .topbar .profile-menu > .dropdown-menu,
  .topbar .notification-menu > .dropdown-menu,
  .profile-toggle .bi-chevron-down,
  .notification-toggle > i {
    animation: none !important;
    transition: none !important;
  }
}

/* Assistente de implantação */
.onboarding-page { max-width: 1380px; }
.onboarding-return-bar { align-items: center; background: #0b2d59; color: #dbeafe; display: flex; font-size: .82rem; justify-content: space-between; padding: 9px max(18px,calc((100vw - 1440px) / 2)); }
.onboarding-return-bar span,.onboarding-return-bar a { align-items: center; display: flex; gap: 7px; }
.onboarding-return-bar a { color: #fff; font-weight: 700; text-decoration: none; }
.onboarding-return-bar a:hover { color: #8fc3ff; }
.onboarding-hero { align-items: center; background: linear-gradient(125deg, #0a1d3a, #123f84 60%, #1f7aff); border-radius: 28px; color: #fff; display: flex; justify-content: space-between; margin-bottom: 20px; overflow: hidden; padding: 30px 34px; position: relative; }
.onboarding-hero::after { background: radial-gradient(circle, rgba(255,255,255,.2), transparent 68%); content: ""; height: 320px; position: absolute; right: -90px; top: -140px; width: 320px; }
.onboarding-hero > * { position: relative; z-index: 1; }
.onboarding-hero span { color: #8fc3ff; font-size: .78rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.onboarding-hero h1 { font-size: clamp(1.8rem, 3vw, 2.8rem); margin: 8px 0; }
.onboarding-hero p { color: rgba(255,255,255,.76); margin: 0; max-width: 650px; }
.onboarding-progress-ring { align-items: center; background: conic-gradient(#54e0b4 calc(var(--progress) * 1%), rgba(255,255,255,.14) 0); border-radius: 50%; display: flex; flex: 0 0 108px; flex-direction: column; height: 108px; justify-content: center; margin-left: 24px; position: relative; width: 108px; }
.onboarding-progress-ring::before { background: #12366c; border-radius: inherit; content: ""; inset: 7px; position: absolute; }
.onboarding-progress-ring strong,.onboarding-progress-ring small { position: relative; }
.onboarding-progress-ring strong { font-size: 1.4rem; }
.onboarding-progress-ring small { color: rgba(255,255,255,.7); font-size: .7rem; }
.onboarding-steps { display: grid; gap: 10px; grid-template-columns: repeat(5,1fr); margin-bottom: 20px; scrollbar-width: none; }
.onboarding-steps::-webkit-scrollbar { display: none; }
.onboarding-steps-expanded { display: flex; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x proximity; }
.onboarding-steps-expanded > a,.onboarding-steps-expanded > span { flex: 0 0 150px; scroll-snap-align: center; }
.onboarding-steps a,.onboarding-steps span { align-items: center; background: var(--bs-body-bg); border: 1px solid var(--border-color,#d7e1ef); border-radius: 18px; color: var(--text-secondary,#64748b); display: grid; gap: 2px 10px; grid-template-columns: 34px 1fr; min-height: 68px; padding: 10px 14px; text-decoration: none; transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.onboarding-steps a:hover { border-color: #7db1ff; box-shadow: 0 8px 22px rgba(31,122,255,.11); transform: translateY(-2px); }
.onboarding-steps a.active { background: color-mix(in srgb,#1f7aff 8%,var(--bs-body-bg)); border-color: #1f7aff; }
.onboarding-steps a.complete i { background: #dff8ef; color: #07845e; }
.onboarding-steps i { align-items: center; background: #eaf2ff; border-radius: 11px; color: #1f7aff; display: flex; grid-row: span 2; height: 34px; justify-content: center; width: 34px; }
.onboarding-steps b { color: var(--text-color,#172033); font-size: .72rem; }
.onboarding-steps em { font-size: .78rem; font-style: normal; font-weight: 600; }
.onboarding-steps .locked { opacity: .48; }
.onboarding-card { border-radius: 26px; min-height: 480px; }
.onboarding-kicker { color: #1f7aff; font-size: .78rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.onboarding-title { margin-bottom: 28px; }
.onboarding-title h2,.onboarding-copy h2,.onboarding-finish h2 { font-size: clamp(1.55rem,2.5vw,2.2rem); margin: 6px 0 8px; }
.onboarding-title p,.onboarding-copy p,.onboarding-finish > p { color: var(--text-secondary,#64748b); margin: 0; }
.onboarding-welcome { display: grid; gap: 30px 48px; grid-template-columns: 1.05fr .95fr; }
.onboarding-copy { align-self: center; }
.onboarding-benefits { display: grid; gap: 12px; }
.onboarding-benefits > div { align-items: center; background: color-mix(in srgb,#1f7aff 5%,var(--bs-body-bg)); border: 1px solid color-mix(in srgb,#1f7aff 15%,transparent); border-radius: 18px; display: flex; gap: 15px; padding: 16px; }
.onboarding-benefits i { align-items: center; background: #1f7aff; border-radius: 14px; color: #fff; display: flex; flex: 0 0 44px; font-size: 1.2rem; height: 44px; justify-content: center; }
.onboarding-benefits span,.onboarding-benefits small { display: block; }
.onboarding-benefits small { color: var(--text-secondary,#64748b); margin-top: 3px; }
.onboarding-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; grid-column: 1/-1; justify-content: flex-end; margin-top: 24px; }
.onboarding-integration { align-items: center; background: color-mix(in srgb,#f59e0b 7%,var(--bs-body-bg)); border: 1px solid color-mix(in srgb,#f59e0b 28%,transparent); border-radius: 22px; display: flex; gap: 20px; padding: 24px; }
.onboarding-integration.connected { background: color-mix(in srgb,#10b981 7%,var(--bs-body-bg)); border-color: color-mix(in srgb,#10b981 30%,transparent); }
.onboarding-integration-icon { align-items: center; background: #16a66a; border-radius: 18px; color: #fff; display: flex; flex: 0 0 64px; font-size: 1.8rem; height: 64px; justify-content: center; }
.onboarding-integration h3 { margin: 8px 0 3px; }
.onboarding-integration p { color: var(--text-secondary,#64748b); margin: 0; }
.onboarding-data-summary { display: grid; gap: 12px; grid-template-columns: repeat(4,1fr); margin-bottom: 22px; }
.onboarding-data-summary > div { align-items: center; background: color-mix(in srgb,#1f7aff 5%,var(--bs-body-bg)); border: 1px solid var(--border-color,#d7e1ef); border-radius: 18px; display: grid; gap: 2px 10px; grid-template-columns: 38px 1fr; padding: 14px; }
.onboarding-data-summary i { color: #1f7aff; font-size: 1.3rem; grid-row: span 2; }
.onboarding-data-summary strong { font-size: 1.25rem; }
.onboarding-data-summary span { color: var(--text-secondary,#64748b); font-size: .78rem; }
.onboarding-choice-grid { display: grid; gap: 16px; grid-template-columns: repeat(2,1fr); }
.onboarding-choice-grid > a { border: 1px solid var(--border-color,#d7e1ef); border-radius: 22px; color: inherit; display: flex; flex-direction: column; min-height: 220px; padding: 24px; text-decoration: none; transition: border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.onboarding-choice-grid > a:hover { border-color: #1f7aff; box-shadow: 0 15px 32px rgba(31,122,255,.12); transform: translateY(-3px); }
.onboarding-choice-grid > a > i { color: #1f7aff; font-size: 2rem; }
.onboarding-choice-grid strong { font-size: 1.12rem; margin: 14px 0 6px; }
.onboarding-choice-grid span { color: var(--text-secondary,#64748b); }
.onboarding-choice-grid em { color: #1f7aff; font-style: normal; font-weight: 700; margin-top: auto; padding-top: 20px; }
.onboarding-module-layout { display: grid; gap: 20px; grid-template-columns: 1.1fr .9fr; }
.onboarding-module-main,.onboarding-module-points { border: 1px solid var(--border-color,#d7e1ef); border-radius: 22px; padding: 26px; }
.onboarding-module-main { background: color-mix(in srgb,#1f7aff 5%,var(--bs-body-bg)); }
.onboarding-module-icon { align-items: center; background: linear-gradient(135deg,#1f7aff,#5b72ff); border-radius: 18px; box-shadow: 0 12px 24px rgba(31,122,255,.2); color: #fff; display: flex; font-size: 1.6rem; height: 62px; justify-content: center; margin-bottom: 18px; width: 62px; }
.onboarding-module-main h3 { font-size: 1.25rem; margin: 16px 0 7px; }
.onboarding-module-main p { color: var(--text-secondary,#64748b); margin-bottom: 22px; }
.onboarding-module-points { display: flex; flex-direction: column; gap: 12px; }
.onboarding-module-points > span { color: var(--text-secondary,#64748b); font-size: .75rem; font-weight: 750; letter-spacing: .06em; margin-bottom: 4px; text-transform: uppercase; }
.onboarding-module-points > div { align-items: center; display: flex; font-weight: 650; gap: 10px; padding: 8px 0; }
.onboarding-module-points > div i { align-items: center; background: #ddf8ed; border-radius: 50%; color: #07845e; display: flex; flex: 0 0 26px; height: 26px; justify-content: center; }
.onboarding-module-points small { background: color-mix(in srgb,#f59e0b 8%,var(--bs-body-bg)); border-radius: 14px; color: var(--text-secondary,#64748b); margin-top: auto; padding: 14px; }
.onboarding-module-points small i { color: #f59e0b; margin-right: 5px; }
.onboarding-import-safety { border: 1px solid color-mix(in srgb,#10b981 30%,transparent); border-radius: 22px; display: flex; flex-direction: column; min-height: 220px; padding: 24px; }
.onboarding-import-safety > i { color: #10a672; font-size: 2rem; }
.onboarding-import-safety strong { font-size: 1.12rem; margin: 14px 0 6px; }
.onboarding-import-safety span { color: var(--text-secondary,#64748b); }
.onboarding-import-safety small { color: #07845e; font-weight: 650; margin-top: auto; padding-top: 20px; }
.onboarding-finish { margin: 0 auto; max-width: 850px; text-align: center; }
.onboarding-finish-mark { align-items: center; background: linear-gradient(135deg,#16a66a,#54e0b4); border-radius: 50%; box-shadow: 0 14px 30px rgba(22,166,106,.24); color: #fff; display: flex; font-size: 2.4rem; height: 78px; justify-content: center; margin: 0 auto 18px; width: 78px; }
.onboarding-checklist { display: grid; gap: 10px; margin: 28px 0; text-align: left; }
.onboarding-checklist > div { align-items: center; border: 1px solid var(--border-color,#d7e1ef); border-radius: 16px; display: flex; gap: 14px; padding: 14px 16px; }
.onboarding-checklist > div > i { color: #16a66a; font-size: 1.3rem; }
.onboarding-checklist .optional > i { color: #f59e0b; }
.onboarding-checklist span { flex: 1; }
.onboarding-checklist strong,.onboarding-checklist small { display: block; }
.onboarding-checklist small { color: var(--text-secondary,#64748b); margin-top: 2px; }
.onboarding-checklist a { color: #1f7aff; font-size: .82rem; font-weight: 700; text-decoration: none; }
@media (max-width: 991.98px) { .onboarding-steps { grid-template-columns: repeat(5,minmax(66px,1fr)); overflow-x: auto; padding-bottom: 4px; } .onboarding-steps a,.onboarding-steps span { display: flex; flex-direction: column; min-width: 94px; text-align: center; } .onboarding-steps-expanded > a,.onboarding-steps-expanded > span { flex-basis: 108px; } .onboarding-steps b { display: none; } .onboarding-welcome { grid-template-columns: 1fr; } }
@media (max-width: 767.98px) { .onboarding-hero { align-items: flex-start; padding: 24px; } .onboarding-progress-ring { flex-basis: 82px; height: 82px; margin-left: 12px; width: 82px; } .onboarding-progress-ring strong { font-size: 1.05rem; } .onboarding-data-summary { grid-template-columns: repeat(2,1fr); } .onboarding-choice-grid,.onboarding-module-layout { grid-template-columns: 1fr; } }
@media (max-width: 575.98px) { .onboarding-hero { border-radius: 20px; } .onboarding-hero p,.onboarding-progress-ring small { display: none; } .onboarding-progress-ring { flex-basis: 66px; height: 66px; width: 66px; } .onboarding-card { border-radius: 20px; } .onboarding-actions { align-items: stretch; flex-direction: column-reverse; } .onboarding-actions .btn,.onboarding-actions form { width: 100%; } .onboarding-actions form .btn { width: 100%; } .onboarding-integration { align-items: flex-start; padding: 18px; } .onboarding-integration-icon { flex-basis: 48px; height: 48px; } }
@media (max-width: 575.98px) { .onboarding-return-bar { align-items: stretch; flex-direction: column; gap: 6px; padding: 10px 18px; } }

/* Central de ajuda */
.help-page,.help-article-page,.help-admin-page{max-width:1380px}.help-hero{background:linear-gradient(125deg,#071b36,#123f84 62%,#1f7aff);border-radius:28px;color:#fff;margin-bottom:22px;overflow:hidden;padding:34px;position:relative}.help-hero:after{background:radial-gradient(circle,rgba(95,210,255,.26),transparent 68%);content:"";height:380px;position:absolute;right:-90px;top:-210px;width:380px}.help-hero>div,.help-search{position:relative;z-index:1}.help-hero>div>span,.help-admin-head>div>span{color:#8fc3ff;font-size:.76rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.help-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin:8px 0}.help-hero p{color:rgba(255,255,255,.74);font-size:1.02rem}.help-search{align-items:center;background:#fff;border-radius:18px;display:flex;gap:10px;margin-top:24px;max-width:820px;padding:8px}.help-search>i{color:#64748b;font-size:1.2rem;margin-left:10px}.help-search input{border:0;flex:1;font-size:1rem;min-width:0;outline:0;padding:10px}.help-toolbar{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:25px}.help-category-tabs{display:flex;flex-wrap:wrap;gap:8px}.help-category-tabs a{align-items:center;background:var(--panel,#fff);border:1px solid var(--line,#d8e1ee);border-radius:30px;color:var(--ink,#172033);display:flex;font-size:.82rem;font-weight:650;gap:7px;padding:10px 14px;text-decoration:none}.help-category-tabs a:hover,.help-category-tabs a.active{background:color-mix(in srgb,#1f7aff 9%,var(--panel,#fff));border-color:#1f7aff;color:#1265df}.help-category-tabs b{align-items:center;background:color-mix(in srgb,#1f7aff 10%,transparent);border-radius:50%;display:flex;font-size:.68rem;height:22px;justify-content:center;width:22px}.help-results-head{align-items:flex-end;display:flex;justify-content:space-between;margin:18px 0}.help-results-head h2{font-size:1.35rem;margin:0}.help-results-head p{color:var(--muted,#64748b);margin:4px 0 0}.help-results-head>a{color:#1f7aff;font-weight:650}.help-article-grid{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}.help-article-card{background:var(--panel,#fff);border:1px solid var(--line,#d8e1ee);border-radius:22px;color:inherit;display:flex;flex-direction:column;min-height:340px;overflow:hidden;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.help-article-card:hover{border-color:#6aa7ff;box-shadow:0 18px 40px rgba(31,122,255,.13);transform:translateY(-4px)}.help-article-card>img,.help-article-visual{height:142px;object-fit:cover;width:100%}.help-article-visual{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,#1f7aff 11%,var(--panel,#fff)),color-mix(in srgb,#705cff 7%,var(--panel,#fff)));display:flex;justify-content:center}.help-article-visual i{align-items:center;background:#1f7aff;border-radius:20px;box-shadow:0 12px 28px rgba(31,122,255,.25);color:#fff;display:flex;font-size:2rem;height:70px;justify-content:center;width:70px}.help-article-body{display:flex;flex:1;flex-direction:column;padding:20px}.help-article-body>span{color:#1f7aff;font-size:.7rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.help-article-body h3{font-size:1.1rem;margin:8px 0}.help-article-body p{color:var(--muted,#64748b);font-size:.85rem;line-height:1.55}.help-article-body small{align-items:center;color:var(--muted,#64748b);display:flex;gap:6px;margin-top:auto}.help-article-body small i:last-child{color:#1f7aff;margin-left:auto}.help-empty{background:var(--panel,#fff);border:1px dashed var(--line,#d8e1ee);border-radius:24px;padding:60px 24px;text-align:center}.help-empty>i{color:#1f7aff;font-size:2.5rem}.help-breadcrumb{align-items:center;color:var(--muted,#64748b);display:flex;flex-wrap:wrap;font-size:.78rem;gap:8px;margin-bottom:18px}.help-breadcrumb a{color:#1f7aff;text-decoration:none}.help-article-layout{align-items:start;display:grid;gap:22px;grid-template-columns:minmax(0,1fr) 300px}.help-article-content{border-radius:26px;overflow:hidden;padding:0}.help-article-content>header{background:linear-gradient(135deg,color-mix(in srgb,#1f7aff 8%,var(--panel,#fff)),var(--panel,#fff));border-bottom:1px solid var(--line,#d8e1ee);padding:38px}.help-article-content>header>span{color:#1f7aff;font-size:.75rem;font-weight:750;text-transform:uppercase}.help-article-content>header h1{font-size:clamp(1.8rem,3vw,2.7rem);margin:10px 0}.help-article-content>header p{color:var(--muted,#64748b);font-size:1rem;line-height:1.65}.help-article-content>header small{color:var(--muted,#64748b)}.help-cover{margin:0}.help-cover img{display:block;max-height:520px;object-fit:cover;width:100%}.help-blocks{padding:12px 38px 28px}.help-block{border-bottom:1px solid var(--line,#d8e1ee);padding:28px 0}.help-block h2,.help-steps h2{font-size:1.35rem;margin-bottom:15px}.help-block p{color:var(--muted,#64748b);line-height:1.75;margin:0}.help-steps{padding:28px 0}.help-steps ol{display:grid;gap:12px;list-style:none;margin:0;padding:0}.help-steps li{align-items:flex-start;background:color-mix(in srgb,#1f7aff 4%,var(--panel,#fff));border:1px solid color-mix(in srgb,#1f7aff 13%,var(--line,#d8e1ee));border-radius:16px;display:flex;gap:13px;padding:14px}.help-steps li b{align-items:center;background:#1f7aff;border-radius:10px;color:#fff;display:flex;flex:0 0 32px;height:32px;justify-content:center}.help-steps li span{line-height:1.55;padding-top:5px}.help-callout{border-radius:18px;display:flex;gap:14px;margin:22px 0;padding:18px}.help-callout>i{font-size:1.3rem}.help-callout strong{display:block;margin-bottom:4px}.help-callout p{margin:0}.help-callout.dica{background:color-mix(in srgb,#10b981 9%,var(--panel,#fff));border:1px solid color-mix(in srgb,#10b981 28%,transparent)}.help-callout.dica>i{color:#0b9d70}.help-callout.alerta{background:color-mix(in srgb,#f59e0b 10%,var(--panel,#fff));border:1px solid color-mix(in srgb,#f59e0b 30%,transparent)}.help-callout.alerta>i{color:#d98c00}.help-tutorial-image{margin:28px 0}.help-tutorial-image img{border:1px solid var(--line,#d8e1ee);border-radius:18px;display:block;width:100%}.help-tutorial-image figcaption{color:var(--muted,#64748b);font-size:.75rem;padding:8px;text-align:center}.help-feedback{align-items:center;background:color-mix(in srgb,#1f7aff 5%,var(--panel,#fff));border-top:1px solid var(--line,#d8e1ee);display:flex;justify-content:space-between;padding:22px 38px}.help-feedback form{display:flex;gap:8px}.help-article-aside{display:grid;gap:14px;position:sticky;top:92px}.help-article-aside>.content-panel{border-radius:20px;padding:18px}.help-article-aside h3{font-size:.9rem;margin-bottom:12px}.help-article-aside span,.help-article-aside a{border-bottom:1px solid var(--line,#d8e1ee);color:var(--muted,#64748b);display:block;font-size:.78rem;padding:9px 0;text-decoration:none}.help-article-aside a:hover{color:#1f7aff}.help-article-aside a small{display:block;margin-top:3px}.help-admin-head{align-items:center;background:linear-gradient(125deg,#071b36,#174b99);border-radius:26px;color:#fff;display:flex;justify-content:space-between;margin-bottom:20px;padding:28px}.help-admin-head h1{margin:6px 0}.help-admin-head p{color:rgba(255,255,255,.7);margin:0}.help-admin-head>div:last-child{display:flex;gap:8px}.help-admin-layout{align-items:start;display:grid;gap:18px;grid-template-columns:300px minmax(0,1fr)}.help-admin-list{border-radius:22px;padding:14px;position:sticky;top:90px}.help-admin-list h2{align-items:center;display:flex;font-size:1rem;justify-content:space-between;padding:8px}.help-admin-list h2 b{background:#eaf2ff;border-radius:20px;color:#1f7aff;font-size:.7rem;padding:5px 9px}.help-admin-list>a{border:1px solid transparent;border-radius:14px;color:inherit;display:block;margin-bottom:5px;padding:11px;text-decoration:none}.help-admin-list>a:hover,.help-admin-list>a.active{background:color-mix(in srgb,#1f7aff 7%,var(--panel,#fff));border-color:color-mix(in srgb,#1f7aff 20%,transparent)}.help-admin-list>a span,.help-admin-list>a small{color:var(--muted,#64748b);display:block;font-size:.68rem}.help-admin-list>a strong{display:block;font-size:.82rem;margin:4px 0}.help-category-create{border-top:1px solid var(--line,#d8e1ee);margin-top:10px;padding-top:10px}.help-category-create summary{cursor:pointer;font-size:.82rem;font-weight:650;padding:10px}.help-category-create form{display:grid;gap:8px;padding:8px}.help-admin-editor>.content-panel{border-radius:22px}.help-admin-blocks{display:grid;gap:8px}.help-admin-blocks>div{align-items:center;border:1px solid var(--line,#d8e1ee);border-radius:14px;display:flex;gap:10px;padding:10px}.help-admin-blocks>div>i{align-items:center;background:#eaf2ff;border-radius:10px;color:#1f7aff;display:flex;height:38px;justify-content:center;width:38px}.help-admin-blocks>div>span{flex:1}.help-admin-blocks small,.help-admin-blocks strong{display:block}.help-admin-blocks small{color:var(--muted,#64748b);font-size:.68rem}.help-block-editor{border-top:1px solid var(--line,#d8e1ee);margin-top:22px;padding-top:22px}.help-block-editor h3{font-size:1rem;margin-bottom:15px}
@media(max-width:1100px){.help-article-grid{grid-template-columns:repeat(2,1fr)}.help-admin-layout{grid-template-columns:250px minmax(0,1fr)}}
@media(max-width:991.98px){.help-article-layout{grid-template-columns:1fr}.help-article-aside{grid-template-columns:repeat(2,1fr);position:static}.help-admin-layout{grid-template-columns:1fr}.help-admin-list{position:static}.help-admin-list>a{display:inline-block;vertical-align:top;width:calc(50% - 4px)}}
@media(max-width:767.98px){.help-hero{padding:26px}.help-toolbar,.help-admin-head{align-items:stretch;flex-direction:column}.help-article-grid{grid-template-columns:1fr}.help-article-card{min-height:300px}.help-article-content>header,.help-blocks,.help-feedback{padding-left:22px;padding-right:22px}.help-article-aside{grid-template-columns:1fr}.help-admin-head>div:last-child{flex-wrap:wrap}.help-admin-list>a{width:100%}}
@media(max-width:575.98px){.help-search{align-items:stretch;flex-direction:column}.help-search>i{display:none}.help-search input{width:100%}.help-search .btn{width:100%}.help-category-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.help-category-tabs::-webkit-scrollbar{display:none}.help-category-tabs a{flex:0 0 auto}.help-feedback{align-items:stretch;flex-direction:column;gap:12px}.help-feedback form,.help-feedback form .btn{flex:1}.help-admin-head>div:last-child .btn{flex:1}}

/* Conversão de testes gratuitos */
.trial-page{max-width:1500px}.trial-hero{align-items:center;background:linear-gradient(125deg,#071b36,#164c9e 65%,#237cff);border-radius:28px;color:#fff;display:flex;gap:25px;justify-content:space-between;margin-bottom:18px;overflow:hidden;padding:30px 34px;position:relative}.trial-hero:after{background:radial-gradient(circle,rgba(88,202,255,.28),transparent 68%);content:"";height:320px;position:absolute;right:-70px;top:-160px;width:320px}.trial-hero>div{position:relative;z-index:1}.trial-hero>div:first-child{max-width:800px}.trial-hero span{color:#92c5ff;font-size:.74rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.trial-hero h1{font-size:clamp(1.8rem,3.4vw,2.7rem);margin:7px 0}.trial-hero p{color:rgba(255,255,255,.73);line-height:1.6;margin:0}.trial-hero-total{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.2);border-radius:20px;display:grid;min-width:170px;padding:20px;text-align:center}.trial-hero-total strong{font-size:2.3rem}.trial-hero-total span{color:rgba(255,255,255,.72);font-size:.7rem}.trial-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(5,1fr);margin-bottom:18px}.trial-summary-grid>a{align-items:center;background:var(--panel,#fff);border:1px solid var(--line,#d8e1ee);border-radius:18px;color:inherit;display:flex;gap:13px;padding:15px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.trial-summary-grid>a:hover{box-shadow:0 12px 26px rgba(15,39,74,.1);transform:translateY(-2px)}.trial-summary-grid>a>i{align-items:center;background:color-mix(in srgb,var(--trial-accent) 11%,transparent);border-radius:13px;color:var(--trial-accent);display:flex;font-size:1.15rem;height:44px;justify-content:center;width:44px}.trial-summary-grid span,.trial-summary-grid strong,.trial-summary-grid small{display:block}.trial-summary-grid strong{font-size:1.3rem}.trial-summary-grid small{color:var(--muted,#64748b);font-size:.7rem}.trial-filter{align-items:end;display:grid;gap:12px;grid-template-columns:minmax(260px,1fr) 280px auto auto}.trial-toolbar{align-items:flex-end;display:flex;gap:15px;justify-content:space-between;margin:24px 0 15px}.trial-toolbar h2{font-size:1.25rem;margin:0}.trial-toolbar p{color:var(--muted,#64748b);margin:4px 0 0}.trial-toolbar>div:last-child{display:flex;gap:8px}.trial-account-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.trial-account-card{background:var(--panel,#fff);border:1px solid var(--line,#d8e1ee);border-radius:22px;box-shadow:0 12px 28px rgba(15,39,74,.05);padding:20px}.trial-account-card.expired{border-color:color-mix(in srgb,#ef4444 35%,var(--line,#d8e1ee))}.trial-account-card>header{align-items:center;display:flex;gap:12px}.trial-account-avatar{align-items:center;background:linear-gradient(135deg,#2478ff,#705cff);border-radius:14px;color:#fff;display:flex;font-size:1.2rem;font-weight:750;height:46px;justify-content:center;width:46px}.trial-account-card>header>div:nth-child(2){flex:1}.trial-account-card>header span,.trial-account-card>header small{display:block}.trial-account-card>header span{font-weight:700}.trial-account-card>header small{color:var(--muted,#64748b);font-size:.7rem}.trial-account-card>header em{border-radius:30px;font-size:.68rem;font-style:normal;font-weight:700;padding:7px 10px}.trial-account-card>header em.danger{background:#fff0f0;color:#dc3545}.trial-account-card>header em.review{background:#fff7e8;color:#b56b00}.trial-contact{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin:18px 0}.trial-contact>div{align-items:center;background:color-mix(in srgb,#2478ff 4%,var(--panel,#fff));border:1px solid var(--line,#d8e1ee);border-radius:14px;display:flex;gap:10px;min-width:0;padding:11px}.trial-contact i{color:#2478ff}.trial-contact span{min-width:0}.trial-contact strong,.trial-contact small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trial-contact strong{font-size:.82rem}.trial-contact small{color:var(--muted,#64748b);font-size:.67rem}.trial-progress{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.trial-progress span{background:color-mix(in srgb,#64748b 7%,transparent);border-radius:30px;color:var(--muted,#64748b);font-size:.67rem;padding:7px 9px}.trial-commercial-form{align-items:end;display:grid;gap:9px;grid-template-columns:180px minmax(180px,1fr) auto}.trial-commercial-form label{font-size:.7rem}.trial-account-card>footer{align-items:center;border-top:1px solid var(--line,#d8e1ee);display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px}.trial-empty{grid-column:1/-1}.onboarding-evolution-panel .evolution-office-grid{margin-top:0}.onboarding-evolution-panel .evolution-office-config,.onboarding-evolution-panel .evolution-connection-card{background:color-mix(in srgb,#2478ff 3%,var(--panel,#fff));border-radius:18px;padding:18px}.onboarding-evolution-panel .evolution-qr-placeholder{min-height:270px}
@media(max-width:1199.98px){.trial-summary-grid{grid-template-columns:repeat(3,1fr)}.trial-account-grid{grid-template-columns:1fr}}
@media(max-width:767.98px){.trial-hero{align-items:stretch;flex-direction:column;padding:26px}.trial-hero-total{min-width:0}.trial-summary-grid{grid-template-columns:repeat(2,1fr)}.trial-filter{grid-template-columns:1fr 1fr}.trial-filter>div{grid-column:1/-1}.trial-toolbar{align-items:stretch;flex-direction:column}.trial-toolbar>div:last-child{flex-wrap:wrap}.trial-contact,.trial-commercial-form{grid-template-columns:1fr}.trial-commercial-form>button{width:100%}.trial-account-card>header{align-items:flex-start;flex-wrap:wrap}.trial-account-card>header em{margin-left:58px}.onboarding-evolution-panel .evolution-office-grid{grid-template-columns:1fr}}
@media(max-width:479.98px){.trial-summary-grid{grid-template-columns:1fr}.trial-filter{grid-template-columns:1fr}.trial-toolbar>div:last-child,.trial-toolbar form,.trial-toolbar .btn,.trial-account-card>footer,.trial-account-card>footer>.btn,.trial-account-card>footer>form,.trial-account-card>footer>form .btn{width:100%}.trial-account-card>header em{margin-left:0;width:100%;text-align:center}}

.trial-conversion-metrics{display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:18px}.trial-conversion-metrics>div,.trial-conversion-metrics>a{align-items:center;background:var(--panel,#fff);border:1px solid var(--line,#d8e1ee);border-radius:18px;color:inherit;display:flex;gap:12px;padding:15px;text-decoration:none}.trial-conversion-metrics i{align-items:center;background:color-mix(in srgb,#2478ff 9%,transparent);border-radius:12px;color:#2478ff;display:flex;font-size:1.1rem;height:42px;justify-content:center;width:42px}.trial-conversion-metrics strong,.trial-conversion-metrics small{display:block}.trial-conversion-metrics strong{font-size:1.3rem}.trial-conversion-metrics small{color:var(--muted,#64748b);font-size:.7rem}.trial-message-manager{border-radius:20px;overflow:hidden}.trial-message-manager>summary{align-items:center;cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:18px 20px}.trial-message-manager>summary::-webkit-details-marker{display:none}.trial-message-manager>summary>span{align-items:center;display:flex;gap:11px}.trial-message-manager>summary>span>i{color:#2478ff;font-size:1.2rem}.trial-message-manager>summary strong,.trial-message-manager>summary small{display:block}.trial-message-manager>summary small{color:var(--muted,#64748b);font-size:.7rem}.trial-message-manager[open]>summary>i{transform:rotate(180deg)}.trial-message-manager-body{border-top:1px solid var(--line,#d8e1ee);display:grid;gap:12px;padding:18px}.trial-template-form{align-items:end;background:color-mix(in srgb,#2478ff 3%,var(--panel,#fff));border:1px solid var(--line,#d8e1ee);border-radius:15px;display:grid;gap:10px;grid-template-columns:180px minmax(280px,1fr) auto auto auto;padding:13px}.trial-template-form.new{border-style:dashed}.trial-template-message textarea{min-height:80px}.trial-commercial-extra{display:grid;gap:9px;grid-column:1/-1;grid-template-columns:190px minmax(180px,1fr) 210px}.trial-reminder{background:#eef6ff;border:1px solid #b9d6ff;border-radius:12px;color:#1767d2;font-size:.72rem;font-weight:650;margin-bottom:12px;padding:9px 11px}.trial-reminder.due{background:#fff5e8;border-color:#ffd99c;color:#a66100}.trial-history{border-top:1px dashed var(--line,#d8e1ee);margin-top:14px;padding-top:12px}.trial-history>summary{align-items:center;color:var(--muted,#64748b);cursor:pointer;display:flex;font-size:.75rem;font-weight:650;gap:7px;list-style:none}.trial-history>summary b{background:#eaf2ff;border-radius:20px;color:#2478ff;font-size:.65rem;padding:3px 7px}.trial-history>div{display:grid;gap:7px;margin-top:10px}.trial-history>div>span{align-items:flex-start;background:color-mix(in srgb,#64748b 5%,transparent);border-radius:11px;display:flex;gap:9px;padding:9px}.trial-history>div>span>i{color:#2478ff}.trial-history em{font-style:normal}.trial-history strong,.trial-history small{display:block}.trial-history strong{font-size:.72rem}.trial-history small{color:var(--muted,#64748b);font-size:.65rem}.trial-whatsapp-form{display:flex;gap:7px}.trial-whatsapp-form select{max-width:190px;min-width:150px}
@media(max-width:1199.98px){.trial-template-form{grid-template-columns:160px minmax(220px,1fr) auto auto}.trial-template-form>.btn{grid-column:1/-1}.trial-conversion-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767.98px){.trial-template-form,.trial-commercial-extra{grid-template-columns:1fr}.trial-template-form>.btn{width:100%}.trial-whatsapp-form{width:100%;flex-wrap:wrap}.trial-whatsapp-form select{flex:1;max-width:none}.trial-conversion-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:479.98px){.trial-conversion-metrics{grid-template-columns:1fr}.trial-whatsapp-form,.trial-whatsapp-form select,.trial-whatsapp-form .btn{width:100%}}

/* CRM comercial dos testes gratuitos */
.trial-pipeline {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 18px;
}

.trial-pipeline > a {
  align-items: center;
  background: var(--panel, #fff);
  border: 1px solid var(--line, #d8e1ee);
  border-radius: 17px;
  color: inherit;
  display: flex;
  gap: 10px;
  min-width: 0;
  padding: 13px;
  text-decoration: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.trial-pipeline > a:hover,
.trial-pipeline > a.active {
  border-color: var(--pipeline-color);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--pipeline-color) 13%, transparent);
  transform: translateY(-2px);
}

.trial-pipeline > a > i:first-child {
  align-items: center;
  background: color-mix(in srgb, var(--pipeline-color) 11%, transparent);
  border-radius: 11px;
  color: var(--pipeline-color);
  display: flex;
  flex: 0 0 38px;
  height: 38px;
  justify-content: center;
}

.trial-pipeline > a > span { flex: 1; min-width: 0; }
.trial-pipeline strong,
.trial-pipeline small { display: block; }
.trial-pipeline strong { font-size: 1rem; }
.trial-pipeline small { color: var(--muted, #64748b); font-size: .66rem; line-height: 1.3; }
.trial-pipeline > a > i:last-child { color: var(--pipeline-color); font-size: .72rem; }

.trial-converted {
  border-radius: 20px;
  overflow: hidden;
}

.trial-converted > summary,
.trial-activity > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 11px;
  list-style: none;
}

.trial-converted > summary { padding: 17px 20px; }
.trial-converted > summary::-webkit-details-marker,
.trial-activity > summary::-webkit-details-marker { display: none; }
.trial-converted > summary > span,
.trial-activity > summary > span { flex: 1; }
.trial-converted > summary strong,
.trial-converted > summary small,
.trial-activity > summary strong,
.trial-activity > summary small { display: block; }
.trial-converted > summary small,
.trial-activity > summary small { color: var(--muted, #64748b); font-size: .68rem; margin-top: 2px; }
.trial-converted > summary > i:first-child { color: #f59e0b; font-size: 1.25rem; }
.trial-converted > summary > b { background: #e7f8ef; border-radius: 30px; color: #07845e; font-size: .7rem; padding: 6px 9px; }
.trial-converted[open] > summary > i:last-child,
.trial-activity[open] > summary > i:last-child { transform: rotate(180deg); }

.trial-converted > div {
  border-top: 1px solid var(--line, #d8e1ee);
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 14px 18px 18px;
}

.trial-converted > div > a {
  align-items: center;
  background: color-mix(in srgb, #10b981 5%, var(--panel, #fff));
  border: 1px solid color-mix(in srgb, #10b981 20%, var(--line, #d8e1ee));
  border-radius: 14px;
  color: inherit;
  display: flex;
  gap: 10px;
  padding: 11px;
  text-decoration: none;
}

.trial-converted > div > a > i { color: #0a9b6e; font-size: 1.1rem; }
.trial-converted > div > a > span { flex: 1; min-width: 0; }
.trial-converted > div strong,
.trial-converted > div small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.trial-converted > div strong { font-size: .78rem; }
.trial-converted > div small { color: var(--muted, #64748b); font-size: .65rem; }
.trial-converted > div em { color: #07845e; font-size: .68rem; font-style: normal; font-weight: 650; }

.trial-activity {
  border: 1px dashed color-mix(in srgb, #2478ff 28%, var(--line, #d8e1ee));
  border-radius: 14px;
  margin-top: 14px;
  overflow: hidden;
}

.trial-activity > summary {
  padding: 11px 13px;
}

.trial-activity > summary > i:first-child { color: #2478ff; }
.trial-activity > form {
  align-items: end;
  background: color-mix(in srgb, #2478ff 3%, var(--panel, #fff));
  border-top: 1px solid var(--line, #d8e1ee);
  display: grid;
  gap: 9px;
  grid-template-columns: 130px minmax(0, 1fr) 180px;
  padding: 13px;
}

.trial-activity .form-label { font-size: .68rem; }
.trial-activity > form > button { grid-column: 1 / -1; justify-self: end; }
.trial-extend-form { display: flex; gap: 6px; }
.trial-extend-form .form-select { min-width: 92px; width: auto; }

@media (max-width: 1199.98px) {
  .trial-pipeline { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .trial-activity > form { grid-template-columns: 130px minmax(0, 1fr) 190px; }
}

@media (max-width: 767.98px) {
  .trial-pipeline { display: flex; overflow-x: auto; padding-bottom: 5px; scrollbar-width: none; }
  .trial-pipeline::-webkit-scrollbar { display: none; }
  .trial-pipeline > a { flex: 0 0 190px; }
  .trial-converted > div { grid-template-columns: 1fr; }
  .trial-activity > form { grid-template-columns: 1fr; }
  .trial-activity > form > button { justify-self: stretch; width: 100%; }
  .trial-extend-form { width: 100%; }
  .trial-extend-form .form-select { flex: 1; width: 100%; }
}

/* Guias ilustrados */
.help-article-content > header {
  overflow: hidden;
  position: relative;
}

.help-article-content > header::after {
  background: radial-gradient(circle, color-mix(in srgb, #1f7aff 15%, transparent), transparent 68%);
  content: "";
  height: 310px;
  pointer-events: none;
  position: absolute;
  right: -90px;
  top: -170px;
  width: 310px;
}

.help-article-content > header > * {
  position: relative;
  z-index: 1;
}

.help-article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}

.help-article-meta > span {
  align-items: center;
  background: color-mix(in srgb, #1f7aff 7%, var(--panel, #fff));
  border: 1px solid color-mix(in srgb, #1f7aff 14%, var(--line, #d8e1ee));
  border-radius: 30px;
  color: var(--muted, #64748b);
  display: inline-flex;
  font-size: .72rem;
  font-weight: 650;
  gap: 7px;
  padding: 7px 11px;
}

.help-article-meta i {
  color: #1f7aff;
}

.help-guide-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 24px 38px 0;
}

.help-guide-summary > div {
  align-items: center;
  background: color-mix(in srgb, #1f7aff 4%, var(--panel, #fff));
  border: 1px solid color-mix(in srgb, #1f7aff 13%, var(--line, #d8e1ee));
  border-radius: 16px;
  display: flex;
  gap: 11px;
  min-width: 0;
  padding: 13px;
}

.help-guide-summary > div > i,
.help-block-heading > i {
  align-items: center;
  background: linear-gradient(135deg, #2478ff, #5b72ff);
  border-radius: 11px;
  box-shadow: 0 8px 18px rgba(31, 122, 255, .17);
  color: #fff;
  display: flex;
  flex: 0 0 36px;
  height: 36px;
  justify-content: center;
  width: 36px;
}

.help-guide-summary strong,
.help-guide-summary small {
  display: block;
}

.help-guide-summary strong {
  font-size: .78rem;
}

.help-guide-summary small {
  color: var(--muted, #64748b);
  font-size: .66rem;
  line-height: 1.35;
  margin-top: 2px;
}

.help-block,
.help-callout,
.help-tutorial-image {
  scroll-margin-top: 105px;
}

.help-block-heading {
  align-items: center;
  display: flex;
  gap: 12px;
  margin-bottom: 17px;
}

.help-block-heading > i {
  flex-basis: 38px;
  height: 38px;
  width: 38px;
}

.help-block-heading h2,
.help-steps .help-block-heading h2 {
  margin: 0;
}

.help-steps li {
  overflow: hidden;
  position: relative;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.help-steps li::after {
  background: linear-gradient(180deg, #1f7aff, #6c5cff);
  content: "";
  inset: 0 auto 0 0;
  opacity: 0;
  position: absolute;
  transition: opacity .2s ease;
  width: 3px;
}

.help-steps li:hover {
  border-color: color-mix(in srgb, #1f7aff 38%, var(--line, #d8e1ee));
  box-shadow: 0 10px 22px rgba(31, 122, 255, .08);
  transform: translateX(3px);
}

.help-steps li:hover::after {
  opacity: 1;
}

.help-tutorial-image {
  background: #0c1728;
  border: 1px solid color-mix(in srgb, #1f7aff 28%, var(--line, #d8e1ee));
  border-radius: 20px;
  box-shadow: 0 18px 38px rgba(11, 31, 61, .13);
  overflow: hidden;
}

.help-tutorial-toolbar {
  align-items: center;
  color: #dbe8fa;
  display: grid;
  gap: 12px;
  grid-template-columns: auto 1fr auto;
  min-height: 48px;
  padding: 8px 12px 8px 16px;
}

.help-tutorial-toolbar strong {
  font-size: .76rem;
  font-weight: 650;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.help-window-dots {
  display: flex;
  gap: 6px;
}

.help-window-dots i {
  background: #ff5f57;
  border-radius: 50%;
  height: 8px;
  width: 8px;
}

.help-window-dots i:nth-child(2) { background: #febc2e; }
.help-window-dots i:nth-child(3) { background: #28c840; }

.help-tutorial-toolbar button {
  align-items: center;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 30px;
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: .68rem;
  gap: 6px;
  padding: 7px 10px;
  transition: background .2s ease, transform .2s ease;
}

.help-tutorial-toolbar button:hover {
  background: rgba(255, 255, 255, .16);
  transform: translateY(-1px);
}

.help-tutorial-preview {
  background: #eef4fb;
  border: 0;
  cursor: zoom-in;
  display: block;
  padding: 0;
  position: relative;
  width: 100%;
}

.help-tutorial-preview::after {
  align-items: center;
  background: rgba(6, 23, 48, .76);
  border-radius: 30px;
  color: #fff;
  content: "Clique para ampliar";
  display: flex;
  font-size: .72rem;
  font-weight: 650;
  left: 50%;
  opacity: 0;
  padding: 9px 14px;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -42%);
  transition: opacity .2s ease, transform .2s ease;
}

.help-tutorial-preview:hover::after {
  opacity: 1;
  transform: translate(-50%, -50%);
}

.help-tutorial-image .help-tutorial-preview img {
  border: 0;
  border-radius: 0;
  display: block;
  transition: filter .2s ease, transform .35s ease;
  width: 100%;
}

.help-tutorial-preview:hover img {
  filter: brightness(.9);
  transform: scale(1.006);
}

.help-tutorial-image figcaption {
  align-items: flex-start;
  background: #101f34;
  color: #b7c8de;
  display: flex;
  font-size: .72rem;
  gap: 8px;
  line-height: 1.5;
  padding: 12px 16px;
  text-align: left;
}

.help-tutorial-image figcaption i {
  color: #69a9ff;
  margin-top: 1px;
}

.help-article-aside > .content-panel:first-child a {
  align-items: center;
  display: flex;
  gap: 6px;
}

.help-article-aside > .content-panel:first-child a i {
  color: #1f7aff;
  font-size: .66rem;
  transition: transform .2s ease;
}

.help-article-aside > .content-panel:first-child a:hover i {
  transform: translateX(3px);
}

.help-article-aside > .help-article-cta {
  align-items: center;
  background: linear-gradient(135deg, #116fe9, #5a62f6);
  border-bottom: 0;
  border-radius: 20px;
  box-shadow: 0 14px 28px rgba(31, 122, 255, .2);
  color: #fff;
  display: flex;
  font-size: inherit;
  gap: 11px;
  padding: 17px;
  text-decoration: none;
  transition: box-shadow .2s ease, transform .2s ease;
}

.help-article-cta:hover {
  box-shadow: 0 18px 34px rgba(31, 122, 255, .28);
  color: #fff;
  transform: translateY(-2px);
}

.help-article-cta > i:first-child {
  align-items: center;
  background: rgba(255, 255, 255, .15);
  border-radius: 12px;
  display: flex;
  flex: 0 0 40px;
  height: 40px;
  justify-content: center;
}

.help-article-cta > span {
  border: 0;
  color: #fff;
  display: block;
  flex: 1;
  padding: 0;
}
.help-article-cta strong,
.help-article-cta small { display: block; }
.help-article-cta strong { font-size: .8rem; }
.help-article-cta small { color: rgba(255, 255, 255, .72); font-size: .64rem; margin-top: 2px; }

.help-image-dialog {
  background: transparent;
  border: 0;
  height: 100vh;
  max-height: none;
  max-width: none;
  padding: 48px;
  width: 100vw;
}

.help-image-dialog::backdrop {
  background: rgba(3, 12, 27, .88);
  backdrop-filter: blur(7px);
}

.help-image-dialog > button {
  align-items: center;
  background: #fff;
  border: 0;
  border-radius: 50%;
  color: #132139;
  cursor: pointer;
  display: flex;
  font-size: 1rem;
  height: 42px;
  justify-content: center;
  position: fixed;
  right: 24px;
  top: 20px;
  width: 42px;
  z-index: 1;
}

.help-image-dialog > img {
  border-radius: 18px;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .45);
  display: block;
  margin: 0 auto;
  max-height: calc(100vh - 120px);
  max-width: 100%;
  object-fit: contain;
}

.help-image-dialog > p {
  color: #dbe8fa;
  font-size: .78rem;
  margin: 12px auto 0;
  max-width: 900px;
  text-align: center;
}

@media (max-width: 767.98px) {
  .help-guide-summary {
    grid-template-columns: 1fr;
    margin-left: 22px;
    margin-right: 22px;
  }

  .help-guide-summary > div {
    padding: 11px 13px;
  }

  .help-tutorial-toolbar strong { text-align: left; }
  .help-tutorial-toolbar button span { display: none; }
  .help-image-dialog { padding: 54px 12px 20px; }
}

@media (max-width: 479.98px) {
  .help-article-meta { align-items: stretch; flex-direction: column; }
  .help-article-meta > span { width: fit-content; }
  .help-tutorial-toolbar { grid-template-columns: auto minmax(0, 1fr) auto; }
  .help-tutorial-image { border-radius: 15px; margin-left: -8px; margin-right: -8px; }
}

/* Responsive QA: shared operational filters and modal headers */
@media (max-width: 1199.98px) {
  .compact-filter:has(> div:nth-of-type(3)),
  .stock-movement-filter,
  .product-filter.is-admin {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 100%;
    min-width: 0;
    width: 100%;
  }

  .compact-filter:has(> div:nth-of-type(3)) > div:first-child,
  .stock-movement-filter > div:first-child {
    grid-column: 1 / -1;
  }

  .product-filter.is-admin .filter-actions {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }

  .compact-filter > div,
  .stock-movement-filter > div,
  .product-filter > div,
  .compact-filter .form-control,
  .compact-filter .form-select,
  .stock-movement-filter .form-control,
  .stock-movement-filter .form-select,
  .product-filter .form-control,
  .product-filter .form-select {
    min-width: 0;
  }
}

@media (max-width: 767.98px) {
  .office-management-list .modal-content .section-title {
    align-items: flex-start;
    flex-direction: row;
    gap: 10px;
  }

  .office-management-list .modal-content .section-title > div:first-child {
    min-width: 0;
  }

  .office-management-list .modal-content .section-title > .d-flex {
    flex: 0 0 auto;
    margin-left: auto;
  }
}

@media (max-width: 575.98px) {
  .login-shell:not(.register-shell) .login-hero {
    justify-content: flex-start;
    padding: 24px 20px;
  }

  .login-shell:not(.register-shell) .login-logo {
    height: 64px;
    margin: 0 0 14px;
    width: 64px;
  }

  .login-shell:not(.register-shell) .login-kicker {
    margin-bottom: 12px;
  }

  .login-shell:not(.register-shell) .login-hero h1 {
    font-size: 1.65rem;
    margin-bottom: 12px;
  }

  .login-shell:not(.register-shell) .login-hero p {
    font-size: .92rem;
    line-height: 1.45;
    margin-bottom: 18px;
  }

  .login-shell:not(.register-shell) .login-feature-list {
    gap: 8px;
  }

  .login-shell:not(.register-shell) .login-hero small {
    margin-top: 20px;
  }
}

/* Institutional FAQ: animated disclosure control */
.inst-faq-list summary {
  gap: 18px;
  min-height: 60px;
  transition: color .24s ease;
}

.inst-faq-list summary i {
  align-items: center;
  background: color-mix(in srgb, var(--inst-blue) 7%, transparent);
  border: 1px solid color-mix(in srgb, var(--inst-blue) 22%, transparent);
  border-radius: 50%;
  color: var(--inst-blue);
  display: inline-flex;
  flex: 0 0 34px;
  font-size: .82rem;
  height: 34px;
  justify-content: center;
  transform: rotate(0deg) scale(1);
  transition:
    background-color .28s ease,
    border-color .28s ease,
    color .28s ease,
    box-shadow .28s ease,
    transform .38s cubic-bezier(.34, 1.56, .64, 1);
  width: 34px;
}

.inst-faq-list summary i::before {
  line-height: 1;
}

.inst-faq-list details:not([open]) summary:hover i {
  background: color-mix(in srgb, var(--inst-blue) 13%, transparent);
  border-color: color-mix(in srgb, var(--inst-blue) 42%, transparent);
  box-shadow: 0 7px 18px color-mix(in srgb, var(--inst-blue) 18%, transparent);
  transform: rotate(0deg) scale(1.08);
}

.inst-faq-list summary:active i {
  transform: scale(.92);
  transition-duration: .1s;
}

.inst-faq-list details[open] summary i {
  background: var(--inst-blue);
  border-color: var(--inst-blue);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--inst-blue) 28%, transparent);
  color: #fff;
  transform: rotate(45deg) scale(1);
}

.inst-faq-list details[open] summary:hover i {
  box-shadow: 0 10px 24px color-mix(in srgb, var(--inst-blue) 34%, transparent);
  transform: rotate(45deg) scale(1.06);
}

.inst-faq-list details[open] summary:active i {
  transform: rotate(45deg) scale(.92);
}

@media (max-width: 575.98px) {
  .inst-faq-list summary {
    gap: 12px;
  }

  .inst-faq-list summary i {
    flex-basis: 32px;
    height: 32px;
    width: 32px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .inst-faq-list summary,
  .inst-faq-list summary i,
  .inst-faq-list details,
  .inst-faq-answer {
    transition: none !important;
  }
}

/* Overrides finais: o conteúdo útil pode ser menor mesmo em viewports desktop. */
.trial-commercial-extra {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.25fr) minmax(0, 1fr);
}

.trial-commercial-extra > * {
  min-width: 0;
}

@media (max-width: 1399.98px) {
  .saas-workspace-nav {
    grid-template-columns: 1fr;
  }

  .saas-workspace-tabs > a {
    font-size: .69rem;
    line-height: 1.15;
    text-align: center;
    white-space: normal;
  }
}

@media (max-width: 991.98px) {
  .trial-filter {
    grid-template-columns: 1fr 1fr;
  }

  .trial-filter > div {
    grid-column: 1 / -1;
  }
}

@media (max-width: 767.98px) {
  .trial-commercial-extra {
    grid-template-columns: 1fr;
  }
}

/* Ajuda, atendimento e caixa de notificações */
.help-workspace-nav{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:18px;display:grid;gap:16px;grid-template-columns:minmax(260px,.45fr) minmax(0,1fr);margin-bottom:20px;padding:13px}.help-workspace-title{align-items:center;display:flex;gap:12px;min-width:0}.help-workspace-title>span{align-items:center;background:linear-gradient(135deg,#1677ff,#6757ff);border-radius:13px;color:#fff;display:flex;font-size:1.15rem;height:48px;justify-content:center;width:48px}.help-workspace-title>div{display:grid;min-width:0}.help-workspace-title strong{font-size:.9rem}.help-workspace-title small{color:var(--muted);font-size:.69rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-workspace-nav>nav{background:var(--soft);border:1px solid var(--line);border-radius:13px;display:grid;gap:5px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:5px}.help-workspace-nav>nav a{align-items:center;border-radius:10px;color:var(--muted);display:flex;font-size:.72rem;font-weight:650;gap:7px;justify-content:center;min-height:42px;padding:8px;text-align:center;text-decoration:none}.help-workspace-nav>nav a:hover{background:var(--panel);color:var(--ink)}.help-workspace-nav>nav a.active{background:linear-gradient(135deg,#1677ff,#4b78f8);box-shadow:0 7px 18px rgba(22,119,255,.2);color:#fff}.support-page{max-width:1500px}.support-hero,.support-admin-hero{align-items:center;background:linear-gradient(125deg,#071b36,#1553a7 65%,#247cff);border-radius:28px;color:#fff;display:flex;justify-content:space-between;margin-bottom:18px;overflow:hidden;padding:32px 36px;position:relative}.support-hero:after,.support-admin-hero:after{background:radial-gradient(circle,rgba(109,210,255,.25),transparent 68%);content:"";height:330px;position:absolute;right:-80px;top:-160px;width:330px}.support-hero>div,.support-admin-hero>div{position:relative;z-index:1}.support-hero span,.support-admin-hero span{color:#92c5ff;font-size:.7rem;font-weight:800;letter-spacing:.1em}.support-hero h1,.support-admin-hero h1{font-size:clamp(1.8rem,3.2vw,2.7rem);margin:7px 0}.support-hero p,.support-admin-hero p{color:rgba(255,255,255,.75);margin:0;max-width:760px}.support-hero>.btn{position:relative;z-index:1}.support-admin-hero>div:last-child{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:20px;display:grid;min-width:180px;padding:20px;text-align:center}.support-admin-hero>div:last-child strong{font-size:2.2rem}.support-admin-hero>div:last-child small{color:rgba(255,255,255,.72)}.support-stats{display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:18px}.support-stats>a{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:17px;color:inherit;display:flex;gap:12px;padding:15px;text-decoration:none}.support-stats>a>i{align-items:center;background:color-mix(in srgb,#1677ff 10%,transparent);border-radius:12px;color:#1677ff;display:flex;font-size:1.1rem;height:42px;justify-content:center;width:42px}.support-stats strong,.support-stats small{display:block}.support-stats strong{font-size:1.25rem}.support-stats small{color:var(--muted);font-size:.7rem}.support-list-panel{border-radius:22px;overflow:hidden;padding:0}.support-list-head{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;padding:20px}.support-list-head h2{font-size:1.1rem;margin:0}.support-list-head p{color:var(--muted);font-size:.78rem;margin:3px 0 0}.support-list-head form{display:flex;gap:7px;max-width:390px;width:100%}.support-ticket-list{display:grid}.support-ticket-row{align-items:center;border-bottom:1px solid var(--line);color:inherit;display:grid;gap:13px;grid-template-columns:46px minmax(0,1fr) auto 18px;padding:16px 20px;text-decoration:none;transition:background .18s ease,transform .18s ease}.support-ticket-list.admin .support-ticket-row{grid-template-columns:46px minmax(0,1fr) auto auto 18px}.support-ticket-row:hover{background:color-mix(in srgb,#1677ff 4%,var(--panel));transform:translateX(2px)}.support-ticket-row:last-child{border-bottom:0}.support-ticket-icon{align-items:center;background:#edf4ff;border-radius:13px;color:#1677ff;display:flex;font-size:1.05rem;height:44px;justify-content:center;width:44px}.support-ticket-icon.alta{background:#fff3e6;color:#c96d00}.support-ticket-icon.urgente{background:#fff0f1;color:#dc3545}.support-ticket-copy{display:grid;min-width:0}.support-ticket-copy small{color:#1677ff;font-size:.66rem;font-weight:750}.support-ticket-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-ticket-copy em{color:var(--muted);font-size:.68rem;font-style:normal}.support-status,.support-priority{border-radius:30px;display:inline-flex;font-size:.66rem;font-weight:750;padding:7px 10px;white-space:nowrap}.support-status.aberto{background:#eaf2ff;color:#1767d2}.support-status.em_atendimento{background:#eeeaff;color:#6950cc}.support-status.aguardando_cliente{background:#fff5df;color:#a66200}.support-status.resolvido,.support-status.fechado{background:#e9f8ef;color:#168455}.support-priority{background:var(--soft);color:var(--muted)}.support-priority.alta{background:#fff3e6;color:#b65e00}.support-priority.urgente{background:#fff0f1;color:#dc3545}.support-empty{align-items:center;display:flex;flex-direction:column;padding:48px 20px;text-align:center}.support-empty>i{color:#1677ff;font-size:2rem}.support-empty h3{font-size:1.05rem;margin:12px 0 5px}.support-empty p{color:var(--muted);font-size:.8rem}.support-admin-filter{align-items:end;border-bottom:1px solid var(--line);display:grid;gap:10px;grid-template-columns:minmax(240px,1fr) 190px 170px auto auto;padding:18px 20px}.support-ticket-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 310px}.support-thread{border-radius:22px;overflow:hidden;padding:0}.support-thread>header{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:15px;grid-template-columns:auto minmax(0,1fr) auto;padding:20px}.support-thread>header>a{align-items:center;color:var(--muted);display:flex;font-size:.75rem;gap:6px;text-decoration:none}.support-thread>header small{color:#1677ff;font-size:.68rem;font-weight:750}.support-thread>header h1{font-size:1.25rem;margin:2px 0}.support-thread>header p{color:var(--muted);font-size:.72rem;margin:0}.support-conversation{background:color-mix(in srgb,#64748b 3%,var(--panel));display:grid;gap:16px;max-height:720px;overflow:auto;padding:24px}.support-message{align-items:flex-start;display:flex;gap:10px;max-width:86%}.support-message.agent{margin-left:auto}.support-message-avatar{align-items:center;background:#ddeaff;border-radius:12px;color:#1767d2;display:flex;flex:0 0 38px;font-size:.8rem;font-weight:750;height:38px;justify-content:center}.support-message.agent .support-message-avatar{background:#1677ff;color:#fff;order:2}.support-message>div:last-child{background:var(--panel);border:1px solid var(--line);border-radius:4px 17px 17px 17px;box-shadow:0 7px 18px rgba(15,39,74,.05);padding:13px 15px}.support-message.agent>div:last-child{background:#eaf3ff;border-radius:17px 4px 17px 17px}.support-message.internal>div:last-child{background:#fff8dc;border-color:#f2d675}.support-message header{align-items:center;display:flex;gap:10px;justify-content:space-between}.support-message header strong{font-size:.75rem}.support-message header span{color:var(--muted);font-size:.6rem}.support-message p{font-size:.8rem;line-height:1.55;margin:7px 0 0;white-space:normal}.support-attachments{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.support-attachments a{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:inherit;display:flex;font-size:.67rem;gap:6px;padding:7px 9px;text-decoration:none}.support-attachments small{color:var(--muted)}.support-whatsapp-state{display:block;font-size:.62rem;margin-top:9px}.support-whatsapp-state.ok{color:#158653}.support-whatsapp-state.error{color:#d33b4d}.support-reply{border-top:1px solid var(--line);padding:20px}.support-reply-options{align-items:center;display:flex;gap:12px;margin-top:12px}.support-reply-options .btn-brand{margin-left:auto}.support-closed-action{align-items:center;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:20px}.support-closed-action>div{align-items:center;display:flex;gap:10px}.support-closed-action>div>i{color:#168455;font-size:1.5rem}.support-closed-action strong,.support-closed-action small{display:block}.support-closed-action small{color:var(--muted);font-size:.7rem}.support-ticket-sidebar{display:grid;gap:15px}.support-ticket-sidebar>.content-panel{border-radius:18px;padding:18px}.support-ticket-sidebar h2{font-size:1rem}.support-ticket-sidebar dl{display:grid;margin:0}.support-ticket-sidebar dl>div{border-bottom:1px solid var(--line);padding:11px 0}.support-ticket-sidebar dl>div:last-child{border:0}.support-ticket-sidebar dt{color:var(--muted);font-size:.65rem;font-weight:700}.support-ticket-sidebar dd{font-size:.78rem;font-weight:650;margin:3px 0 0}.support-ticket-sidebar dd small{color:var(--muted);display:block;font-size:.65rem;font-weight:500}.support-manage-form{display:grid;gap:12px}.support-manage-form label{font-size:.68rem}.notification-inbox-page{max-width:1500px}.notification-inbox-shell{align-items:start;display:grid;gap:18px;grid-template-columns:230px minmax(0,1fr)}.notification-inbox-sidebar,.notification-inbox-content{background:var(--panel);border:1px solid var(--line);border-radius:20px}.notification-inbox-sidebar{overflow:hidden;padding:15px}.notification-inbox-sidebar>div{align-items:center;display:flex;gap:10px;padding:7px}.notification-inbox-sidebar>div>i{align-items:center;background:#eaf2ff;border-radius:12px;color:#1677ff;display:flex;font-size:1.1rem;height:42px;justify-content:center;width:42px}.notification-inbox-sidebar strong,.notification-inbox-sidebar small{display:block}.notification-inbox-sidebar small{color:var(--muted);font-size:.65rem}.notification-inbox-sidebar nav{display:grid;gap:4px;margin:15px 0}.notification-inbox-sidebar nav a{align-items:center;border-radius:11px;color:var(--muted);display:flex;font-size:.75rem;gap:9px;padding:10px;text-decoration:none}.notification-inbox-sidebar nav a b{background:var(--soft);border-radius:20px;font-size:.62rem;margin-left:auto;padding:3px 7px}.notification-inbox-sidebar nav a:hover,.notification-inbox-sidebar nav a.active{background:#eaf2ff;color:#1767d2}.notification-inbox-support{align-items:center;background:linear-gradient(135deg,#071b36,#1553a7);border-radius:13px;color:#fff;display:flex;gap:9px;padding:12px;text-decoration:none}.notification-inbox-support i{font-size:1.15rem}.notification-inbox-support strong,.notification-inbox-support small{display:block}.notification-inbox-support strong{font-size:.72rem}.notification-inbox-support small{color:#a9c7eb;font-size:.62rem}.notification-inbox-content{overflow:hidden}.notification-inbox-content>header{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:15px;justify-content:space-between;padding:20px}.notification-inbox-content>header span{color:#1677ff;font-size:.63rem;font-weight:800;letter-spacing:.1em}.notification-inbox-content>header h1{font-size:1.25rem;margin:3px 0 0}.notification-inbox-content>header form{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:30px;display:flex;gap:8px;max-width:340px;padding:0 13px;width:100%}.notification-inbox-content>header input{background:transparent;border:0;height:42px;outline:0;width:100%}.notification-inbox-toolbar{align-items:center;background:color-mix(in srgb,#64748b 3%,var(--panel));border-bottom:1px solid var(--line);display:flex;gap:14px;justify-content:space-between;padding:10px 16px}.notification-inbox-toolbar>div{display:flex;gap:7px}.notification-inbox-toolbar label,.notification-inbox-toolbar small{color:var(--muted);font-size:.7rem}.notification-inbox-row{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:10px;grid-template-columns:22px minmax(0,1fr);padding:0 16px}.notification-inbox-row:last-child{border:0}.notification-inbox-row.unread{background:color-mix(in srgb,#1677ff 4%,var(--panel))}.notification-inbox-row>a{align-items:center;color:inherit;display:grid;gap:12px;grid-template-columns:40px minmax(0,1fr) auto;padding:14px 0;text-decoration:none}.notification-inbox-row>a>i{align-items:center;background:var(--soft);border-radius:11px;color:#1677ff;display:flex;height:40px;justify-content:center;width:40px}.notification-inbox-row span{display:grid;min-width:0}.notification-inbox-row strong{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-inbox-row.unread strong{font-weight:800}.notification-inbox-row span small{color:var(--muted);font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-inbox-row em{color:var(--muted);font-size:.67rem;font-style:normal;text-align:right}.notification-inbox-row em small{display:block;font-size:.59rem}.notification-inbox-empty{align-items:center;display:flex;flex-direction:column;padding:60px 20px;text-align:center}.notification-inbox-empty>i{color:#1677ff;font-size:2rem}.notification-inbox-empty h2{font-size:1.1rem;margin:12px 0 5px}.notification-inbox-empty p{color:var(--muted);font-size:.75rem}
@media(max-width:1199.98px){.help-workspace-nav{grid-template-columns:1fr}.support-ticket-layout{grid-template-columns:1fr}.support-ticket-sidebar{grid-template-columns:1fr 1fr}.support-admin-filter{grid-template-columns:1fr 1fr}.support-admin-filter>div:first-child{grid-column:1/-1}}
@media(max-width:767.98px){.help-workspace-nav>nav{display:flex;overflow-x:auto;scrollbar-width:none}.help-workspace-nav>nav::-webkit-scrollbar,.notification-inbox-sidebar nav::-webkit-scrollbar{display:none}.help-workspace-nav>nav a{flex:0 0 auto;min-width:135px}.help-workspace-title small{white-space:normal}.support-hero,.support-admin-hero{align-items:stretch;flex-direction:column;gap:18px;padding:26px}.support-admin-hero>div:last-child{min-width:0}.support-stats{grid-template-columns:1fr 1fr}.support-list-head{align-items:stretch;flex-direction:column}.support-ticket-row,.support-ticket-list.admin .support-ticket-row{grid-template-columns:42px minmax(0,1fr) 18px}.support-ticket-row>.support-status,.support-ticket-row>.support-priority{grid-column:2}.support-admin-filter{grid-template-columns:1fr}.support-admin-filter>div:first-child{grid-column:auto}.support-admin-filter>.btn{width:100%}.support-thread>header{align-items:start;grid-template-columns:1fr}.support-conversation{padding:16px}.support-message{max-width:96%}.support-reply-options{align-items:stretch;flex-direction:column}.support-reply-options .btn,.support-reply-options .btn-brand{margin-left:0;width:100%}.support-ticket-sidebar{grid-template-columns:1fr}.notification-inbox-shell{grid-template-columns:1fr}.notification-inbox-sidebar nav{display:flex;overflow-x:auto;scrollbar-width:none}.notification-inbox-sidebar nav a{flex:0 0 auto}.notification-inbox-support{display:none}.notification-inbox-content>header{align-items:stretch;flex-direction:column}.notification-inbox-content>header form{max-width:none}.notification-inbox-toolbar{align-items:stretch;flex-direction:column}.notification-inbox-toolbar>div{flex-wrap:wrap}.notification-inbox-row>a{grid-template-columns:38px minmax(0,1fr)}.notification-inbox-row em{grid-column:2;text-align:left}}
@media(max-width:479.98px){.support-stats{grid-template-columns:1fr}.support-ticket-row>.support-status,.support-ticket-row>.support-priority{font-size:.6rem}.support-closed-action{align-items:stretch;flex-direction:column;gap:12px}.notification-inbox-toolbar .btn{flex:1}.notification-inbox-row{padding:0 10px}}
/* Atendimento: categorias e identidade das respostas */
.support-settings-hero{margin-bottom:20px;padding:24px 28px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,var(--panel) 0%,color-mix(in srgb,var(--brand) 8%,var(--panel)) 100%)}
.support-settings-hero>div{display:flex;align-items:center;gap:16px}.support-settings-hero>div>span{display:grid;place-items:center;width:50px;height:50px;border-radius:17px;background:var(--brand);color:#fff;font-size:1.25rem;box-shadow:0 12px 24px color-mix(in srgb,var(--brand) 28%,transparent)}
.support-settings-hero small{display:block;margin-bottom:3px;color:var(--brand);font-size:.72rem;font-weight:800;letter-spacing:.08em}.support-settings-hero h1{margin:0;font-size:1.35rem}.support-settings-hero p{margin:4px 0 0;color:var(--muted)}
.support-settings-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);gap:20px;align-items:start}.support-settings-card{padding:22px}.support-settings-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.support-settings-card>header h2{margin:0;font-size:1.05rem}.support-settings-card>header p{margin:5px 0 0;color:var(--muted);font-size:.88rem}.support-settings-card>header>i{font-size:1.35rem;color:var(--brand)}
.support-category-list{display:grid;gap:10px}.support-category-row{position:relative;display:grid;grid-template-columns:42px minmax(150px,1.5fr) minmax(120px,1fr) 82px auto 42px 42px;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--soft)}.support-category-icon{align-self:center;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:color-mix(in srgb,var(--brand) 12%,var(--panel));color:var(--brand);font-size:1.05rem}.support-category-row .form-label,.support-category-new .form-label{margin-bottom:4px;font-size:.72rem}.support-category-switch{align-self:center;margin:17px 0 0}.support-category-usage{position:absolute;right:12px;bottom:-8px;padding:1px 7px;border-radius:99px;background:var(--panel);color:var(--muted);font-size:.65rem}
.support-category-new{display:grid;grid-template-columns:minmax(180px,1.6fr) minmax(140px,1fr) 90px auto;gap:10px;align-items:end;margin-top:18px;padding:16px;border:1px dashed color-mix(in srgb,var(--brand) 45%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--brand) 4%,var(--panel))}.support-category-new .btn{white-space:nowrap}
.support-communication-form{display:grid;gap:12px}.support-setting-block{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.support-setting-block h3{margin:0;font-size:.94rem}.support-setting-block p{margin:4px 0 0;color:var(--muted);font-size:.8rem;line-height:1.45}.support-setting-block .form-switch{flex:0 0 auto;margin-top:2px}.support-communication-form textarea{resize:vertical;line-height:1.55}.support-communication-form .form-help{font-size:.73rem}.support-communication-form code{color:var(--brand)}.support-communication-form hr{margin:9px 0;border-color:var(--line);opacity:1}.support-communication-actions{display:flex;justify-content:flex-end;margin-top:5px}.support-admin-filter-categories{grid-template-columns:minmax(210px,1.7fr) repeat(3,minmax(135px,1fr)) auto auto}
@media(max-width:1200px){.support-settings-grid{grid-template-columns:1fr}.support-category-row{grid-template-columns:42px minmax(140px,1.5fr) minmax(120px,1fr) 76px auto 42px 42px}.support-admin-filter-categories{grid-template-columns:repeat(2,minmax(0,1fr)) auto auto}}
@media(max-width:768px){.support-settings-hero{padding:20px}.support-settings-hero>div{align-items:flex-start}.support-settings-grid{gap:14px}.support-settings-card{padding:16px}.support-settings-card>header{align-items:center}.support-category-row{grid-template-columns:42px minmax(0,1fr) 42px 42px}.support-category-row>div:nth-of-type(2){grid-column:2/5}.support-category-order{grid-column:2/3}.support-category-switch{margin:16px 0 0}.support-category-new{grid-template-columns:1fr 90px}.support-category-new>div:nth-child(2){grid-column:1/3}.support-category-new .btn{grid-column:1/3}.support-setting-block{flex-direction:column;gap:10px}.support-communication-actions .btn{width:100%}.support-admin-filter-categories{grid-template-columns:1fr 1fr}.support-admin-filter-categories>div:first-child{grid-column:1/3}}
@media(max-width:480px){.support-settings-hero>div>span{width:42px;height:42px;border-radius:14px}.support-settings-hero h1{font-size:1.15rem}.support-category-row{grid-template-columns:38px minmax(0,1fr) 40px 40px}.support-category-row>div:nth-of-type(2){grid-column:2/5}.support-category-order{grid-column:2/3}.support-category-switch{grid-column:3/5;justify-self:end}.support-category-row>.btn-brand{grid-column:3}.support-category-row>.btn-outline-danger{grid-column:4}.support-category-new{grid-template-columns:1fr}.support-category-new>div:nth-child(2),.support-category-new .btn{grid-column:auto}.support-admin-filter-categories{grid-template-columns:1fr}.support-admin-filter-categories>div:first-child{grid-column:auto}}
.support-whatsapp-feedback{align-items:center;display:flex;flex-wrap:wrap;gap:4px 9px;margin-top:8px}.support-whatsapp-feedback .support-whatsapp-state{margin-top:0}.support-whatsapp-feedback form{margin:0}.support-whatsapp-feedback .btn-link{color:var(--brand);font-size:.62rem;font-weight:700;padding:2px 4px;text-decoration:none}.support-whatsapp-feedback .btn-link:hover{text-decoration:underline}
/* Contexto administrativo do cliente dentro do chamado */
.support-ticket-layout{grid-template-columns:minmax(0,1fr) 370px}.support-customer-card{overflow:hidden;padding:0!important}.support-customer-card>header{align-items:center;background:linear-gradient(135deg,#0a2547,#1767d2);color:#fff;display:flex;gap:12px;padding:18px}.support-customer-card>header>span{align-items:center;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);border-radius:14px;display:flex;flex:0 0 46px;font-size:1rem;font-weight:800;height:46px;justify-content:center}.support-customer-card>header>div{min-width:0}.support-customer-card>header small{color:#9dc8ff;font-size:.6rem;font-weight:800;letter-spacing:.08em}.support-customer-card>header h2{color:#fff;font-size:1rem;margin:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-customer-card>header p{color:rgba(255,255,255,.72);font-size:.67rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-context-badges{display:flex;flex-wrap:wrap;gap:6px;padding:14px 16px 2px}.support-context-badges span{align-items:center;border-radius:30px;display:flex;font-size:.61rem;font-weight:750;gap:5px;padding:6px 8px;text-transform:capitalize}.support-context-badges .ok{background:var(--chip-success);color:var(--ok)}.support-context-badges .warning{background:var(--warning-soft);color:var(--warning)}.support-context-section{border-bottom:1px solid var(--line);padding:14px 16px}.support-context-section h3,.support-customer-actions h3{font-size:.68rem;margin:0 0 8px;text-transform:uppercase;letter-spacing:.05em}.support-context-section dl{display:grid;gap:7px}.support-context-section dl>div{align-items:start;border:0!important;display:grid;gap:10px;grid-template-columns:88px minmax(0,1fr);padding:0!important}.support-context-section dt{font-size:.61rem!important}.support-context-section dd{font-size:.68rem!important;overflow-wrap:anywhere;text-align:right}.support-integration-state{align-items:center;display:inline-flex;gap:4px}.support-integration-state.connected{color:var(--ok)}.support-integration-state.disconnected{color:var(--muted)}.support-context-usage{display:grid;gap:7px;grid-template-columns:repeat(4,1fr);padding:14px 16px}.support-context-usage span{background:var(--soft);border:1px solid var(--line);border-radius:11px;padding:8px 4px;text-align:center}.support-context-usage strong,.support-context-usage small{display:block}.support-context-usage strong{font-size:.9rem}.support-context-usage small{color:var(--muted);font-size:.54rem}.support-customer-actions{border-top:1px solid var(--line);padding:14px 16px 16px}.support-customer-actions>div{display:grid;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.support-customer-actions a{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:11px;color:var(--ink);display:flex;font-size:.65rem;font-weight:700;gap:7px;min-height:38px;padding:7px 9px;text-decoration:none;transition:border-color .18s ease,transform .18s ease}.support-customer-actions a:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-1px)}.support-customer-actions a i{color:var(--brand);font-size:.82rem}.support-customer-actions a.whatsapp{background:var(--chip-success);color:var(--ok)}.support-customer-actions a.whatsapp i{color:var(--ok)}
@media(max-width:1199.98px){.support-ticket-layout{grid-template-columns:1fr}.support-ticket-sidebar{grid-template-columns:1fr 1fr}.support-customer-card{grid-column:1/-1}}
@media(max-width:767.98px){.support-ticket-sidebar{grid-template-columns:1fr}.support-context-section dl>div{grid-template-columns:95px minmax(0,1fr)}}

/* Formulários do atendimento: hierarquia e escala tipográfica compartilhadas */
.support-ticket-modal .modal-dialog{max-width:820px}
.support-ticket-modal .modal-content{background:var(--panel);border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line));border-radius:24px;box-shadow:0 28px 80px rgba(7,27,54,.26);overflow:hidden}
.support-ticket-modal .modal-header{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,var(--panel)),var(--panel) 70%);border-bottom:1px solid var(--line);padding:22px 24px}
.support-modal-heading{align-items:center;display:flex;gap:14px;min-width:0}
.support-modal-heading>span{align-items:center;background:linear-gradient(135deg,var(--brand),#6757ff);border-radius:15px;box-shadow:0 10px 22px color-mix(in srgb,var(--brand) 26%,transparent);color:#fff;display:flex;flex:0 0 48px;font-size:1.15rem;height:48px;justify-content:center}
.support-modal-heading>div{min-width:0}
.support-modal-heading small{color:var(--brand);display:block;font-size:.67rem;font-weight:800;letter-spacing:.09em;margin-bottom:2px}
.support-modal-heading h2{color:var(--ink);font-size:1.15rem;font-weight:700;line-height:1.2;margin:0}
.support-modal-heading p{color:var(--muted);font-size:.78rem;line-height:1.4;margin:4px 0 0}
.support-ticket-modal .modal-body{padding:22px 24px 24px}
.support-form-intro{align-items:flex-start;background:color-mix(in srgb,var(--brand) 6%,var(--panel));border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line));border-radius:15px;display:flex;gap:11px;margin-bottom:20px;padding:12px 14px}
.support-form-intro>i{align-items:center;background:var(--panel);border-radius:10px;color:var(--brand);display:flex;flex:0 0 34px;height:34px;justify-content:center}
.support-form-intro p{display:grid;gap:2px;margin:0}
.support-form-intro strong{font-size:.76rem;font-weight:700}
.support-form-intro span{color:var(--muted);font-size:.7rem;line-height:1.4}
.support-ticket-form-grid{display:grid;gap:17px;grid-template-columns:repeat(2,minmax(0,1fr))}
.support-form-field{display:grid;min-width:0}
.support-form-field-wide{grid-column:1/-1}
.support-form-field .form-label,.support-manage-field .form-label{color:var(--ink);font-size:.75rem;font-weight:650;line-height:1.3;margin:0 0 7px}
.support-form-field .form-label>i,.support-manage-field .form-label i{color:var(--brand);font-size:.8rem;margin-right:5px}
.support-form-field .form-label>span{color:var(--muted);font-size:.67rem;font-weight:500;margin-left:3px}
.support-form-field>.form-control,.support-form-field>.form-select,.support-manage-field>.form-select{background-color:var(--panel);border-color:var(--line);border-radius:13px;color:var(--ink);font-size:.86rem;min-height:46px;padding-left:13px;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.support-form-field>textarea.form-control{line-height:1.55;min-height:150px;padding:13px;resize:vertical}
.support-form-field>.form-control:focus,.support-form-field>.form-select:focus,.support-manage-field>.form-select:focus{background-color:var(--panel);border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 12%,transparent)}
.support-form-field>small{color:var(--muted);font-size:.66rem;line-height:1.35;margin:6px 2px 0}
.support-file-control{align-items:center;background:color-mix(in srgb,var(--brand) 3%,var(--soft));border:1px dashed color-mix(in srgb,var(--brand) 32%,var(--line));border-radius:15px;display:grid;gap:12px;grid-template-columns:38px minmax(0,1fr) minmax(220px,auto);padding:12px;transition:border-color .18s ease,background-color .18s ease}
.support-file-control:focus-within,.support-file-control:hover{background:color-mix(in srgb,var(--brand) 6%,var(--panel));border-color:var(--brand)}
.support-file-control>i{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:11px;color:var(--brand);display:flex;font-size:1rem;height:38px;justify-content:center}
.support-file-control>div{display:grid;gap:2px;min-width:0}
.support-file-control strong{font-size:.74rem}
.support-file-control small{color:var(--muted);font-size:.64rem}
.support-file-control .form-control{background:var(--panel);border-color:var(--line);border-radius:11px;font-size:.69rem;min-width:0;padding:5px}
.support-file-control .form-control::file-selector-button{background:var(--brand-soft);border:0;border-radius:8px;color:var(--brand);font-size:.68rem;font-weight:700;margin-right:8px;padding:7px 9px}
.support-ticket-modal .modal-footer{align-items:center;background:color-mix(in srgb,#64748b 3%,var(--panel));border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:15px 24px}
.support-ticket-modal .modal-footer>span{align-items:center;color:var(--muted);display:flex;font-size:.66rem;gap:6px}
.support-ticket-modal .modal-footer>span i{color:var(--ok)}
.support-ticket-modal .modal-footer>div{display:flex;gap:9px}
.support-ticket-modal .modal-footer .btn{font-size:.76rem;font-weight:650;min-height:42px;padding:9px 17px}

.support-ticket-sidebar>.support-manage-card{overflow:hidden;padding:0}
.support-manage-card>header{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 9%,var(--panel)),var(--panel));border-bottom:1px solid var(--line);display:flex;gap:11px;padding:16px}
.support-manage-card>header>span{align-items:center;background:var(--brand);border-radius:12px;box-shadow:0 8px 18px color-mix(in srgb,var(--brand) 24%,transparent);color:#fff;display:flex;flex:0 0 40px;font-size:.95rem;height:40px;justify-content:center}
.support-manage-card>header>div{min-width:0}
.support-manage-card>header small{color:var(--brand);display:block;font-size:.59rem;font-weight:800;letter-spacing:.08em}
.support-ticket-sidebar .support-manage-card>header h2{font-size:.94rem;font-weight:700;margin:1px 0}
.support-manage-card>header p{color:var(--muted);font-size:.66rem;line-height:1.35;margin:0}
.support-manage-form{gap:15px;padding:16px}
.support-manage-field{display:grid}
.support-manage-field .form-label{align-items:center;display:flex;justify-content:space-between}
.support-manage-field .form-label>span{align-items:center;display:flex}
.support-manage-field .form-label>small{color:var(--muted);font-size:.61rem;font-weight:500}
.support-manage-field>.form-select{font-size:.82rem;min-height:44px;padding-bottom:8px;padding-top:8px}
.support-manage-form>.btn{font-size:.76rem;font-weight:700;min-height:44px;width:100%}

@media(max-width:767.98px){
  .support-ticket-modal .modal-dialog{margin:10px;max-width:none}
  .support-ticket-modal .modal-content{border-radius:20px;max-height:calc(100dvh - 20px)}
  .support-ticket-modal .modal-header,.support-ticket-modal .modal-body,.support-ticket-modal .modal-footer{padding-left:16px;padding-right:16px}
  .support-modal-heading>span{border-radius:13px;flex-basis:42px;height:42px}
  .support-modal-heading h2{font-size:1.02rem}
  .support-modal-heading p{font-size:.7rem}
  .support-ticket-form-grid{grid-template-columns:1fr}
  .support-form-field-wide{grid-column:auto}
  .support-file-control{grid-template-columns:38px minmax(0,1fr)}
  .support-file-control .form-control{grid-column:1/-1;width:100%}
  .support-ticket-modal .modal-footer{align-items:stretch;flex-direction:column;gap:10px}
  .support-ticket-modal .modal-footer>span{justify-content:center;order:2}
  .support-ticket-modal .modal-footer>div{display:grid;grid-template-columns:1fr 1fr}
  .support-ticket-modal .modal-footer .btn{width:100%}
}

@media(max-width:419.98px){
  .support-ticket-modal .modal-header{padding-bottom:17px;padding-top:17px}
  .support-modal-heading>span{display:none}
  .support-form-intro{display:none}
  .support-ticket-modal .modal-body{padding-bottom:18px;padding-top:18px}
  .support-ticket-form-grid{gap:14px}
  .support-ticket-modal .modal-footer>div{grid-template-columns:1fr}
}

/* Atendimento via WhatsApp: abertura, resposta e encerramento */
.support-whatsapp-cycle{display:grid;gap:12px}
.support-whatsapp-event{background:color-mix(in srgb,var(--brand) 3%,var(--soft));border:1px solid var(--line);border-radius:16px;padding:14px}
.support-whatsapp-event>header{align-items:center;display:grid;gap:10px;grid-template-columns:38px minmax(0,1fr) auto;margin-bottom:12px}
.support-whatsapp-event>header>span{align-items:center;background:color-mix(in srgb,var(--brand) 12%,var(--panel));border-radius:11px;color:var(--brand);display:flex;font-size:.9rem;height:38px;justify-content:center}
.support-whatsapp-event>header h3{font-size:.82rem;margin:0}
.support-whatsapp-event>header p{color:var(--muted);font-size:.68rem;line-height:1.4;margin:2px 0 0}
.support-whatsapp-event>header .form-switch{margin:0}
.support-whatsapp-event>.form-label{font-size:.7rem;margin-bottom:6px}
.support-whatsapp-event>textarea{background:var(--panel);border-radius:12px;font-size:.75rem;line-height:1.5;min-height:122px}
.ticket-cycle-setting{background:var(--soft);border:1px solid var(--line);border-radius:16px;height:100%;padding:13px}
.ticket-cycle-setting>header{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px}
.ticket-cycle-setting>header>div{align-items:center;display:flex;font-size:.76rem;gap:7px}
.ticket-cycle-setting>header i{color:var(--brand);font-size:.9rem}
.ticket-cycle-setting textarea{background:var(--panel);border-radius:12px;font-size:.73rem;line-height:1.5;min-height:176px;resize:vertical}
@media(max-width:575.98px){.support-whatsapp-event>header{align-items:start;grid-template-columns:36px minmax(0,1fr)}.support-whatsapp-event>header>span{height:36px}.support-whatsapp-event>header .form-switch{grid-column:2}.support-whatsapp-event{padding:12px}}
.support-ticket-sidebar>.support-delivery-card{padding:0;overflow:hidden}.support-delivery-card>header{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:15px 16px}.support-delivery-card>header h2{font-size:.88rem;margin:0}.support-delivery-card>header p{color:var(--muted);font-size:.63rem;margin:2px 0 0}.support-delivery-card>header>i{color:#18a867;font-size:1.15rem}.support-delivery-card>div{display:grid}.support-delivery-card article{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:9px;grid-template-columns:32px minmax(0,1fr) auto;padding:11px 16px}.support-delivery-card article:last-child{border-bottom:0}.support-delivery-card article>span{align-items:center;background:var(--soft);border-radius:9px;color:var(--brand);display:flex;height:32px;justify-content:center}.support-delivery-card article>div{display:grid;min-width:0}.support-delivery-card article strong{font-size:.68rem}.support-delivery-card article small{color:var(--muted);font-size:.58rem}.support-delivery-card article em{color:var(--danger);font-size:.57rem;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-delivery-card article>b{border-radius:20px;font-size:.56rem;padding:5px 7px}.support-delivery-card article>b.ok{background:var(--chip-success);color:var(--ok)}.support-delivery-card article>b.error{background:var(--danger-soft);color:var(--danger)}.support-delivery-card article>b.pending{background:var(--warning-soft);color:var(--warning)}.support-delivery-empty{align-items:center;color:var(--muted);display:flex;font-size:.65rem;gap:7px;margin:0;padding:16px}

/* Central de atualizacoes do banco */
.migration-center{display:grid;gap:16px}.migration-hero{align-items:center;background:linear-gradient(120deg,#0b2851 0%,#123f79 58%,#1768c7 100%);border:1px solid color-mix(in srgb,#2679f6 34%,var(--line));border-radius:18px;box-shadow:0 18px 42px rgba(15,52,96,.16);color:#fff;display:grid;gap:16px;grid-template-columns:58px minmax(0,1fr) auto;overflow:hidden;padding:22px 24px;position:relative}.migration-hero:after{background:radial-gradient(circle,rgba(255,255,255,.2),transparent 68%);content:"";height:220px;pointer-events:none;position:absolute;right:-45px;top:-110px;width:280px}.migration-hero-icon{align-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);border-radius:16px;display:flex;font-size:1.6rem;height:56px;justify-content:center;width:56px}.migration-eyebrow{color:#8dc2ff;display:block;font-size:.72rem;font-weight:700;letter-spacing:.09em;margin-bottom:4px}.migration-hero h2{color:#fff;font-size:1.46rem;font-weight:700;margin:0}.migration-hero p{color:rgba(255,255,255,.78);font-size:.86rem;margin:4px 0 0}.migration-health{align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:999px;display:inline-flex;font-size:.74rem;font-weight:700;gap:6px;padding:9px 12px;position:relative;z-index:1}.migration-health.ready{background:rgba(30,202,136,.18);border-color:rgba(91,232,177,.32)}.migration-health.attention{background:rgba(250,185,45,.16);border-color:rgba(255,207,101,.3);color:#ffe09a}
.migration-stats{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.migration-stat{--migration-accent:#2679f6;background:linear-gradient(145deg,color-mix(in srgb,var(--migration-accent) 5%,var(--panel)),var(--panel));border:1px solid color-mix(in srgb,var(--migration-accent) 18%,var(--line));border-radius:14px;color:var(--ink);display:grid;gap:3px 10px;grid-template-columns:40px minmax(0,1fr) auto;min-height:94px;padding:15px;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.migration-stat.applied{--migration-accent:#16a36a}.migration-stat.pending{--migration-accent:#d99000}.migration-stat.failed{--migration-accent:#e34b5f}.migration-stat>i{align-items:center;background:color-mix(in srgb,var(--migration-accent) 12%,var(--panel));border-radius:10px;color:var(--migration-accent);display:flex;font-size:1.08rem;grid-row:1/3;height:40px;justify-content:center;width:40px}.migration-stat>span{font-size:.77rem;font-weight:700}.migration-stat>strong{color:var(--migration-accent);font-size:1.52rem;font-weight:700;grid-column:3;grid-row:1/3}.migration-stat>small{color:var(--muted);font-size:.67rem;grid-column:2/4}.migration-stat:hover,.migration-stat.active{border-color:var(--migration-accent);box-shadow:0 10px 24px color-mix(in srgb,var(--migration-accent) 12%,transparent);color:var(--ink);transform:translateY(-1px)}
.migration-workspace{border-radius:18px;padding:0!important;overflow:hidden}.migration-toolbar{align-items:end;border-bottom:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(240px,360px) 1fr auto;padding:18px 20px}.migration-filter{display:grid;gap:7px}.migration-filter>label{color:var(--muted);font-size:.69rem;font-weight:700;text-transform:uppercase}.migration-filter>div{position:relative}.migration-filter>div>i{color:var(--brand);left:14px;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.migration-filter .form-select{font-size:.82rem;font-weight:550;min-height:44px;padding-left:39px}.migration-result-count{color:var(--muted);font-size:.72rem;padding-bottom:11px}.migration-result-count span{color:var(--ink);font-weight:700}.migration-primary-action .btn{font-size:.76rem;min-height:44px;min-width:200px}.migration-guidance{align-items:center;border-radius:12px;display:grid;gap:11px;grid-template-columns:38px 1fr;margin:15px 20px 0;padding:12px 14px}.migration-guidance>i{align-items:center;border-radius:9px;display:flex;font-size:1rem;height:36px;justify-content:center;width:36px}.migration-guidance>div{display:grid;gap:2px}.migration-guidance strong{font-size:.77rem;font-weight:700}.migration-guidance span{color:var(--muted);font-size:.69rem}.migration-guidance.has-pending{background:color-mix(in srgb,#d99000 7%,var(--panel));border:1px solid color-mix(in srgb,#d99000 22%,var(--line))}.migration-guidance.has-pending>i{background:color-mix(in srgb,#d99000 13%,var(--panel));color:#b87500}.migration-guidance.is-current{background:color-mix(in srgb,#16a36a 7%,var(--panel));border:1px solid color-mix(in srgb,#16a36a 22%,var(--line))}.migration-guidance.is-current>i{background:color-mix(in srgb,#16a36a 13%,var(--panel));color:#12805c}
.migration-table-wrap{margin:12px 20px 0}.migration-table{border-collapse:separate;border-spacing:0 7px;min-width:900px}.migration-table thead th{border:0;color:var(--muted);font-size:.65rem;font-weight:700;padding:5px 12px;text-transform:uppercase}.migration-table tbody tr{filter:drop-shadow(0 6px 12px rgba(15,23,42,.035))}.migration-table tbody td{background:color-mix(in srgb,var(--panel-strong) 84%,var(--panel));border-bottom:1px solid var(--line);border-top:1px solid var(--line);font-size:.76rem;padding:12px;vertical-align:middle}.migration-table tbody td:first-child{border-left:3px solid var(--migration-row-accent,#2679f6);border-radius:10px 0 0 10px}.migration-table tbody td:last-child{border-radius:0 10px 10px 0;border-right:1px solid var(--line)}.migration-row.status-aplicada,.migration-row.status-registrada{--migration-row-accent:#16a36a}.migration-row.status-pendente{--migration-row-accent:#d99000}.migration-row.status-falhou,.migration-row.status-alterada{--migration-row-accent:#e34b5f}.migration-file{align-items:center;display:grid;gap:10px;grid-template-columns:36px minmax(0,1fr);min-width:270px}.migration-file>i{align-items:center;background:color-mix(in srgb,var(--migration-row-accent) 11%,var(--panel));border-radius:8px;color:var(--migration-row-accent);display:flex;font-size:.96rem;height:36px;justify-content:center;width:36px}.migration-file>span,.migration-history{display:grid;gap:3px;min-width:0}.migration-file strong{font-size:.74rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.migration-file small,.migration-history small{color:var(--muted);font-size:.64rem}.migration-history{max-width:380px}.migration-history strong{font-size:.7rem;font-weight:550}.migration-history small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.migration-status{align-items:center;border-radius:999px;display:inline-flex;font-size:.66rem;font-weight:700;gap:6px;padding:7px 10px}.migration-status>i{background:currentColor;border-radius:50%;height:6px;width:6px}.migration-status.ok{background:var(--chip-success);color:var(--ok)}.migration-status.review{background:var(--warning-soft);color:var(--warning)}.migration-status.danger{background:var(--danger-soft);color:var(--danger)}.migration-checksum{background:var(--soft);border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:.64rem;padding:6px 8px}.migration-run{gap:5px;min-height:36px;padding:6px 11px}.migration-run span{font-size:.68rem}.migration-empty{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:5px;padding:38px 16px}.migration-empty>i{color:var(--brand);font-size:1.48rem}.migration-empty strong{color:var(--ink);font-size:.8rem}.migration-empty span{font-size:.7rem;margin-bottom:8px}.migration-advanced{border-top:1px solid var(--line);margin-top:14px}.migration-advanced summary{align-items:center;cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:15px 20px}.migration-advanced summary::-webkit-details-marker{display:none}.migration-advanced summary>span{align-items:center;display:flex;font-size:.73rem;gap:8px}.migration-advanced summary>span>i{color:var(--brand)}.migration-advanced summary>i{color:var(--muted);transition:transform .2s ease}.migration-advanced[open] summary>i{transform:rotate(180deg)}.migration-advanced>div{align-items:center;background:var(--soft);border-top:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;padding:15px 20px}.migration-advanced p{color:var(--muted);font-size:.7rem;margin:0;max-width:700px}.migration-advanced .btn{font-size:.72rem;white-space:nowrap}
@media(max-width:1199.98px){.migration-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.migration-toolbar{grid-template-columns:minmax(220px,1fr) auto}.migration-result-count{display:none}.migration-primary-action{justify-self:end}}
@media(max-width:767.98px){.migration-hero{align-items:start;grid-template-columns:46px minmax(0,1fr);padding:18px}.migration-hero-icon{border-radius:12px;font-size:1.15rem;height:44px;width:44px}.migration-health{grid-column:1/-1;justify-self:start}.migration-stats{display:flex;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}.migration-stat{flex:0 0 190px}.migration-toolbar{align-items:stretch;grid-template-columns:1fr}.migration-primary-action,.migration-primary-action .btn{justify-self:stretch;width:100%}.migration-guidance{margin:12px 14px 0}.migration-table-wrap{margin:10px 14px 0}.migration-advanced>div{align-items:stretch;flex-direction:column}.migration-advanced .btn{width:100%}}

/* Cabeçalho reutilizável dos pop-ups internos */
.app-system-modal .modal-content{border:1px solid color-mix(in srgb,var(--brand) 16%,var(--line))!important;border-radius:24px;box-shadow:0 28px 80px rgba(7,27,54,.24);display:flex;flex-direction:column;overflow:hidden}
.app-modal-header{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,var(--panel)),var(--panel) 72%);border-bottom:1px solid var(--line);display:grid!important;gap:14px;grid-template-columns:48px minmax(0,1fr) auto;justify-content:normal!important}
.modal-header.app-modal-header{padding:20px 22px}
.section-title.app-modal-header.app-modal-section-header{border:0;border-bottom:1px solid var(--line);border-radius:0;flex:0 0 auto;margin:0;padding:22px 24px;width:100%}
.app-system-modal .modal-content>.app-modal-section-header+.app-modal-section-shell{flex:1 1 auto;min-height:0}
.app-modal-heading-icon{align-items:center;background:linear-gradient(135deg,var(--brand),#6757ff);border-radius:15px;box-shadow:0 10px 22px color-mix(in srgb,var(--brand) 25%,transparent);color:#fff;display:flex;flex:0 0 48px;font-size:1.08rem;height:48px;justify-content:center;width:48px}
.app-modal-section-header>.app-modal-heading-icon{border-radius:13px;height:44px;width:44px}
.app-modal-heading-copy{display:grid;min-width:0}
.app-modal-kicker{color:var(--brand)!important;display:block;font-size:.67rem!important;font-weight:800!important;letter-spacing:.09em;line-height:1.2;margin:0 0 3px!important;text-transform:uppercase}
.app-modal-title,.app-modal-header .modal-title,.app-modal-header h2,.app-modal-header h5{color:var(--ink);font-size:1.15rem!important;font-weight:700;line-height:1.2;margin:0!important}
.app-modal-description,.app-modal-header .text-secondary{color:var(--muted)!important;font-size:.78rem!important;line-height:1.4;margin:4px 0 0!important}
.app-modal-header>div:last-child:not(.app-modal-heading-copy){align-items:center;display:flex;gap:8px;justify-self:end}
.app-modal-header>.btn-close,.app-modal-header>.app-modal-close{justify-self:end}
.app-modal-close:not(.btn-close){align-items:center;background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:50%!important;color:var(--ink)!important;display:flex;height:40px;justify-content:center;padding:0!important;width:40px}
.app-modal-close:not(.btn-close):hover{border-color:var(--brand)!important;color:var(--brand)!important;transform:rotate(4deg)}
.app-modal-header.is-danger{background:linear-gradient(135deg,color-mix(in srgb,var(--danger) 9%,var(--panel)),var(--panel) 72%);border-color:color-mix(in srgb,var(--danger) 24%,var(--line))}
.app-modal-header.is-danger .app-modal-heading-icon{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 10px 22px color-mix(in srgb,var(--danger) 25%,transparent)}
.app-modal-header.is-danger .app-modal-kicker{color:var(--danger)!important}

@media(max-width:575.98px){
  .app-system-modal .modal-content{border-radius:20px}
  .app-modal-header{gap:10px;grid-template-columns:42px minmax(0,1fr) auto}
  .modal-header.app-modal-header{padding:16px}
  .section-title.app-modal-header.app-modal-section-header{padding:16px}
  .app-modal-heading-icon,.app-modal-section-header>.app-modal-heading-icon{border-radius:12px;height:42px;width:42px}
  .app-modal-title,.app-modal-header .modal-title,.app-modal-header h2,.app-modal-header h5{font-size:.98rem!important}
  .app-modal-description,.app-modal-header .text-secondary{font-size:.67rem!important}
  .app-modal-header>div:last-child:not(.app-modal-heading-copy){flex-wrap:wrap}
}
@media(max-width:419.98px){
  .app-modal-header{grid-template-columns:minmax(0,1fr) auto}
  .app-modal-heading-icon{display:none}
  .app-modal-kicker{font-size:.59rem!important}
  .app-modal-close:not(.btn-close){height:36px;width:36px}
}

/* Diretório de empresas: visão comercial e operacional */
.company-overview-grid{display:grid;gap:13px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}
.company-overview-card{--company-accent:var(--brand);align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--company-accent) 7%,var(--panel)),var(--panel) 72%);border:1px solid color-mix(in srgb,var(--company-accent) 20%,var(--line));border-radius:18px;box-shadow:0 12px 30px color-mix(in srgb,var(--company-accent) 7%,transparent);display:grid;gap:13px;grid-template-columns:48px minmax(0,1fr);min-height:112px;overflow:hidden;padding:17px;position:relative}
.company-overview-card:after{background:var(--company-accent);border-radius:50%;content:"";height:94px;opacity:.07;position:absolute;right:-32px;top:-42px;width:94px}
.company-overview-card.accent-ok{--company-accent:#16a36a}.company-overview-card.accent-review{--company-accent:#d99000}.company-overview-card.accent-danger{--company-accent:#e34b5f}.company-overview-card.accent-brand{--company-accent:#2679f6}
.company-overview-card>span{align-items:center;background:color-mix(in srgb,var(--company-accent) 14%,var(--panel));border:1px solid color-mix(in srgb,var(--company-accent) 24%,var(--line));border-radius:14px;color:var(--company-accent);display:flex;font-size:1.15rem;height:48px;justify-content:center;width:48px}
.company-overview-card>div{display:grid;min-width:0;position:relative;z-index:1}.company-overview-card small{color:var(--company-accent);font-size:.65rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.company-overview-card strong{color:var(--ink);font-size:1.45rem;line-height:1.15;margin:2px 0}.company-overview-card em{color:var(--muted);font-size:.67rem;font-style:normal;font-weight:550}
.company-directory{border-radius:20px!important}.company-directory-title{align-items:center;display:flex;gap:11px}.company-directory-title>span{align-items:center;background:linear-gradient(135deg,#2679f6,#645bff);border-radius:12px;box-shadow:0 8px 18px rgba(38,121,246,.2);color:#fff;display:flex;flex:0 0 42px;font-size:1rem;height:42px;justify-content:center}.company-directory-title>div{min-width:0}
.company-filter-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 4%,var(--field)),var(--field));border-color:color-mix(in srgb,var(--brand) 17%,var(--line));border-radius:17px}.company-filter-summary{border-top:1px dashed color-mix(in srgb,var(--brand) 20%,var(--line));padding-top:12px}.company-filter-summary .status-pill{font-size:.65rem;padding:6px 9px}
.company-directory .admin-table{border-collapse:separate;border-spacing:0 8px;min-width:1040px;width:100%}.company-directory .admin-table thead th{border:0;padding-bottom:5px}.company-directory .admin-table tbody tr{--company-row-accent:#2679f6;filter:drop-shadow(0 7px 12px rgba(20,48,82,.045));transition:filter .18s ease,transform .18s ease}.company-directory .admin-table tbody tr.status-ativa{--company-row-accent:#16a36a}.company-directory .admin-table tbody tr.status-pendente{--company-row-accent:#d99000}.company-directory .admin-table tbody tr.status-bloqueada,.company-directory .admin-table tbody tr.status-cancelada{--company-row-accent:#e34b5f}.company-directory .admin-table tbody tr:hover{filter:drop-shadow(0 10px 18px color-mix(in srgb,var(--company-row-accent) 10%,transparent));transform:translateY(-1px)}
.company-directory .admin-table tbody td{background:color-mix(in srgb,var(--company-row-accent) 2.5%,var(--panel));border-bottom:1px solid color-mix(in srgb,var(--company-row-accent) 13%,var(--line));border-top:1px solid color-mix(in srgb,var(--company-row-accent) 13%,var(--line));padding:13px 10px}.company-directory .admin-table tbody td:first-child{border-left:4px solid var(--company-row-accent);border-radius:13px 0 0 13px;padding-left:12px}.company-directory .admin-table tbody td:last-child{border-radius:0 13px 13px 0;border-right:1px solid color-mix(in srgb,var(--company-row-accent) 13%,var(--line))}
.company-identity{align-items:center;display:grid;gap:9px;grid-template-columns:40px minmax(0,1fr);min-width:145px}.company-avatar{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--company-row-accent) 88%,#fff),var(--company-row-accent));border-radius:12px;box-shadow:0 7px 16px color-mix(in srgb,var(--company-row-accent) 18%,transparent);color:#fff;display:flex;font-size:.95rem;font-weight:800;height:40px;justify-content:center;width:40px}.company-identity>div{display:grid;min-width:0}.company-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-identity small,.company-contact small{color:var(--muted);font-size:.62rem;font-weight:550}.company-contact{display:grid;gap:4px;min-width:135px}.company-contact span,.company-contact small{align-items:center;display:flex;gap:5px}.company-contact span i{color:#16a36a}.company-contact small i{color:var(--brand)}
.company-plan-head{align-items:center;display:grid;gap:7px;grid-template-columns:30px minmax(100px,1fr) auto;min-width:205px}.company-plan-head>span{align-items:center;background:var(--brand-soft);border-radius:9px;color:var(--brand);display:flex;height:30px;justify-content:center;width:30px}.company-plan-head>div{display:grid}.company-plan-head>div small{color:var(--muted);font-size:.59rem;font-weight:550}.company-plan-head>.status-pill{font-size:.54rem;padding:4px 6px}.company-plan-head.is-empty>span{background:var(--warning-soft);color:var(--warning)}.company-plan-head.is-empty>div strong{color:var(--warning)}
.company-module-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.company-module-chips span{background:color-mix(in srgb,var(--brand) 7%,var(--panel));border:1px solid color-mix(in srgb,var(--brand) 13%,var(--line));border-radius:30px;color:var(--muted);font-size:.56rem;font-weight:650;padding:4px 6px}
.company-usage-head span{align-items:center;display:flex;gap:5px}.company-usage-head span i{color:var(--company-row-accent)}.company-usage-copy{color:var(--muted);display:block;font-size:.59rem;font-weight:550;margin-top:5px}.company-finance{display:grid;gap:4px;grid-template-columns:1fr 1fr;min-width:160px}.company-finance>span{background:color-mix(in srgb,#16a36a 7%,var(--panel));border-radius:8px;display:grid;gap:0 4px;grid-template-columns:13px 1fr;padding:6px}.company-finance>span>i{color:#16a36a;font-size:.72rem;grid-row:1/3}.company-finance>span>small{color:var(--muted);font-size:.51rem;font-weight:650;text-transform:uppercase}.company-finance>span>strong{font-size:.62rem;white-space:nowrap}.company-finance>span:nth-child(2){background:color-mix(in srgb,var(--brand) 6%,var(--panel))}.company-finance>span:nth-child(2)>i{color:var(--brand)}.company-finance>span.has-open{background:var(--warning-soft)}.company-finance>span.has-open>i,.company-finance>span.has-open>strong{color:var(--warning)}.company-status{gap:5px}.company-status i{font-size:.43rem}
@media(max-width:1199.98px){.company-overview-grid{grid-template-columns:1fr 1fr}.company-directory .table-responsive{overflow-x:auto}}
@media(max-width:767.98px){.company-overview-grid{grid-template-columns:1fr 1fr}.company-overview-card{min-height:100px;padding:14px}.company-directory .admin-table{border-spacing:0;min-width:0}.company-directory .admin-table tbody tr.company-directory-row{background:color-mix(in srgb,var(--company-row-accent) 3%,var(--panel));border-left:4px solid var(--company-row-accent);border-radius:15px;padding:5px 14px}.company-directory .admin-table tbody tr.company-directory-row td{background:transparent;border-left:0;border-right:0;border-top:0;border-radius:0;padding:12px 0}.company-identity,.company-contact,.company-plan-head,.company-finance{min-width:0}.company-directory .admin-table tbody tr:hover{transform:none}}
@media(max-width:479.98px){.company-overview-grid{grid-template-columns:1fr}.company-overview-card{min-height:92px}.company-directory-title>span{display:none}.company-plan-head{grid-template-columns:32px minmax(0,1fr)}.company-plan-head>.status-pill{grid-column:2;justify-self:start}.company-finance{grid-template-columns:1fr}.company-filter-summary{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.company-filter-summary .status-pill{justify-content:center}}

/* Confirmação visual da leitura automática de notificações */
.notification-item.is-marking-read,.notification-inbox-row a.is-marking-read{opacity:.56;pointer-events:none;transition:opacity .16s ease,transform .16s ease}
.notification-item.is-marking-read{transform:translateX(3px)}
.notification-inbox-row a.is-marking-read{transform:translateX(2px)}

/* Configuração do atendimento: assinatura e ciclo de avisos */
.support-settings-grid{grid-template-columns:minmax(0,1.05fr) minmax(470px,.95fr)}
.support-communication-card{border-radius:22px!important;overflow:hidden;padding:0!important}
.support-settings-card>header.support-communication-head{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,var(--panel)),var(--panel) 74%);border-bottom:1px solid color-mix(in srgb,var(--brand) 15%,var(--line));display:grid;gap:13px;grid-template-columns:48px minmax(0,1fr);margin:0;padding:20px 22px}
.support-communication-head>span{align-items:center;background:linear-gradient(135deg,var(--brand),#6757ff);border-radius:15px;box-shadow:0 10px 22px color-mix(in srgb,var(--brand) 24%,transparent);color:#fff;display:flex;font-size:1.1rem;height:48px;justify-content:center;width:48px}.support-communication-head>div{min-width:0}.support-communication-head small{color:var(--brand);display:block;font-size:.62rem;font-weight:800;letter-spacing:.09em;margin-bottom:2px}.support-communication-head h2{font-size:1.12rem!important;margin:0}.support-communication-head p{color:var(--muted);font-size:.72rem!important;line-height:1.4;margin:4px 0 0!important}
.support-communication-card .support-communication-form{gap:16px;padding:20px 22px 22px}
.support-signature-card{background:linear-gradient(135deg,color-mix(in srgb,#6757ff 6%,var(--soft)),var(--panel));border:1px solid color-mix(in srgb,#6757ff 18%,var(--line));border-radius:17px;display:grid;gap:13px;padding:15px}.support-signature-card>header{align-items:center;display:grid;gap:10px;grid-template-columns:38px minmax(0,1fr) auto}.support-signature-card>header>span{align-items:center;background:color-mix(in srgb,#6757ff 13%,var(--panel));border-radius:11px;color:#6757ff;display:flex;font-size:.92rem;height:38px;justify-content:center;width:38px}.support-signature-card>header>div{min-width:0}.support-signature-card>header small,.support-whatsapp-event>header>div>small{color:#6757ff;display:block;font-size:.55rem;font-weight:800;letter-spacing:.08em;margin-bottom:1px}.support-signature-card>header h3{font-size:.84rem;margin:0}.support-signature-card>header p{color:var(--muted);font-size:.64rem;line-height:1.35;margin:2px 0 0}
.support-state-switch{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:30px;display:flex!important;gap:7px;margin:0!important;padding:6px 9px 6px 34px!important}.support-state-switch .form-check-input{margin-left:-25px!important;margin-top:0}.support-state-switch .form-check-label{font-size:.65rem;font-weight:700;white-space:nowrap}
.support-message-editor{display:grid}.support-message-editor .form-label{align-items:center;color:var(--ink);display:flex;font-size:.67rem;font-weight:700;gap:6px;margin-bottom:6px}.support-message-editor .form-label i{color:var(--event-accent,var(--brand))}.support-message-editor textarea{background:var(--panel)!important;border-color:color-mix(in srgb,var(--event-accent,var(--brand)) 15%,var(--line));border-radius:12px!important;font-size:.74rem!important;line-height:1.52!important;min-height:124px;padding:11px 12px;resize:vertical}.support-message-editor textarea:focus{border-color:var(--event-accent,var(--brand));box-shadow:0 0 0 4px color-mix(in srgb,var(--event-accent,var(--brand)) 10%,transparent)}
.support-variable-list{align-items:center;display:flex;flex-wrap:wrap;gap:5px}.support-variable-list>span{color:var(--muted);font-size:.59rem;font-weight:700;margin-right:2px}.support-variable-list code{background:var(--panel);border:1px solid color-mix(in srgb,var(--brand) 15%,var(--line));border-radius:30px;color:var(--brand);font-family:inherit;font-size:.55rem;font-weight:650;padding:4px 6px}
.support-cycle-intro{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,#18a867 9%,var(--panel)),var(--panel));border:1px solid color-mix(in srgb,#18a867 20%,var(--line));border-radius:16px;display:grid;gap:11px;grid-template-columns:42px minmax(0,1fr) auto;padding:13px 14px}.support-cycle-intro>span{align-items:center;background:#18a867;border-radius:12px;box-shadow:0 8px 18px rgba(24,168,103,.2);color:#fff;display:flex;font-size:1rem;height:42px;justify-content:center;width:42px}.support-cycle-intro>div{display:grid}.support-cycle-intro small{color:#168455;font-size:.55rem;font-weight:800;letter-spacing:.09em}.support-cycle-intro h3{font-size:.84rem;margin:1px 0}.support-cycle-intro p{color:var(--muted);font-size:.64rem;line-height:1.35;margin:0}.support-cycle-intro>b{background:color-mix(in srgb,#18a867 11%,var(--panel));border-radius:30px;color:#168455;font-size:.59rem;padding:6px 8px;white-space:nowrap}
.support-communication-card .support-whatsapp-cycle{gap:10px}.support-communication-card .support-whatsapp-event{--event-accent:var(--brand);background:linear-gradient(135deg,color-mix(in srgb,var(--event-accent) 5%,var(--soft)),var(--panel));border-color:color-mix(in srgb,var(--event-accent) 19%,var(--line));border-left:4px solid var(--event-accent);border-radius:16px;padding:14px}.support-communication-card .support-whatsapp-event.phase-reply{--event-accent:#7458df}.support-communication-card .support-whatsapp-event.phase-closed{--event-accent:#18a867}.support-communication-card .support-whatsapp-event>header{grid-template-columns:40px minmax(0,1fr) auto;margin-bottom:12px}.support-communication-card .support-whatsapp-event>header>span{background:color-mix(in srgb,var(--event-accent) 12%,var(--panel));color:var(--event-accent);height:40px;width:40px}.support-communication-card .support-whatsapp-event>header>div>small{color:var(--event-accent)}.support-communication-card .support-whatsapp-event>header h3{font-size:.84rem}.support-communication-card .support-whatsapp-event>header p{font-size:.64rem}.support-communication-card .support-whatsapp-event textarea{min-height:132px}
.support-cycle-variables{background:var(--soft);border:1px dashed var(--line);border-radius:13px;padding:10px}.support-evolution-note{align-items:center;background:color-mix(in srgb,#18a867 7%,var(--panel));border:1px solid color-mix(in srgb,#18a867 18%,var(--line));border-radius:13px;display:flex;gap:10px;padding:11px 12px}.support-evolution-note>i{align-items:center;background:var(--panel);border-radius:9px;color:#18a867;display:flex;flex:0 0 32px;height:32px;justify-content:center}.support-evolution-note>span{display:grid}.support-evolution-note strong{font-size:.67rem}.support-evolution-note small{color:var(--muted);font-size:.6rem;line-height:1.4}
.support-communication-card .support-communication-actions{align-items:center;border-top:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;margin-top:0;padding-top:16px}.support-communication-actions>span{align-items:center;color:var(--muted);display:flex;font-size:.61rem;gap:6px}.support-communication-actions>span i{color:var(--brand)}
@media(max-width:1200px){.support-settings-grid{grid-template-columns:1fr}.support-communication-card .support-whatsapp-cycle{grid-template-columns:repeat(3,minmax(0,1fr))}.support-communication-card .support-whatsapp-event>header{grid-template-columns:36px minmax(0,1fr)}.support-communication-card .support-whatsapp-event>header .support-state-switch{grid-column:2;justify-self:start}.support-communication-card .support-whatsapp-event>header>span{height:36px;width:36px}}
@media(max-width:991.98px){.support-communication-card .support-whatsapp-cycle{grid-template-columns:1fr}.support-communication-card .support-whatsapp-event>header{grid-template-columns:40px minmax(0,1fr) auto}.support-communication-card .support-whatsapp-event>header .support-state-switch{grid-column:auto;justify-self:auto}.support-communication-card .support-whatsapp-event>header>span{height:40px;width:40px}}
@media(max-width:575.98px){.support-settings-card>header.support-communication-head{grid-template-columns:42px minmax(0,1fr);padding:16px}.support-communication-head>span{border-radius:12px;height:42px;width:42px}.support-communication-card .support-communication-form{padding:14px}.support-signature-card>header,.support-communication-card .support-whatsapp-event>header{align-items:start;grid-template-columns:36px minmax(0,1fr)}.support-signature-card>header>.support-state-switch,.support-communication-card .support-whatsapp-event>header>.support-state-switch{grid-column:2;justify-self:start}.support-cycle-intro{grid-template-columns:38px minmax(0,1fr)}.support-cycle-intro>span{height:38px;width:38px}.support-cycle-intro>b{display:none}.support-communication-card .support-communication-actions{align-items:stretch;flex-direction:column}.support-communication-card .support-communication-actions .btn{width:100%}}

/* Central de ajuda: escala tipográfica dos formulários administrativos */
.help-admin-editor .section-title h2{font-size:1rem;font-weight:700;line-height:1.25}.help-admin-editor .section-title p{font-size:.76rem;line-height:1.4;margin-top:3px}.help-admin-editor .form-label{color:var(--ink);font-size:.74rem;font-weight:650;line-height:1.3;margin-bottom:6px}.help-admin-editor .form-control,.help-admin-editor .form-select,.help-admin-editor .form-control-lg,.help-admin-editor .form-select-lg{border-radius:11px;font-size:.84rem;font-weight:500;line-height:1.35;min-height:44px;padding-bottom:.58rem;padding-top:.58rem}.help-admin-editor .form-control-lg,.help-admin-editor .form-select-lg{font-size:.86rem!important;min-height:46px}.help-admin-editor textarea.form-control{line-height:1.5;min-height:72px}.help-admin-editor input[type=file].form-control{font-size:.78rem;padding-bottom:.42rem;padding-top:.42rem}.help-admin-editor input[type=file].form-control::file-selector-button{font-size:.74rem}.help-admin-editor .form-check{align-items:center;display:flex;font-size:.74rem;font-weight:550;gap:6px;margin:0}.help-admin-editor .form-check-input{flex:0 0 auto;margin:0}.help-admin-editor .btn{font-size:.73rem;font-weight:650;min-height:40px;padding:8px 13px}.help-admin-editor .btn.btn-sm{font-size:.68rem;min-height:34px;padding:6px 9px}.help-admin-editor .help-block-editor h3{font-size:.92rem;font-weight:700}.help-admin-editor .help-admin-blocks strong{font-size:.77rem}.help-admin-editor .help-admin-blocks small{font-size:.64rem}
@media(max-width:575.98px){.help-admin-editor .section-title h2{font-size:.96rem}.help-admin-editor .section-title p{font-size:.7rem}.help-admin-editor .form-label{font-size:.71rem}.help-admin-editor .form-control,.help-admin-editor .form-select,.help-admin-editor .form-control-lg,.help-admin-editor .form-select-lg{font-size:.81rem!important}.help-admin-editor .form-check{font-size:.71rem}}

/* Configurações: central visual de integrações */
.api-config-hero{background:linear-gradient(125deg,#071b36,#123f84 58%,#226ff2);border-radius:25px;color:#fff;margin-bottom:18px;overflow:hidden;padding:26px;position:relative}.api-config-hero:after{background:radial-gradient(circle,rgba(78,207,255,.25),transparent 68%);content:"";height:360px;position:absolute;right:-110px;top:-210px;width:360px}.api-config-hero-copy,.api-config-overview{position:relative;z-index:1}.api-config-hero-copy>span{color:#88c6ff;font-size:.64rem;font-weight:800;letter-spacing:.1em}.api-config-hero-copy h2{font-size:1.55rem;margin:5px 0}.api-config-hero-copy p{color:rgba(255,255,255,.72);font-size:.8rem;margin:0;max-width:720px}.api-config-overview{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.api-config-overview>a{align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:16px;color:#fff;display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr) auto;padding:12px;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}.api-config-overview>a:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3);transform:translateY(-2px)}.api-config-overview>a>i{align-items:center;background:rgba(255,255,255,.13);border-radius:12px;display:flex;font-size:1rem;height:42px;justify-content:center;width:42px}.api-config-overview>a.puxa>i{color:#65c7ff}.api-config-overview>a.evolution>i{color:#51e39a}.api-config-overview>a.stripe>i{color:#bca8ff}.api-config-overview span{display:grid;min-width:0}.api-config-overview strong{font-size:.75rem}.api-config-overview small{color:rgba(255,255,255,.62);font-size:.6rem}.api-config-overview b{font-size:.72rem;white-space:nowrap}.api-config-overview b i{font-size:.75rem}
.api-integration-card{--api-accent:#247cff;--api-soft:rgba(36,124,255,.08);border-radius:22px!important;overflow:hidden;position:relative}.api-integration-card:before{background:linear-gradient(90deg,var(--api-accent),color-mix(in srgb,var(--api-accent) 35%,transparent));content:"";height:4px;left:0;position:absolute;right:0;top:0}.api-integration-card.puxa{--api-accent:#168eea;--api-soft:rgba(22,142,234,.08)}.api-integration-card.evolution{--api-accent:#17a96b;--api-soft:rgba(23,169,107,.08)}.api-integration-card.stripe{--api-accent:#635bff;--api-soft:rgba(99,91,255,.08)}.api-integration-head{align-items:center;background:linear-gradient(135deg,var(--api-soft),transparent);border-bottom:1px solid color-mix(in srgb,var(--api-accent) 15%,var(--line));display:flex;gap:18px;justify-content:space-between;margin:-1rem -1rem 20px;padding:21px 20px 18px}.api-integration-identity{align-items:center;display:flex;gap:13px;min-width:0}.api-integration-identity>span{align-items:center;background:linear-gradient(135deg,var(--api-accent),color-mix(in srgb,var(--api-accent) 72%,#111));border-radius:15px;box-shadow:0 10px 24px color-mix(in srgb,var(--api-accent) 24%,transparent);color:#fff;display:flex;flex:0 0 48px;font-size:1.15rem;height:48px;justify-content:center}.api-integration-identity>div{min-width:0}.api-integration-identity small{color:var(--api-accent);display:block;font-size:.58rem;font-weight:800;letter-spacing:.09em}.api-integration-identity h2{font-size:1.08rem;margin:2px 0}.api-integration-identity p{color:var(--muted);font-size:.7rem;line-height:1.4;margin:0}.api-integration-head>.status-pill{flex:0 0 auto}.api-toggle-bar{align-items:center;background:var(--api-soft);border:1px solid color-mix(in srgb,var(--api-accent) 18%,var(--line));border-radius:14px;display:flex!important;gap:9px;padding:12px 14px 12px 48px!important}.api-toggle-bar .form-check-input{margin-left:-34px!important;margin-top:0}.api-toggle-bar .form-check-label{font-size:.75rem;font-weight:700}
.api-balance-panel{align-items:center;background:linear-gradient(120deg,#09294e,#114d87 62%,#167ece);border:1px solid rgba(68,178,255,.32);border-radius:17px;color:#fff;display:grid;gap:14px;grid-template-columns:50px minmax(0,1fr) auto;margin-bottom:18px;overflow:hidden;padding:15px 17px;position:relative}.api-balance-panel:after{background:radial-gradient(circle,rgba(92,207,255,.25),transparent 68%);content:"";height:180px;position:absolute;right:-45px;top:-90px;width:180px}.api-balance-panel>span,.api-balance-panel>div,.api-balance-panel>form{position:relative;z-index:1}.api-balance-panel>span{align-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.14);border-radius:14px;display:flex;font-size:1.2rem;height:50px;justify-content:center}.api-balance-panel>div{display:grid}.api-balance-panel small{color:#87ceff;font-size:.56rem;font-weight:800;letter-spacing:.1em}.api-balance-panel strong{font-size:1.35rem;line-height:1.2;margin:2px 0}.api-balance-panel p{color:rgba(255,255,255,.68);font-size:.62rem;margin:0}.api-balance-panel .btn{border:0;font-size:.68rem;font-weight:700;min-height:38px;white-space:nowrap}.api-balance-panel.unavailable{background:linear-gradient(120deg,#26364a,#3f526a)}.api-balance-panel.unavailable small{color:#c3d2e3}
@media(min-width:768px){.api-integration-head{margin:-1.5rem -1.5rem 22px;padding:23px 24px 19px}}
@media(max-width:900px){.api-config-overview{grid-template-columns:1fr}.api-config-overview>a{grid-template-columns:42px minmax(0,1fr) auto}.api-balance-panel{grid-template-columns:46px minmax(0,1fr)}.api-balance-panel>span{height:46px}.api-balance-panel>form{grid-column:1/3}.api-balance-panel .btn{width:100%}}
@media(max-width:575.98px){.api-config-hero{border-radius:20px;padding:20px}.api-config-hero-copy h2{font-size:1.3rem}.api-integration-head{align-items:flex-start;flex-direction:column}.api-integration-identity>span{border-radius:13px;flex-basis:44px;height:44px}.api-integration-head>.status-pill{margin-left:57px}.api-balance-panel{padding:13px}.api-balance-panel strong{font-size:1.15rem}}

/* Gestão SaaS: preserva o espaço dos botões com rótulos longos. */
.saas-workspace-tabs{display:flex;overflow-x:auto;scrollbar-color:color-mix(in srgb,var(--brand) 28%,transparent) transparent;scrollbar-width:thin}.saas-workspace-tabs>a{flex:1 0 auto;min-width:max-content;padding-left:12px;padding-right:12px}.saas-workspace-tabs>a:last-child{margin-right:1px}

/* Auditoria: central de eventos, filtros e contexto expandível. */
.audit-center{display:grid;gap:18px}.audit-hero{align-items:center;background:linear-gradient(125deg,#071b36,#123f84 62%,#216ff0);border-radius:25px;color:#fff;display:grid;gap:16px;grid-template-columns:58px minmax(0,1fr) auto;overflow:hidden;padding:27px 30px;position:relative}.audit-hero:after{background:radial-gradient(circle,rgba(89,207,255,.26),transparent 68%);content:"";height:350px;position:absolute;right:-90px;top:-205px;width:350px}.audit-hero>*{position:relative;z-index:1}.audit-hero-icon{align-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.16);border-radius:17px;display:flex;font-size:1.35rem;height:58px;justify-content:center}.audit-hero>div:nth-child(2)>span,.audit-filter-card>header span,.audit-events-card>header>div>span{color:#7fc2ff;font-size:.6rem;font-weight:800;letter-spacing:.1em}.audit-hero h1{font-size:1.55rem;margin:4px 0}.audit-hero p{color:rgba(255,255,255,.7);font-size:.78rem;margin:0}.audit-hero-result{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:15px;display:grid;min-width:150px;padding:13px 16px;text-align:center}.audit-hero-result strong{font-size:1.55rem}.audit-hero-result small{color:rgba(255,255,255,.68);font-size:.62rem}
.audit-stats{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.audit-stats>div{background:var(--panel);border:1px solid var(--line);border-radius:18px;display:grid;grid-template-columns:44px minmax(0,1fr);padding:14px 15px}.audit-stats>div>span{align-items:center;background:color-mix(in srgb,#1677ff 10%,var(--panel));border-radius:12px;color:#1677ff;display:flex;font-size:1rem;grid-row:1/4;height:44px;justify-content:center;margin-right:11px;width:44px}.audit-stats>div>span.green{background:color-mix(in srgb,#16a56b 10%,var(--panel));color:#16a56b}.audit-stats>div>span.purple{background:color-mix(in srgb,#7458df 10%,var(--panel));color:#7458df}.audit-stats>div>span.orange{background:color-mix(in srgb,#ef8b19 11%,var(--panel));color:#d9780d}.audit-stats small{color:var(--muted);font-size:.6rem}.audit-stats strong{font-size:1.25rem;line-height:1.2}.audit-stats em{color:var(--muted);font-size:.58rem;font-style:normal}
.audit-filter-card,.audit-events-card{border-radius:22px!important;overflow:hidden;padding:0!important}.audit-filter-card>header,.audit-events-card>header{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,#1677ff 7%,var(--panel)),var(--panel));border-bottom:1px solid var(--line);display:flex;gap:15px;justify-content:space-between;padding:19px 22px}.audit-filter-card>header h2,.audit-events-card>header h2{font-size:1.02rem;margin:2px 0}.audit-filter-card>header p,.audit-events-card>header p{color:var(--muted);font-size:.68rem;margin:0}.audit-filter-card>header>a{align-items:center;border:1px solid var(--line);border-radius:30px;color:var(--muted);display:flex;font-size:.66rem;font-weight:650;gap:6px;padding:8px 11px;text-decoration:none}.audit-filter-card>header>a:hover{border-color:#1677ff;color:#1677ff}.audit-category-tabs{display:flex;gap:7px;overflow-x:auto;padding:14px 20px 5px;scrollbar-width:thin}.audit-category-tabs>a{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:30px;color:var(--muted);display:flex;flex:0 0 auto;font-size:.65rem;gap:6px;min-height:34px;padding:6px 10px;text-decoration:none}.audit-category-tabs>a:hover,.audit-category-tabs>a.active{background:#eaf3ff;border-color:#79adf5;color:#1768d5}.audit-category-tabs>a b{align-items:center;background:var(--panel);border-radius:20px;display:flex;font-size:.56rem;height:20px;justify-content:center;min-width:20px;padding:0 5px}.audit-filter-form{display:grid;gap:12px;grid-template-columns:minmax(250px,1.5fr) minmax(200px,1fr) minmax(155px,.7fr) minmax(155px,.7fr) auto;padding:15px 20px 20px}.audit-filter-form>div,.audit-advanced-filter>div{display:grid}.audit-filter-form label,.audit-advanced-filter label{color:var(--ink);font-size:.65rem;font-weight:700;margin-bottom:5px}.audit-filter-form .form-control,.audit-filter-form .form-select{font-size:.75rem;min-height:42px}.audit-search-field>div{align-items:center;background:var(--field);border:1px solid var(--line);border-radius:10px;display:flex;min-height:42px;padding:0 11px}.audit-search-field>div:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.audit-search-field i{color:var(--muted)}.audit-search-field input{background:transparent;border:0;color:var(--ink);font-size:.75rem;outline:0;padding:0 9px;width:100%}.audit-filter-actions{align-content:end;display:flex!important;gap:7px}.audit-filter-actions .btn{font-size:.68rem;min-height:42px;white-space:nowrap}.audit-advanced-filter{border-top:1px dashed var(--line);grid-column:1/-1;margin-top:2px;padding-top:10px}.audit-advanced-filter>summary{align-items:center;color:var(--muted);cursor:pointer;display:flex;font-size:.65rem;font-weight:650;gap:7px;list-style:none;width:max-content}.audit-advanced-filter>summary::-webkit-details-marker{display:none}.audit-advanced-filter>summary i:last-child{transition:transform .2s}.audit-advanced-filter[open]>summary i:last-child{transform:rotate(180deg)}.audit-advanced-filter>div{grid-template-columns:minmax(240px,520px);margin-top:10px}.audit-advanced-filter small{color:var(--muted);font-size:.58rem;margin-top:4px}
.audit-events-card>header{background:var(--panel)}.audit-event-list{display:grid}.audit-event{--audit-color:#64748b;align-items:start;border-bottom:1px solid var(--line);display:grid;gap:14px;grid-template-columns:44px minmax(300px,1fr) minmax(190px,.45fr) 120px;padding:16px 20px;transition:background .18s ease}.audit-event:last-child{border-bottom:0}.audit-event:hover{background:color-mix(in srgb,var(--audit-color) 3%,var(--panel))}.audit-event.blue{--audit-color:#1677ff}.audit-event.purple{--audit-color:#7458df}.audit-event.orange{--audit-color:#e88718}.audit-event.green{--audit-color:#16a56b}.audit-event.cyan{--audit-color:#0d93aa}.audit-event-icon{align-items:center;background:color-mix(in srgb,var(--audit-color) 11%,var(--panel));border-radius:13px;color:var(--audit-color);display:flex;font-size:1rem;height:44px;justify-content:center}.audit-event-main{display:grid;min-width:0}.audit-event-main>div{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.audit-event-main>div>span{background:color-mix(in srgb,var(--audit-color) 10%,var(--panel));border-radius:30px;color:var(--audit-color);font-size:.56rem;font-weight:750;padding:4px 7px}.audit-event-main>div>strong{font-size:.77rem}.audit-event-main code{background:transparent;color:var(--muted);font-family:inherit;font-size:.58rem;padding:0}.audit-event-main>p{color:var(--ink);font-size:.72rem;line-height:1.45;margin:5px 0 0}.audit-event-user{align-items:center;display:flex;gap:9px;min-width:0}.audit-event-user>span{align-items:center;background:color-mix(in srgb,var(--audit-color) 11%,var(--panel));border-radius:50%;color:var(--audit-color);display:flex;flex:0 0 34px;font-size:.68rem;font-weight:800;height:34px;justify-content:center}.audit-event-user>div{display:grid;min-width:0}.audit-event-user strong{font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-event-user small{color:var(--muted);font-size:.57rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-event-time{display:grid;text-align:right}.audit-event-time strong{font-size:.68rem}.audit-event-time>span{color:var(--muted);font-size:.62rem}.audit-event-time small{color:var(--muted);font-size:.55rem;margin-top:5px}.audit-event-time small i{margin-right:4px}.audit-context{grid-column:1/-1;margin-top:8px}.audit-context>summary{align-items:center;color:var(--audit-color);cursor:pointer;display:flex;font-size:.6rem;font-weight:650;gap:6px;list-style:none;width:max-content}.audit-context>summary::-webkit-details-marker{display:none}.audit-context>summary span{color:var(--muted);font-weight:500}.audit-context>summary i:last-child{transition:transform .2s}.audit-context[open]>summary i:last-child{transform:rotate(180deg)}.audit-context>div{display:grid;gap:7px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:9px}.audit-context>div>span{background:var(--soft);border:1px solid var(--line);border-radius:10px;display:grid;padding:8px 9px}.audit-context small{color:var(--muted);font-size:.53rem}.audit-context strong{font-size:.62rem;overflow-wrap:anywhere}.audit-empty{align-items:center;display:flex;flex-direction:column;padding:55px 20px;text-align:center}.audit-empty>i{color:#1677ff;font-size:2rem}.audit-empty h3{font-size:1rem;margin:10px 0 4px}.audit-empty p{color:var(--muted);font-size:.7rem}.audit-center>.audit-pagination{background:var(--panel);border:1px solid var(--line);border-radius:18px;margin:0;padding:12px 16px}
@media(max-width:1200px){.audit-stats{grid-template-columns:repeat(2,1fr)}.audit-filter-form{grid-template-columns:1fr 1fr}.audit-filter-actions{align-content:stretch}.audit-advanced-filter{grid-column:1/-1}.audit-event{grid-template-columns:44px minmax(0,1fr) 130px}.audit-event-user{grid-column:2}.audit-event-time{grid-column:3;grid-row:1/3}}
@media(max-width:767.98px){.audit-hero{grid-template-columns:48px minmax(0,1fr);padding:22px}.audit-hero-icon{height:48px}.audit-hero-result{grid-column:1/3;grid-template-columns:auto 1fr;min-width:0;text-align:left}.audit-hero-result small{align-self:center;margin-left:8px}.audit-stats{grid-template-columns:1fr}.audit-filter-card>header,.audit-events-card>header{align-items:flex-start}.audit-filter-card>header p{display:none}.audit-filter-form{grid-template-columns:1fr;padding:13px}.audit-filter-actions,.audit-advanced-filter{grid-column:1}.audit-filter-actions .btn:first-child{flex:1}.audit-event{grid-template-columns:40px minmax(0,1fr);padding:14px}.audit-event-icon{height:40px}.audit-event-main{grid-column:2}.audit-event-user{grid-column:2}.audit-event-time{align-items:center;border-top:1px dashed var(--line);display:flex;gap:8px;grid-column:2;grid-row:auto;margin-top:3px;padding-top:8px;text-align:left}.audit-event-time small{margin:0 0 0 auto}.audit-context>div{grid-template-columns:1fr}.audit-center>.audit-pagination{align-items:flex-start;flex-direction:column;gap:8px}}

/* Planos: alinha a ação ao campo principal, sem considerar o texto auxiliar. */
.registration-default-action{padding-top:27px}.registration-default-action .btn{height:44px!important;min-height:44px!important}
@media(max-width:991.98px){.registration-default-action{padding-top:0}}

/* Auditoria: escala de leitura confortável para filtros, eventos e metadados. */
.audit-hero>div:nth-child(2)>span,.audit-filter-card>header span,.audit-events-card>header>div>span{font-size:.68rem}.audit-hero p{font-size:.84rem}.audit-hero-result small{font-size:.7rem}
.audit-stats small{font-size:.68rem}.audit-stats em{font-size:.65rem}
.audit-filter-card>header p,.audit-events-card>header p{font-size:.8rem}.audit-filter-card>header>a{font-size:.76rem}.audit-category-tabs>a{font-size:.76rem}.audit-category-tabs>a b{font-size:.67rem}
.audit-filter-form label,.audit-advanced-filter label{font-size:.76rem}.audit-filter-form .form-control,.audit-filter-form .form-select,.audit-search-field input{font-size:.84rem}.audit-filter-actions .btn{font-size:.78rem}.audit-advanced-filter>summary{font-size:.76rem}.audit-advanced-filter small{font-size:.69rem}
.audit-event-main>div>span{font-size:.69rem}.audit-event-main>div>strong{font-size:.9rem}.audit-event-main code{font-size:.7rem}.audit-event-main>p{font-size:.84rem}.audit-event-user strong{font-size:.81rem}.audit-event-user small{font-size:.7rem}.audit-event-time strong{font-size:.8rem}.audit-event-time>span{font-size:.73rem}.audit-event-time small{font-size:.66rem}.audit-context>summary{font-size:.72rem}.audit-context small{font-size:.65rem}.audit-context strong{font-size:.74rem}

/* Configurações: cabeçalho premium compartilhado e central de avisos organizada. */
.settings-premium-hero{
  background:linear-gradient(125deg,#071b36 0%,#123f84 58%,#226ff2 100%);
  border:1px solid rgba(91,166,255,.22);
  border-radius:25px;
  box-shadow:0 18px 42px rgba(15,52,96,.16);
  color:#fff;
  margin-bottom:0;
  overflow:hidden;
  padding:26px;
  position:relative;
}
.settings-premium-hero:after{background:radial-gradient(circle,rgba(78,207,255,.25),transparent 68%);content:"";height:360px;pointer-events:none;position:absolute;right:-110px;top:-210px;width:360px}
.settings-premium-copy,.settings-premium-overview{position:relative;z-index:1}.settings-premium-copy>span{color:#88c6ff;font-size:.64rem;font-weight:800;letter-spacing:.1em}.settings-premium-copy h2{font-size:1.55rem;letter-spacing:-.02em;margin:5px 0}.settings-premium-copy p{color:rgba(255,255,255,.72);font-size:.8rem;line-height:1.5;margin:0;max-width:760px}
.settings-premium-overview{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.settings-premium-overview>a{align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:16px;color:#fff;display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr) auto;padding:12px;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}.settings-premium-overview>a:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3);color:#fff;transform:translateY(-2px)}.settings-premium-overview>a>i{align-items:center;background:rgba(255,255,255,.13);border-radius:12px;color:#75c9ff;display:flex;font-size:1rem;height:42px;justify-content:center;width:42px}.settings-premium-hero.login .settings-premium-overview>a>i{color:#c3b2ff}.settings-premium-hero.appearance .settings-premium-overview>a>i{color:#74e5d1}.settings-premium-hero.notices .settings-premium-overview>a>i{color:#86d9ff}.settings-premium-overview span{display:grid;min-width:0}.settings-premium-overview strong{font-size:.75rem}.settings-premium-overview small{color:rgba(255,255,255,.62);font-size:.6rem;line-height:1.35}.settings-premium-overview b{font-size:.7rem;font-weight:700;white-space:nowrap}.settings-premium-hero.notices .settings-premium-overview b{background:rgba(255,255,255,.1);border-radius:20px;padding:5px 8px}
.settings-premium-hero + .content-panel{border-radius:22px}.settings-premium-hero + .appearance-hub-grid{margin-top:0}

.notice-settings-panel{background:color-mix(in srgb,var(--brand) 2.5%,var(--panel));border-radius:22px!important}.notice-settings-panel>.section-title{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin-bottom:0;padding:15px 17px}.notice-settings-panel .admin-form{gap:16px;margin-top:16px}.notification-config-block{--notice-accent:#1677ff;background:var(--panel);border-color:color-mix(in srgb,var(--notice-accent) 18%,var(--line));border-left:4px solid var(--notice-accent);border-radius:19px;box-shadow:0 10px 25px rgba(20,48,82,.05);padding:21px}.notification-config-block.tickets{--notice-accent:#7558df}.notification-config-block.registrations{--notice-accent:#16a56b}.notice-block-heading{align-items:center;display:flex;gap:10px;margin-bottom:12px}.notice-block-heading>span{align-items:center;background:color-mix(in srgb,var(--notice-accent) 11%,var(--panel));border-radius:11px;color:var(--notice-accent);display:flex;font-size:.9rem;height:36px;justify-content:center;width:36px}.notice-block-heading small{color:var(--notice-accent);font-size:.62rem;font-weight:800;letter-spacing:.08em}.notification-config-block h3{font-size:1rem!important}.notification-config-block p{font-size:.76rem;line-height:1.5}.notification-config-block .form-switch{background:color-mix(in srgb,var(--notice-accent) 6%,var(--panel));border:1px solid color-mix(in srgb,var(--notice-accent) 15%,var(--line));border-radius:30px;min-height:38px;padding:8px 12px 8px 44px}.notification-config-block .form-switch .form-check-input{margin-left:-32px}.notification-config-block .form-switch .form-check-label{font-size:.72rem;font-weight:700}.notification-config-block textarea.form-control{background:color-mix(in srgb,var(--notice-accent) 2.5%,var(--field));border-radius:12px;font-size:.78rem;font-weight:500}.notification-config-block .form-help{background:color-mix(in srgb,var(--notice-accent) 5%,var(--panel));border-radius:11px;color:var(--muted);margin-top:4px;padding:10px 12px}.notification-config-block .form-help code{color:var(--notice-accent);font-size:.68rem}.notification-config-block.tickets .ticket-cycle-setting{background:color-mix(in srgb,var(--notice-accent) 4%,var(--soft));border-color:color-mix(in srgb,var(--notice-accent) 16%,var(--line));border-radius:15px}.notification-config-block.tickets .ticket-cycle-setting>header .form-switch{background:transparent;border:0;min-height:auto;padding:0 0 0 36px}.notification-config-block.tickets .ticket-cycle-setting>header .form-check-input{margin-left:-32px}
@media(max-width:991.98px){.settings-premium-overview{grid-template-columns:1fr}.settings-premium-overview>a{min-height:66px}}
@media(max-width:575.98px){.settings-premium-hero{border-radius:20px;padding:20px}.settings-premium-copy h2{font-size:1.3rem}.settings-premium-overview{margin-top:16px}.settings-premium-overview>a{grid-template-columns:40px minmax(0,1fr) auto;padding:10px}.settings-premium-overview>a>i{height:40px;width:40px}.notice-settings-panel{padding:12px!important}.notice-settings-panel>.section-title{align-items:flex-start;flex-direction:column}.notification-config-block{border-left-width:3px;padding:16px}.notification-config-block .form-switch{align-self:stretch}.notification-config-block textarea.form-control{font-size:.74rem}}

/* Heróis operacionais: linguagem premium compartilhada entre os módulos antigos. */
.dashboard-hero,.office-hero,.tests-hero,.files-hero{
  background:linear-gradient(125deg,#071b36 0%,#123f84 60%,#2677ed 100%);
  border:1px solid rgba(91,166,255,.22);
  border-radius:25px;
  box-shadow:0 18px 42px rgba(15,52,96,.16);
  color:#fff;
  overflow:hidden;
  padding:25px 28px;
  position:relative;
}
.dashboard-hero:after,.office-hero:after,.tests-hero:after,.files-hero:after{
  background:radial-gradient(circle,rgba(89,207,255,.25),transparent 68%);
  content:"";
  height:340px;
  pointer-events:none;
  position:absolute;
  right:-90px;
  top:-190px;
  width:340px;
}
.dashboard-hero>*,.office-hero>*,.tests-hero>*,.files-hero>*{position:relative;z-index:1}
.dashboard-hero h1,.office-hero h1,.tests-hero h1,.files-hero h1{
  font-size:clamp(1.45rem,2.2vw,1.8rem);
  font-weight:700;
  letter-spacing:-.025em;
  line-height:1.18;
  margin:6px 0;
}
.dashboard-hero p,.office-hero p,.tests-hero p,.files-hero p{
  color:rgba(255,255,255,.74);
  font-size:.82rem;
  font-weight:500;
  line-height:1.5;
  margin:0;
}
.dashboard-hero .vehicle-badge,.dashboard-hero .hero-chip,.office-hero .vehicle-badge,.tests-hero .vehicle-badge,.files-hero .vehicle-badge{
  background:transparent;
  border:0;
  border-radius:0;
  color:#86c7ff;
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.09em;
  padding:0;
  text-transform:uppercase;
}
.office-hero-stack,.tests-hero-card,.files-hero-stats,.dashboard-hero .hero-stat{
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.17);
  border-radius:16px;
  box-shadow:none;
  min-width:190px;
  padding:14px 18px;
}
.office-hero-stack strong,.tests-hero-card strong,.files-hero-stats>span,.dashboard-hero .hero-stat strong{
  color:#fff;
  font-size:1.55rem;
  font-weight:750;
  line-height:1.1;
}
.office-hero-stack span,.tests-hero-card span,.files-hero-stats small,.dashboard-hero .hero-stat span{
  color:rgba(255,255,255,.7);
  font-size:.7rem;
  font-weight:550;
  margin-top:4px;
}
.office-hero-stack>i{color:#82c9ff;font-size:1.25rem;margin-bottom:4px}
.dashboard-hero-actions{gap:8px}.dashboard-hero-actions .btn{border-radius:30px;font-size:.72rem;min-height:40px;padding:8px 13px}.dashboard-hero-actions .btn-outline-light{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.28)}.dashboard-hero-actions .btn-outline-light:hover{background:#fff;color:#123f84}
.vehicle-hero{
  background:linear-gradient(125deg,#071b36 0%,#123f84 62%,#2677ed 100%);
  border:1px solid rgba(91,166,255,.22);
  border-radius:22px;
  box-shadow:0 16px 38px rgba(15,52,96,.15);
  overflow:hidden;
  padding:22px 24px;
  position:relative;
}
.vehicle-hero:after{background:radial-gradient(circle,rgba(89,207,255,.24),transparent 68%);content:"";height:280px;pointer-events:none;position:absolute;right:-70px;top:-160px;width:280px}.vehicle-hero>*{position:relative;z-index:1}.vehicle-hero h1{font-size:clamp(1.35rem,2vw,1.7rem);font-weight:700;margin:7px 0}.vehicle-hero .vehicle-badge{background:transparent;border:0;color:#86c7ff;font-size:.65rem;font-weight:800;letter-spacing:.08em;padding:0;text-transform:uppercase}.vehicle-hero .text-white-50{color:rgba(255,255,255,.72)!important;font-size:.8rem}
@media(max-width:767.98px){
  .dashboard-hero,.office-hero,.tests-hero,.files-hero{align-items:stretch;border-radius:20px;display:flex;flex-direction:column;gap:16px;padding:20px}
  .office-hero-stack,.tests-hero-card,.files-hero-stats,.dashboard-hero .hero-stat{min-width:0;width:100%}
  .dashboard-hero-actions{display:flex;flex-wrap:wrap}.dashboard-hero-actions .btn,.dashboard-hero-actions form{flex:1 1 150px}.dashboard-hero-actions form .btn{width:100%}
  .vehicle-hero{border-radius:18px;padding:18px}
}

/* Listagens premium: uma linguagem única para cadastros, acessos e históricos. */
.premium-table-wrap{margin-top:13px;padding:0 2px 3px;scrollbar-color:color-mix(in srgb,var(--brand) 24%,transparent) transparent;scrollbar-width:thin}
.premium-data-table{
  --premium-row-accent:#1fb27a;
  --bs-table-bg:transparent;
  --bs-table-color:var(--ink);
  border-collapse:separate!important;
  border-spacing:0 8px!important;
  margin:0!important;
  min-width:820px;
  width:100%;
}
.premium-data-table>thead>tr>th{
  background:transparent!important;
  border:0!important;
  color:var(--muted);
  font-size:.69rem;
  font-weight:800;
  letter-spacing:.025em;
  padding:0 12px 6px;
  text-transform:uppercase;
  white-space:nowrap;
}
.premium-data-table>tbody>tr{filter:drop-shadow(0 7px 12px rgba(20,48,82,.045));transition:filter .18s ease,transform .18s ease}
.premium-data-table>tbody>tr:hover{filter:drop-shadow(0 10px 18px color-mix(in srgb,var(--premium-row-accent) 10%,transparent));transform:translateY(-1px)}
.premium-data-table>tbody>tr>td{
  background:color-mix(in srgb,var(--premium-row-accent) 2.4%,var(--panel))!important;
  border-bottom:1px solid color-mix(in srgb,var(--premium-row-accent) 15%,var(--line))!important;
  border-top:1px solid color-mix(in srgb,var(--premium-row-accent) 15%,var(--line))!important;
  box-shadow:none!important;
  color:var(--ink);
  font-size:.8rem;
  font-weight:550;
  line-height:1.38;
  padding:13px 12px;
  vertical-align:middle;
}
.premium-data-table>tbody>tr>td:first-child{border-left:4px solid var(--premium-row-accent)!important;border-radius:14px 0 0 14px;padding-left:13px}
.premium-data-table>tbody>tr>td:last-child{border-radius:0 14px 14px 0;border-right:1px solid color-mix(in srgb,var(--premium-row-accent) 15%,var(--line))!important}
.premium-data-table>tbody>tr>td strong{font-weight:700}.premium-data-table>tbody>tr>td .small,.premium-data-table>tbody>tr>td small{font-size:.66rem;line-height:1.4}.premium-data-table .status-pill{white-space:nowrap}.premium-data-table .table-actions,.premium-data-table .management-actions{position:relative;z-index:2}.premium-data-table .btn-sm{min-height:34px}
.premium-data-table>tbody>tr.payment-has-receipt{--premium-row-accent:#17a96b}.premium-data-table>tbody>tr:has(.status-pill.danger){--premium-row-accent:#e34b5f}

/* Fluxo operacional e comunicação automática das ordens de serviço */
.status-pill.info{background:color-mix(in srgb,#168eea 12%,var(--panel));color:#0875c6}.status-pill.warning{background:var(--warning-soft);color:var(--warning)}
.os-status-quick-action{align-items:center!important;border-radius:30px!important;display:inline-flex!important;flex:0 0 auto!important;gap:7px;height:36px!important;justify-content:center;min-height:36px!important;min-width:108px!important;padding:0 14px!important;white-space:nowrap;width:auto!important}.os-status-quick-action i{font-size:.75rem}.os-status-quick-action span{font-size:.7rem;font-weight:700;line-height:1}.office-order-table .table-actions{align-items:center;flex-wrap:nowrap;gap:6px}.os-status-modal-head{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,var(--panel)),var(--panel));padding:20px 22px}.os-status-modal-head>div>small{color:var(--brand);font-size:.58rem;font-weight:800;letter-spacing:.1em}.os-status-modal-head h2{margin:2px 0 0}.os-status-modal-head p{color:var(--muted);font-size:.68rem;margin:3px 0 0}.os-status-order{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:14px;display:flex;gap:11px;margin-bottom:17px;padding:12px}.os-status-order>i{align-items:center;background:var(--brand-soft);border-radius:11px;color:var(--brand);display:flex;font-size:1rem;height:38px;justify-content:center;width:38px}.os-status-order span{display:grid}.os-status-order small{color:var(--muted);font-size:.61rem}.os-status-order strong{font-size:.82rem}.os-status-detail{background:color-mix(in srgb,var(--warning) 5%,var(--panel));border:1px solid color-mix(in srgb,var(--warning) 22%,var(--line));border-radius:15px;padding:14px}.os-status-detail>small{color:var(--muted);display:block;font-size:.64rem;margin-top:6px}.os-auto-message{align-items:center;background:color-mix(in srgb,#18a867 7%,var(--panel));border:1px solid color-mix(in srgb,#18a867 20%,var(--line));border-radius:14px;display:flex;gap:10px;margin-top:17px;padding:12px}.os-auto-message>i{color:#15915c;font-size:1.1rem}.os-auto-message span{display:grid}.os-auto-message strong{font-size:.72rem}.os-auto-message small{color:var(--muted);font-size:.62rem}.os-history-timeline{display:grid;gap:0;padding:2px}.os-history-event{display:grid;gap:12px;grid-template-columns:34px minmax(0,1fr);position:relative}.os-history-event:not(:last-child):before{background:var(--line);content:"";height:calc(100% - 26px);left:16px;position:absolute;top:34px;width:2px}.os-history-marker{align-items:center;background:var(--brand-soft);border:4px solid var(--panel);border-radius:50%;color:var(--brand);display:flex;height:34px;justify-content:center;position:relative;width:34px;z-index:1}.os-history-event>div{border-bottom:1px solid var(--line);padding:2px 0 17px}.os-history-event:last-child>div{border:0}.os-history-event header{align-items:start;display:flex;gap:12px;justify-content:space-between}.os-history-event header>span{display:grid}.os-history-event header small{color:var(--muted);font-size:.58rem;font-weight:700;text-transform:uppercase}.os-history-event header strong{font-size:.8rem}.os-history-event time{color:var(--muted);font-size:.61rem;white-space:nowrap}.os-history-transition{color:var(--brand);font-size:.68rem;font-weight:700;margin:7px 0 0}.os-history-detail{background:var(--soft);border-radius:10px;font-size:.7rem;line-height:1.5;margin:8px 0 0;padding:9px 10px}.os-history-event footer{display:flex;gap:7px;justify-content:space-between;margin-top:9px}.os-history-event footer span{color:var(--muted);font-size:.61rem}.os-history-whatsapp.ok{color:#15915c!important}.os-history-whatsapp.error{color:var(--danger)!important}.os-history-empty{align-items:center;color:var(--muted);display:flex;flex-direction:column;padding:34px 15px;text-align:center}.os-history-empty>i{color:var(--brand);font-size:1.7rem}.os-history-empty strong{color:var(--ink);font-size:.85rem;margin-top:9px}.os-history-empty small{font-size:.67rem;margin-top:3px}
@media(max-width:767.98px){.os-status-quick-action{min-width:38px!important;padding:0!important;width:38px!important}.os-status-quick-action span{display:none}.office-order-table .table-actions{flex-wrap:wrap}.os-status-modal-head{padding:17px}.os-history-event header{display:grid;gap:3px}.os-history-event time{grid-row:2}.os-history-event footer{align-items:flex-start;display:grid}}
.os-order-totals{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 7%,var(--panel)),var(--panel));border:1px solid color-mix(in srgb,var(--brand) 20%,var(--line));border-radius:16px;display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}.os-order-totals>div{display:grid;gap:3px;padding:13px 16px}.os-order-totals>div+div{border-left:1px solid var(--line)}.os-order-totals span{color:var(--muted);font-size:.65rem;font-weight:700;text-transform:uppercase}.os-order-totals strong{font-size:.92rem}.os-order-totals .is-total{background:color-mix(in srgb,var(--brand) 9%,transparent)}.os-order-totals .is-total strong{color:var(--brand);font-size:1.08rem}.btn[data-os-save-button]:disabled{cursor:wait;opacity:.78}
@media(max-width:575.98px){.os-order-totals{grid-template-columns:1fr}.os-order-totals>div+div{border-left:0;border-top:1px solid var(--line)}.os-order-totals>div{align-items:center;display:flex;justify-content:space-between;padding:11px 13px}}
.premium-data-table>tbody>tr:has(>td[colspan]){--premium-row-accent:#94a3b8}.premium-data-table>tbody>tr:has(>td[colspan])>td{border-radius:14px!important;border-right:1px solid color-mix(in srgb,var(--premium-row-accent) 15%,var(--line))!important}
@media(max-width:767.98px){
  .premium-table-wrap{overflow:visible;padding-bottom:6px}
  .premium-table-wrap .premium-data-table,.premium-table-wrap .premium-data-table>tbody{border-spacing:0!important;display:block;min-width:0;width:100%}
  .premium-table-wrap .premium-data-table>thead{display:none}
  .premium-table-wrap .premium-data-table>tbody{display:grid;gap:12px}
  .premium-table-wrap .premium-data-table>tbody>tr:not(:has(>td[colspan])){
    background:color-mix(in srgb,var(--premium-row-accent) 2.8%,var(--panel));
    border-left:4px solid var(--premium-row-accent);
    border-radius:15px;
    display:grid;
    filter:drop-shadow(0 7px 13px rgba(20,48,82,.05));
    overflow:hidden;
    padding:5px 14px;
    width:100%;
  }
  .premium-table-wrap .premium-data-table>tbody>tr:not(:has(>td[colspan]))>td{
    align-items:start;
    background:transparent!important;
    border-bottom:1px solid var(--line)!important;
    border-left:0!important;
    border-radius:0!important;
    border-right:0!important;
    border-top:0!important;
    display:grid;
    font-size:.8rem;
    gap:6px;
    grid-template-columns:minmax(92px,.36fr) minmax(0,1fr);
    min-width:0;
    overflow-wrap:anywhere;
    padding:12px 0;
    text-align:left;
    white-space:normal;
    width:100%;
  }
  .premium-table-wrap .premium-data-table>tbody>tr:not(:has(>td[colspan]))>td:last-child{border-bottom:0!important}
  .premium-table-wrap .premium-data-table>tbody>tr:not(:has(>td[colspan]))>td:before{color:var(--muted);content:attr(data-label);font-size:.68rem;font-weight:800;text-transform:uppercase}
  .premium-table-wrap .premium-data-table>tbody>tr:has(>td[colspan]),.premium-table-wrap .premium-data-table>tbody>tr:has(>td[colspan])>td{display:block;width:100%}
  .premium-table-wrap .premium-data-table .table-actions,.premium-table-wrap .premium-data-table .management-actions{flex-wrap:wrap;justify-content:flex-start!important}
  .premium-table-wrap .premium-data-table>tbody>tr:hover{transform:none}
}

/* Planos: diferencia validade manual de periodicidade herdada. */
.plan-duration-input{align-items:center;display:flex;position:relative}.plan-duration-input .form-control{padding-right:47px}.plan-duration-input>span{color:var(--muted);font-size:.68rem;font-weight:700;pointer-events:none;position:absolute;right:13px}.plan-duration-control .form-text{color:var(--muted);display:block;font-size:.62rem;line-height:1.4;margin-top:6px}.plan-duration-control.is-inherited .plan-duration-input .form-control{background:color-mix(in srgb,var(--brand) 6%,var(--field));border-color:color-mix(in srgb,var(--brand) 22%,var(--line));color:var(--brand);font-weight:700}.plan-duration-control.is-inherited .plan-duration-input>span,.plan-duration-control.is-inherited .form-text{color:var(--brand)}

/* Saúde do sistema: leitura operacional, alertas prioritários e detalhes progressivos. */
.health-center{display:grid;gap:18px;max-width:1600px}.health-hero{align-items:center;background:linear-gradient(125deg,#071b36 0%,#123f84 58%,#226ff2 100%);border:1px solid rgba(91,166,255,.22);border-radius:25px;box-shadow:0 18px 42px rgba(15,52,96,.16);color:#fff;display:grid;gap:18px;grid-template-columns:62px minmax(0,1fr) 132px;overflow:hidden;padding:28px 30px;position:relative}.health-hero:after{background:radial-gradient(circle,rgba(78,207,255,.25),transparent 68%);content:"";height:360px;pointer-events:none;position:absolute;right:-100px;top:-210px;width:360px}.health-hero.attention{background:linear-gradient(125deg,#071b36 0%,#173e78 58%,#316fd5 100%)}.health-hero-icon,.health-hero-copy,.health-score{position:relative;z-index:1}.health-hero-icon{align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:18px;color:#8ed1ff;display:flex;font-size:1.55rem;height:60px;justify-content:center;width:60px}.health-hero-copy>span{color:#88c6ff;font-size:.65rem;font-weight:800;letter-spacing:.1em}.health-hero-copy h1{font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:-.025em;margin:5px 0}.health-hero-copy p{color:rgba(255,255,255,.72);font-size:.82rem;line-height:1.5;margin:0}.health-score{align-items:center;aspect-ratio:1;background:conic-gradient(#63d5ff calc(var(--health-score) * 1%),rgba(255,255,255,.12) 0);border-radius:50%;display:flex;flex-direction:column;justify-content:center;justify-self:end;width:112px}.health-score:before{background:#123f84;border-radius:50%;content:"";inset:8px;position:absolute}.health-score strong,.health-score small{position:relative;z-index:1}.health-score strong{font-size:1.55rem;line-height:1}.health-score small{color:rgba(255,255,255,.66);font-size:.61rem;margin-top:5px}
.health-metrics{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.health-metrics>div{background:var(--panel);border:1px solid var(--line);border-radius:18px;display:grid;grid-template-columns:46px minmax(0,1fr);padding:15px}.health-metrics>div>span{align-items:center;background:color-mix(in srgb,#1677ff 10%,var(--panel));border-radius:13px;color:#1677ff;display:flex;font-size:1.05rem;grid-row:1/4;height:44px;justify-content:center;margin-right:11px;width:44px}.health-metrics>div>span.green{background:color-mix(in srgb,#16a56b 10%,var(--panel));color:#16a56b}.health-metrics>div>span.orange{background:color-mix(in srgb,#ef8b19 11%,var(--panel));color:#d9780d}.health-metrics>div>span.purple{background:color-mix(in srgb,#7558df 10%,var(--panel));color:#7558df}.health-metrics small{color:var(--muted);font-size:.67rem}.health-metrics strong{font-size:1.25rem;line-height:1.2}.health-metrics em{color:var(--muted);font-size:.63rem;font-style:normal}
.health-attention-panel,.health-overview-panel,.storage-health-panel{border-radius:22px!important;overflow:hidden;padding:0!important}.health-attention-panel>header,.health-overview-panel>header,.storage-health-panel>header,.health-details>header{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;padding:20px 22px}.health-attention-panel>header{background:linear-gradient(135deg,color-mix(in srgb,#ef8b19 8%,var(--panel)),var(--panel))}.health-attention-panel>header span,.health-overview-panel>header span,.storage-health-panel>header span,.health-details>header span{color:#1677ff;font-size:.62rem;font-weight:800;letter-spacing:.09em}.health-attention-panel>header span{color:#d9780d}.health-attention-panel>header h2,.health-overview-panel>header h2,.storage-health-panel>header h2,.health-details>header h2{font-size:1.1rem;margin:3px 0}.health-attention-panel>header p,.health-overview-panel>header p,.storage-health-panel>header p,.health-details>header p{color:var(--muted);font-size:.75rem;margin:0}.health-attention-panel>header>b{background:color-mix(in srgb,#ef8b19 12%,var(--panel));border-radius:30px;color:#bd6500;font-size:.68rem;padding:8px 11px;white-space:nowrap}.health-attention-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:6px 20px 20px}.health-attention-list>article{align-items:start;border-bottom:1px solid var(--line);display:grid;gap:11px;grid-template-columns:38px minmax(0,1fr);padding:15px 8px}.health-attention-list>article:nth-last-child(-n+2){border-bottom:0}.health-attention-list>article>span{align-items:center;background:color-mix(in srgb,#ef8b19 11%,var(--panel));border-radius:11px;color:#d9780d;display:flex;height:38px;justify-content:center;width:38px}.health-attention-list>article>div{display:grid;min-width:0}.health-attention-list>article small{color:#d9780d;font-size:.59rem;font-weight:750;text-transform:uppercase}.health-attention-list>article strong{font-size:.82rem;margin-top:2px}.health-attention-list>article p{color:var(--muted);font-size:.7rem;margin:3px 0 0;overflow-wrap:anywhere}.health-attention-list>article em{align-items:flex-start;background:color-mix(in srgb,#ef8b19 7%,var(--panel));border-radius:10px;color:var(--muted);display:flex;font-size:.66rem;font-style:normal;gap:7px;grid-column:2;padding:8px 10px}.health-attention-list>article em i{color:#d9780d}
.health-overview-panel>header>a{align-items:center;border:1px solid var(--line);border-radius:30px;color:var(--brand);display:flex;font-size:.7rem;font-weight:700;gap:7px;padding:8px 11px;text-decoration:none}.health-area-grid{display:grid;gap:11px;grid-template-columns:repeat(4,minmax(0,1fr));padding:20px}.health-area-grid>a{--health-area:#16a56b;align-items:center;background:color-mix(in srgb,var(--health-area) 3%,var(--panel));border:1px solid color-mix(in srgb,var(--health-area) 18%,var(--line));border-radius:16px;color:var(--ink);display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr) auto;padding:13px;text-decoration:none;transition:box-shadow .18s ease,transform .18s ease}.health-area-grid>a.attention{--health-area:#e88718}.health-area-grid>a:hover{box-shadow:0 10px 22px color-mix(in srgb,var(--health-area) 10%,transparent);color:var(--ink);transform:translateY(-2px)}.health-area-grid>a>span{align-items:center;background:color-mix(in srgb,var(--health-area) 11%,var(--panel));border-radius:12px;color:var(--health-area);display:flex;font-size:1rem;height:42px;justify-content:center;width:42px}.health-area-grid>a>div{display:grid;min-width:0}.health-area-grid>a>div strong{font-size:.75rem}.health-area-grid>a>div small{color:var(--muted);font-size:.6rem}.health-area-grid>a>b{color:var(--health-area);display:grid;font-size:.73rem;text-align:right}.health-area-grid>a>b small{color:var(--muted);font-size:.54rem;font-weight:550;white-space:nowrap}
.health-details{scroll-margin-top:18px}.health-details>header{background:transparent;border:0;padding:5px 2px 0}.health-details-list{display:grid;gap:10px}.health-diagnostic-group{--health-group-color:#16a56b;background:var(--panel);border:1px solid color-mix(in srgb,var(--health-group-color) 18%,var(--line));border-radius:17px;overflow:hidden;scroll-margin-top:16px}.health-diagnostic-group.attention{--health-group-color:#e88718}.health-diagnostic-group>summary{align-items:center;cursor:pointer;display:grid;gap:11px;grid-template-columns:42px minmax(0,1fr) auto 18px;list-style:none;padding:14px 17px}.health-diagnostic-group>summary::-webkit-details-marker{display:none}.health-diagnostic-group>summary>span{align-items:center;background:color-mix(in srgb,var(--health-group-color) 10%,var(--panel));border-radius:12px;color:var(--health-group-color);display:flex;font-size:1rem;height:42px;justify-content:center;width:42px}.health-diagnostic-group>summary>div{display:grid}.health-diagnostic-group>summary strong{font-size:.82rem}.health-diagnostic-group>summary small{color:var(--muted);font-size:.64rem}.health-diagnostic-group>summary>b{background:color-mix(in srgb,var(--health-group-color) 9%,var(--panel));border-radius:20px;color:var(--health-group-color);font-size:.66rem;padding:6px 9px}.health-diagnostic-group>summary>i{color:var(--muted);font-size:.75rem;transition:transform .2s}.health-diagnostic-group[open]>summary>i{transform:rotate(180deg)}.health-diagnostic-group>.health-list{border-top:1px solid var(--line);display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));padding:6px 16px 16px}.health-diagnostic-group .health-item{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;min-height:72px;padding:13px 7px}.health-diagnostic-group .health-item:nth-last-child(-n+2){border-bottom:0}.health-diagnostic-group .health-item>span{height:34px;width:34px}.health-diagnostic-group .health-item strong{font-size:.76rem}.health-diagnostic-group .health-item small{font-size:.66rem}.health-diagnostic-group .health-item em{font-size:.63rem}
.storage-health-panel>header{background:linear-gradient(135deg,color-mix(in srgb,#7558df 7%,var(--panel)),var(--panel))}.storage-health-panel>header span{color:#7558df}.storage-health-panel>header>b{align-items:center;background:color-mix(in srgb,#7558df 10%,var(--panel));border-radius:30px;color:#6749ce;display:flex;font-size:.7rem;gap:7px;padding:8px 11px}.storage-health-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));padding:20px}.storage-health-grid>div{background:var(--soft);border:1px solid var(--line);border-radius:15px;display:grid;grid-template-columns:38px minmax(0,1fr);padding:12px}.storage-health-grid>div>span{align-items:center;background:color-mix(in srgb,#7558df 10%,var(--panel));border-radius:10px;color:#7558df;display:flex;grid-row:1/3;height:36px;justify-content:center;margin-right:9px;width:36px}.storage-health-grid>div.free>span{background:color-mix(in srgb,#16a56b 10%,var(--panel));color:#16a56b}.storage-health-grid small{color:var(--muted);font-size:.61rem}.storage-health-grid strong{font-size:.78rem}.storage-company-list{border-top:1px solid var(--line);display:grid;padding:18px 20px 20px}.storage-company-list>h3{font-size:.85rem;margin:0 0 9px}.storage-company-list>article{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:11px;grid-template-columns:38px minmax(0,1fr) auto;padding:12px 4px}.storage-company-list>article:last-child{border-bottom:0}.storage-company-list>article>span{align-items:center;background:color-mix(in srgb,#16a56b 10%,var(--panel));border-radius:11px;color:#16a56b;display:flex;height:38px;justify-content:center;width:38px}.storage-company-list>article.attention>span{background:color-mix(in srgb,#e88718 10%,var(--panel));color:#d9780d}.storage-company-list>article>div{display:grid}.storage-company-list strong{font-size:.76rem}.storage-company-list small{color:var(--muted);font-size:.64rem}.storage-company-list>article>b{font-size:.68rem}.storage-progress{background:var(--soft);border-radius:20px;height:5px;margin-top:7px;max-width:430px;overflow:hidden}.storage-progress>i{background:linear-gradient(90deg,#16a56b,#55d59f);border-radius:inherit;display:block;height:100%}.storage-company-list>article.attention .storage-progress>i{background:linear-gradient(90deg,#e88718,#f3b643)}
@media(max-width:1199.98px){.health-metrics,.health-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.health-center{gap:14px}.health-hero{align-items:start;border-radius:20px;grid-template-columns:48px minmax(0,1fr);padding:20px}.health-hero-icon{border-radius:14px;font-size:1.2rem;height:46px;width:46px}.health-score{grid-column:1/-1;justify-self:start;width:92px}.health-score strong{font-size:1.25rem}.health-metrics{grid-template-columns:1fr 1fr}.health-attention-panel>header,.health-overview-panel>header,.storage-health-panel>header,.health-details>header{align-items:flex-start;flex-direction:column;padding:17px}.health-attention-list{grid-template-columns:1fr;padding:4px 14px 14px}.health-attention-list>article:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.health-attention-list>article:last-child{border-bottom:0}.health-area-grid{grid-template-columns:1fr;padding:14px}.health-diagnostic-group>summary{grid-template-columns:40px minmax(0,1fr) auto 16px;padding:12px}.health-diagnostic-group>summary>span{height:40px;width:40px}.health-diagnostic-group>.health-list{grid-template-columns:1fr;padding:4px 12px 12px}.health-diagnostic-group .health-item:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.health-diagnostic-group .health-item:last-child{border-bottom:0}.storage-health-grid{grid-template-columns:1fr 1fr;padding:14px}.storage-company-list{padding:15px}.storage-company-list>article{grid-template-columns:38px minmax(0,1fr)}.storage-company-list>article>b{grid-column:2}}
@media(max-width:479.98px){.health-metrics,.storage-health-grid{grid-template-columns:1fr}.health-area-grid>a{grid-template-columns:40px minmax(0,1fr) auto}.health-diagnostic-group>summary>b{display:none}.health-diagnostic-group>summary{grid-template-columns:40px minmax(0,1fr) 16px}}

/* Ordens de serviço: ações textuais não herdam o formato circular dos botões de ícone. */
.office-order-table .table-actions .btn.btn-sm.os-status-quick-action{border-radius:30px!important;flex:0 0 auto!important;height:36px!important;min-height:36px!important;min-width:112px!important;padding:0 14px!important;width:auto!important}
@media(max-width:767.98px){.office-order-table .table-actions .btn.btn-sm.os-status-quick-action{min-width:38px!important;padding:0!important;width:38px!important}}

/* Atualizações: ação textual não deve herdar o formato circular dos botões de ícone. */
.migration-table .table-actions .migration-run{align-items:center;border-radius:30px!important;display:inline-flex;flex:0 0 auto;gap:6px;height:36px;justify-content:center;min-height:36px;min-width:92px;padding:6px 13px;width:auto}.migration-table .table-actions .migration-run i{font-size:.78rem;line-height:1}.migration-table .table-actions .migration-run span{font-size:.68rem;line-height:1;white-space:nowrap}.migration-table .table-actions .migration-run.ready{border-color:color-mix(in srgb,var(--brand) 45%,var(--line));color:var(--brand)}.migration-table .table-actions .migration-run.ready:hover{background:var(--brand);border-color:var(--brand);color:#fff}.migration-table .table-actions .migration-run.completed{background:color-mix(in srgb,#16a56b 7%,var(--panel));border-color:color-mix(in srgb,#16a56b 20%,var(--line));color:#168455;opacity:.78}

/* Permissões: hierarquia empresa > usuário, agrupamento e seleção em massa. */
.permission-collapse-toggle small b{color:var(--brand);font-size:inherit}.permission-manager-toolbar{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 7%,var(--panel)),var(--panel));border:1px solid var(--line);border-radius:15px;display:flex;gap:14px;justify-content:space-between;margin-bottom:13px;padding:13px}.permission-manager-toolbar>div:first-child{align-items:center;display:flex;gap:10px}.permission-manager-toolbar>div:first-child>i{align-items:center;background:color-mix(in srgb,var(--brand) 11%,var(--panel));border-radius:11px;color:var(--brand);display:flex;font-size:1rem;height:38px;justify-content:center;width:38px}.permission-manager-toolbar>div:first-child>span{display:grid}.permission-manager-toolbar strong{font-size:.75rem}.permission-manager-toolbar small{color:var(--muted);font-size:.63rem}.permission-manager-toolbar>div:last-child{display:flex;gap:7px}.permission-manager-toolbar .btn{font-size:.68rem;min-height:36px;white-space:nowrap}.permission-group-list{display:grid;gap:11px}.permission-group-card{border:1px solid var(--line);border-radius:16px;overflow:hidden}.permission-group-card>header{align-items:center;background:color-mix(in srgb,var(--brand) 3%,var(--soft));border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;padding:11px 13px}.permission-group-card>header>div{align-items:center;display:flex;gap:9px}.permission-group-card>header>div>i{align-items:center;background:color-mix(in srgb,var(--brand) 10%,var(--panel));border-radius:10px;color:var(--brand);display:flex;height:34px;justify-content:center;width:34px}.permission-group-card>header span{display:grid}.permission-group-card>header strong{font-size:.73rem}.permission-group-card>header small{color:var(--muted);font-size:.59rem}.permission-group-card>header>button{background:transparent;border:0;color:var(--brand);font-size:.62rem;font-weight:700;padding:6px}.permission-group-card>header>button.selected{color:#168455}.permission-group-card>.permission-grid{border:0;border-radius:0;padding:11px}.permission-group-card .permission-option{border-radius:12px;min-height:60px}.permission-group-card .permission-option:has(input:checked){background:color-mix(in srgb,var(--brand) 5%,var(--panel));border-color:color-mix(in srgb,var(--brand) 28%,var(--line));box-shadow:0 7px 16px color-mix(in srgb,var(--brand) 6%,transparent)}
@media(max-width:767.98px){.permission-manager-toolbar{align-items:stretch;flex-direction:column}.permission-manager-toolbar>div:last-child{display:grid;grid-template-columns:1fr 1fr}.permission-manager-toolbar .btn{width:100%}.permission-group-card>header{align-items:flex-start}.permission-group-card>header>button{white-space:nowrap}.permission-group-card>.permission-grid{grid-template-columns:1fr}}

/* Equipe da oficina */
.form-switch-row{align-items:flex-start;border:1px solid var(--line);border-radius:16px;display:flex;gap:11px;min-width:min(100%,310px);padding:13px 15px}.form-switch-row span{display:grid;gap:2px}.form-switch-row strong{font-size:.86rem}.form-switch-row small{color:var(--muted);font-size:.72rem}.permission-groups{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.permission-group{border:1px solid var(--line);border-radius:16px;padding:14px}.permission-group legend{color:var(--text);float:none;font-size:.78rem;font-weight:750;margin:0 0 10px;width:auto}.permission-group legend i{color:var(--brand);margin-right:5px}.permission-options{display:grid;gap:8px}.permission-options label{align-items:center;background:var(--soft);border:1px solid transparent;border-radius:11px;cursor:pointer;display:flex;gap:9px;padding:9px 11px}.permission-options label:has(input:checked){background:color-mix(in srgb,var(--brand) 7%,var(--panel));border-color:color-mix(in srgb,var(--brand) 28%,var(--line))}.permission-options span{font-size:.76rem;font-weight:650}.permission-options span i{color:var(--brand);margin-right:5px}@media(max-width:767.98px){.permission-groups{grid-template-columns:1fr}}

/* Atendimento comercial flutuante do site */
.inst-whatsapp-trigger{z-index:1201}.inst-whatsapp-trigger span{font-size:.82rem}.inst-whatsapp-chat{background:#efeae2;border:1px solid rgba(15,23,42,.12);border-radius:22px;bottom:91px;box-shadow:0 28px 75px rgba(15,23,42,.28);max-height:min(650px,calc(100vh - 180px));opacity:0;overflow:hidden;position:fixed;right:24px;transform:translateY(18px) scale(.97);transform-origin:bottom right;transition:opacity .2s ease,transform .2s ease;visibility:hidden;width:min(390px,calc(100vw - 32px));z-index:1200}.inst-whatsapp-chat.is-open{opacity:1;transform:translateY(0) scale(1);visibility:visible}.inst-whatsapp-chat[hidden]{display:none}.inst-whatsapp-chat>header{align-items:center;background:linear-gradient(135deg,#075e54,#128c7e);color:#fff;display:grid;gap:11px;grid-template-columns:46px minmax(0,1fr) 38px;padding:15px 16px}.inst-whatsapp-avatar{align-items:center;background:#25d366;border-radius:50%;display:flex;font-size:1.35rem;height:44px;justify-content:center;position:relative;width:44px}.inst-whatsapp-avatar span{background:#57e389;border:2px solid #075e54;border-radius:50%;bottom:0;height:11px;position:absolute;right:0;width:11px}.inst-whatsapp-chat>header>div:nth-child(2){display:grid;min-width:0}.inst-whatsapp-chat>header strong{font-size:.9rem}.inst-whatsapp-chat>header small{color:rgba(255,255,255,.78);font-size:.65rem}.inst-whatsapp-chat>header button{align-items:center;background:rgba(255,255,255,.1);border:0;border-radius:50%;color:#fff;display:flex;height:36px;justify-content:center;width:36px}.inst-whatsapp-chat__body{background-color:#efeae2;background-image:radial-gradient(rgba(84,110,93,.08) 1px,transparent 1px);background-size:16px 16px;max-height:calc(min(650px,100vh - 180px) - 76px);overflow:auto;padding:14px}.inst-whatsapp-date{background:rgba(255,255,255,.72);border-radius:20px;color:#667781;display:table;font-size:.59rem;margin:0 auto 10px;padding:4px 10px}.inst-whatsapp-bubble{background:#fff;border-radius:5px 13px 13px 13px;box-shadow:0 1px 2px rgba(15,23,42,.1);margin:0 34px 13px 0;padding:10px 11px 7px;position:relative}.inst-whatsapp-bubble:before{border-right:8px solid #fff;border-bottom:8px solid transparent;content:"";left:-7px;position:absolute;top:0}.inst-whatsapp-bubble strong{color:#075e54;font-size:.65rem}.inst-whatsapp-bubble p{color:#233138;font-size:.78rem;line-height:1.45;margin:3px 0 2px}.inst-whatsapp-bubble time{color:#8696a0;display:block;font-size:.56rem;text-align:right}.inst-whatsapp-bubble time i{color:#53bdeb}.inst-whatsapp-chat form{background:rgba(255,255,255,.96);border:1px solid rgba(15,23,42,.08);border-radius:17px;box-shadow:0 10px 30px rgba(15,23,42,.08);display:grid;gap:7px;padding:14px}.inst-whatsapp-chat form>label{color:#475569;font-size:.63rem;font-weight:750;margin-top:2px}.inst-whatsapp-field{align-items:center;background:#f8fafc;border:1px solid #d8e1ea;border-radius:12px;display:grid;grid-template-columns:34px minmax(0,1fr);min-height:42px}.inst-whatsapp-field>i{color:#128c7e;text-align:center}.inst-whatsapp-field input,.inst-whatsapp-field select,.inst-whatsapp-chat textarea{background:transparent;border:0;color:#17212b;font-family:inherit;font-size:.75rem;outline:0;width:100%}.inst-whatsapp-field input,.inst-whatsapp-field select{height:40px;padding:0 10px 0 0}.inst-whatsapp-chat textarea{background:#f8fafc;border:1px solid #d8e1ea;border-radius:12px;line-height:1.45;min-height:76px;padding:10px 11px;resize:vertical}.inst-whatsapp-field:focus-within,.inst-whatsapp-chat textarea:focus{border-color:#25a886;box-shadow:0 0 0 3px rgba(37,168,134,.11)}.inst-whatsapp-chat form>button{align-items:center;background:linear-gradient(135deg,#25d366,#14a868);border:0;border-radius:30px;color:#fff;display:flex;font-size:.75rem;font-weight:800;gap:8px;justify-content:center;margin-top:5px;min-height:44px;padding:10px 15px}.inst-whatsapp-chat form>button i:last-child{margin-left:auto}.inst-whatsapp-chat form>small{align-items:flex-start;color:#718096;display:flex;font-size:.56rem;gap:5px;line-height:1.35;padding:2px 4px}.inst-whatsapp-chat form>small i{color:#18a867}.identity-whatsapp-setting{background:linear-gradient(135deg,color-mix(in srgb,#18a867 7%,var(--soft)),var(--panel));border:1px solid color-mix(in srgb,#18a867 22%,var(--line));border-radius:17px;display:grid;gap:14px;padding:15px}.identity-whatsapp-setting__intro{align-items:center;display:grid;gap:11px;grid-template-columns:42px minmax(0,1fr) auto}.identity-whatsapp-setting__intro>span{align-items:center;background:color-mix(in srgb,#18a867 13%,var(--panel));border-radius:12px;color:#15915c;display:flex;font-size:1.1rem;height:42px;justify-content:center;width:42px}.identity-whatsapp-setting__intro>div{display:grid}.identity-whatsapp-setting__intro strong{font-size:.82rem}.identity-whatsapp-setting__intro small{color:var(--muted);font-size:.65rem;line-height:1.4}
@media(max-width:575.98px){.inst-whatsapp-trigger{bottom:17px;height:54px;justify-content:center;padding:0;right:17px;width:54px}.inst-whatsapp-trigger span{display:none}.inst-whatsapp-chat{bottom:82px;max-height:calc(100dvh - 100px);right:16px}.inst-whatsapp-chat__body{max-height:calc(100dvh - 176px);padding:11px}.inst-whatsapp-chat form{padding:12px}.identity-whatsapp-setting__intro{align-items:start;grid-template-columns:40px minmax(0,1fr)}.identity-whatsapp-setting__intro>label{grid-column:2}}

/* Entrada suave e identidade visual do mini-chat. */
@keyframes kynexWhatsappChatEnter{0%{opacity:0;transform:translate3d(0,24px,0) scale(.94)}65%{opacity:1;transform:translate3d(0,-3px,0) scale(1.008)}100%{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes kynexWhatsappContentEnter{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}
.inst-whatsapp-chat.is-open{animation:kynexWhatsappChatEnter .42s cubic-bezier(.22,.82,.28,1) both}.inst-whatsapp-chat.is-open .inst-whatsapp-chat__body{animation:kynexWhatsappContentEnter .32s .1s ease-out both}.inst-whatsapp-avatar.has-logo{background:#061426;border:2px solid rgba(255,255,255,.82);box-shadow:0 6px 15px rgba(0,0,0,.18);overflow:visible}.inst-whatsapp-avatar.has-logo img{border-radius:50%;height:100%;object-fit:cover;width:100%}.inst-whatsapp-avatar.has-logo span{border-color:#075e54;bottom:-1px;right:-1px}
@media(prefers-reduced-motion:reduce){.inst-whatsapp-chat.is-open,.inst-whatsapp-chat.is-open .inst-whatsapp-chat__body{animation:none}.inst-whatsapp-chat{transition:none}}
