﻿:root {
  color-scheme: light;
  --background: #ecf2f7;
  --surface: #ffffff;
  --surface-muted: #dfeaf3;
  --text: #071727;
  --muted: #5e7083;
  --border: #c7d8e6;
  --brand: #336699;
  --brand-dark: #244b70;
  --brand-secondary: #3b82af;
  --accent: #41bfdf;
  --link: #55d8dd;
  --orange: #f58634;
  --radius: 8px;
}

* {
  box-sizing: border-box;
}

body {
  background: var(--background);
  color: var(--text);
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
}

.is-hidden {
  display: none !important;
}

.sr-only {
  height: 1px;
  margin: -1px;
  overflow: hidden;
  position: absolute;
  width: 1px;
}

button,
a,
input,
textarea {
  transition: border-color 150ms ease, box-shadow 150ms ease, background 150ms ease;
}

button {
  cursor: pointer;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible {
  box-shadow: 0 0 0 3px rgba(65, 191, 223, 0.35);
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.shell {
  display: grid;
  grid-template-columns: 260px 1fr;
  min-height: 100vh;
}

.sidebar {
  background: #f8fbfd;
  border-right: 1px solid var(--border);
  color: var(--brand-dark);
  padding: 24px 18px;
}

.brand-lockup {
  display: grid;
  gap: 4px;
  margin-bottom: 28px;
}

.brand-lockup img {
  display: block;
  height: auto;
  margin-bottom: 8px;
  max-width: 180px;
  width: 100%;
}

.brand-lockup img.core-logo {
  max-width: 190px;
}

.brand-lockup span {
  color: var(--muted);
  font-size: 13px;
}

.sidebar-build-badge {
  align-items: center;
  background: #e5f8fb;
  border: 1px solid #b8edf4;
  border-radius: 999px;
  color: #123a5a;
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  justify-content: center;
  justify-self: start;
  line-height: 1;
  padding: 7px 10px;
  white-space: nowrap;
}

.nav-list {
  display: grid;
  gap: 6px;
}

.nav-item {
  align-items: center;
  border-radius: var(--radius);
  border: 1px solid transparent;
  color: var(--brand-dark);
  display: flex;
  gap: 9px;
  padding: 10px 12px;
  text-decoration: none;
}

.nav-item.active,
.nav-item:hover {
  background: #e5f8fb;
  border-color: #b8edf4;
  color: #123a5a;
}

.btn-icon {
  align-items: center;
  border-radius: 6px;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 800;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.nav-icon {
  border-radius: 6px;
  display: block;
  flex: 0 0 auto;
  height: 26px;
  object-fit: contain;
  width: 26px;
}

.main {
  padding: 28px;
}

.view {
  display: none;
}

.view.active {
  display: block;
}

.topbar {
  align-items: center;
  background: rgba(236, 242, 247, 0.94);
  border-bottom: 1px solid rgba(199, 216, 230, 0.9);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin: -28px -28px 0;
  padding: 22px 28px 16px;
}

.eyebrow {
  color: var(--brand-secondary);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.page-title {
  font-size: 28px;
  line-height: 1.2;
  margin: 4px 0;
}

.page-copy {
  color: var(--muted);
  margin: 0;
  max-width: 760px;
}

.toolbar {
  display: flex;
  gap: 10px;
}

.module-tabs {
  align-items: stretch;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 10px;
  box-shadow: 0 10px 24px rgba(36, 75, 112, 0.08);
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
  min-height: 68px;
  overflow-x: auto;
  padding: 0 34px;
}

.module-tabs button {
  background: transparent;
  border: 0;
  border-bottom: 4px solid transparent;
  color: #315779;
  flex: 0 0 auto;
  font-size: 15px;
  font-weight: 800;
  min-width: 108px;
  padding: 0 20px;
}

.module-tabs button.active,
.module-tabs button:hover {
  border-bottom-color: #136bea;
  color: #136bea;
}

.module-tab-context {
  background: linear-gradient(90deg, #f7fbff, #ffffff);
  border: 1px solid rgba(184, 215, 239, 0.95);
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(36, 75, 112, 0.07);
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 0 18px;
  padding: 16px;
}

.module-tab-context article {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid rgba(203, 222, 239, 0.86);
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(36, 75, 112, 0.05);
  padding: 14px;
}

.module-tab-context span {
  color: #00729a;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.module-tab-context strong {
  color: #082e73;
  display: block;
  font-size: 15px;
  line-height: 1.3;
  margin-top: 8px;
}

.module-tab-context small {
  color: #496884;
  display: block;
  font-size: 12px;
  line-height: 1.45;
  margin-top: 6px;
}

.module-tab-workbench {
  background:
    radial-gradient(circle at 0 0, rgba(0, 188, 212, 0.1), transparent 32%),
    linear-gradient(135deg, #ffffff, #eef8ff);
  border: 1px solid rgba(184, 215, 239, 0.98);
  border-radius: 16px;
  box-shadow: 0 18px 36px rgba(36, 75, 112, 0.08);
  grid-column: 1 / -1;
  padding: 18px;
}

.module-functional-surface {
  background:
    radial-gradient(circle at 100% 0, rgba(19, 107, 234, 0.09), transparent 32%),
    linear-gradient(135deg, #ffffff, #f3fbff);
  border: 1px solid rgba(184, 215, 239, 0.98);
  border-radius: 16px;
  box-shadow: 0 18px 36px rgba(36, 75, 112, 0.08);
  grid-column: 1 / -1;
  padding: 18px;
}

.module-functional-head {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}

.module-functional-head small,
.module-functional-label {
  color: #00729a;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.module-functional-head h3 {
  color: #082e73;
  font-size: 24px;
  line-height: 1.16;
  margin: 0;
}

.module-functional-head p {
  color: #3f5f7d;
  font-size: 14px;
  line-height: 1.55;
  margin: 8px 0 0;
  max-width: 760px;
}

.module-functional-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.module-functional-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  margin-top: 18px;
}

.module-functional-column {
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(36, 75, 112, 0.06);
  padding: 16px;
}

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

.module-functional-field {
  background: linear-gradient(180deg, #ffffff, #f7fcff);
  border: 1px solid rgba(203, 222, 239, 0.85);
  border-radius: 12px;
  min-height: 142px;
  padding: 14px;
}

.module-functional-field-head {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.module-functional-field span,
.module-functional-records span {
  color: #1384b3;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.module-functional-field strong,
.module-functional-records strong {
  color: #082e73;
  display: block;
  font-size: 14px;
  line-height: 1.35;
}

.module-functional-field small {
  color: #496884;
  display: block;
  font-size: 12px;
  line-height: 1.45;
  margin-top: 8px;
}

.module-functional-control {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}

.module-functional-control span {
  color: #496884;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
  margin: 0;
  text-transform: none;
}

.module-functional-control input {
  background: #f7fbff;
  border: 1px solid rgba(184, 215, 239, 0.95);
  border-radius: 10px;
  color: #082e73;
  font-size: 12px;
  font-weight: 700;
  min-height: 38px;
  padding: 9px 10px;
  width: 100%;
}

.module-functional-records {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.module-functional-records li {
  align-items: center;
  background: linear-gradient(180deg, #ffffff, #f7fcff);
  border: 1px solid rgba(203, 222, 239, 0.85);
  border-radius: 12px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 14px;
}

.module-functional-workflow {
  border-top: 1px solid rgba(184, 215, 239, 0.9);
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 18px;
  padding-top: 18px;
}

.module-functional-workflow article {
  align-items: flex-start;
  background: linear-gradient(180deg, #ffffff, #f4fbff);
  border: 1px solid rgba(203, 222, 239, 0.88);
  border-radius: 14px;
  display: flex;
  gap: 12px;
  min-height: 132px;
  padding: 14px;
}

.module-functional-workflow b {
  align-items: center;
  background: linear-gradient(135deg, #136bea, #00bcd4);
  border-radius: 12px;
  box-shadow: 0 10px 20px rgba(19, 107, 234, 0.18);
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 34px;
  font-size: 14px;
  height: 34px;
  justify-content: center;
  line-height: 1;
  width: 34px;
}

.module-functional-workflow span {
  color: #00729a;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  margin-bottom: 7px;
  text-transform: uppercase;
}

.module-functional-workflow strong {
  color: #082e73;
  display: block;
  font-size: 14px;
  line-height: 1.32;
}

.module-functional-workflow small {
  color: #496884;
  display: block;
  font-size: 12px;
  line-height: 1.4;
  margin-top: 7px;
}

.module-real-layout {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.55fr);
  margin-top: 18px;
}

.module-real-table-wrap {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(36, 75, 112, 0.06);
  overflow: auto;
}

.module-real-table {
  min-width: 760px;
}

.module-real-table td small,
.module-real-table td span {
  color: #496884;
  display: block;
  font-size: 12px;
  line-height: 1.35;
  margin-top: 4px;
}

.module-real-side {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(36, 75, 112, 0.06);
  display: grid;
  gap: 12px;
  padding: 16px;
}

.module-real-side label {
  display: grid;
  gap: 7px;
}

.module-real-side label span {
  color: #496884;
  font-size: 12px;
  font-weight: 800;
}

.module-real-side input {
  background: #f7fbff;
  border: 1px solid rgba(184, 215, 239, 0.95);
  border-radius: 10px;
  color: #082e73;
  font-size: 13px;
  font-weight: 700;
  min-height: 38px;
  padding: 9px 10px;
  width: 100%;
}

.module-real-checklist {
  background: linear-gradient(180deg, #f7fcff, #eef9ff);
  border: 1px solid rgba(184, 215, 239, 0.86);
  border-radius: 12px;
  padding: 13px;
}

.module-real-checklist strong {
  color: #082e73;
  display: block;
  font-size: 13px;
  margin-bottom: 8px;
}

.module-real-checklist p {
  align-items: flex-start;
  color: #3f5f7d;
  display: flex;
  font-size: 12px;
  gap: 8px;
  line-height: 1.35;
  margin: 7px 0 0;
}

.module-real-checklist p span {
  align-items: center;
  background: #dff8ff;
  border-radius: 999px;
  color: #00729a;
  display: inline-flex;
  flex: 0 0 18px;
  font-size: 11px;
  font-weight: 900;
  height: 18px;
  justify-content: center;
  width: 18px;
}

.specific-module-workspace {
  background: #ffffff;
  border: 1px solid rgba(185, 213, 235, 0.92);
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(9, 45, 91, 0.08);
  grid-column: 1 / -1;
  margin-top: 18px;
  overflow: hidden;
}

.specific-module-head {
  align-items: center;
  background: linear-gradient(135deg, #f7fcff, #eaf7ff);
  border-bottom: 1px solid rgba(190, 216, 237, 0.85);
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 20px 22px;
}

.specific-module-head span,
.specific-module-form-head span {
  color: #00729a;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.06em;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.specific-module-head h3 {
  color: #062a6f;
  font-size: 22px;
  line-height: 1.2;
  margin: 0;
}

.specific-module-head p {
  color: #496884;
  font-size: 14px;
  line-height: 1.45;
  margin: 8px 0 0;
  max-width: 760px;
}

.specific-module-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.55fr);
  padding: 18px;
}

.specific-module-table-card,
.specific-module-form-card {
  background: #ffffff;
  border: 1px solid rgba(202, 222, 239, 0.9);
  border-radius: 16px;
  overflow: hidden;
}

.specific-module-table {
  border-collapse: collapse;
  min-width: 760px;
  width: 100%;
}

.specific-module-table th,
.specific-module-table td {
  border-bottom: 1px solid rgba(211, 226, 239, 0.88);
  color: #24415d;
  font-size: 13px;
  padding: 14px 16px;
  text-align: left;
  vertical-align: top;
}

.specific-module-table th {
  background: #f2f8fd;
  color: #17436f;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.specific-module-table td strong {
  color: #062a6f;
  display: block;
  font-size: 14px;
}

.specific-module-form-card {
  padding: 18px;
}

.specific-module-form-head strong {
  color: #062a6f;
  display: block;
  font-size: 18px;
  line-height: 1.25;
}

.specific-module-fields {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.specific-module-fields label {
  display: grid;
  gap: 6px;
}

.specific-module-fields label span {
  color: #496884;
  font-size: 12px;
  font-weight: 800;
}

.specific-module-fields input {
  background: #f8fcff;
  border: 1px solid rgba(184, 213, 236, 0.96);
  border-radius: 12px;
  color: #062a6f;
  font-weight: 800;
  min-height: 42px;
  padding: 0 12px;
}

.specific-module-checklist {
  background: #f6fbff;
  border: 1px solid rgba(200, 222, 239, 0.9);
  border-radius: 14px;
  display: grid;
  gap: 9px;
  list-style: none;
  margin: 16px 0 0;
  padding: 14px;
}

.specific-module-checklist li {
  color: #24415d;
  font-size: 13px;
  line-height: 1.35;
  padding-left: 18px;
  position: relative;
}

.specific-module-checklist li::before {
  background: #0bbbd3;
  border-radius: 999px;
  content: "";
  height: 7px;
  left: 0;
  position: absolute;
  top: 6px;
  width: 7px;
}

.module-workbench-header {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}

.module-workbench-header small {
  color: #00729a;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.module-workbench-header h3 {
  color: #082e73;
  font-size: 22px;
  line-height: 1.18;
  margin: 0;
}

.module-workbench-header p {
  color: #3f5f7d;
  font-size: 14px;
  line-height: 1.55;
  margin: 8px 0 0;
  max-width: 760px;
}

.module-workbench-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.module-workbench-lanes {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 18px;
}

.module-workbench-lane {
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(36, 75, 112, 0.06);
  min-height: 190px;
  padding: 16px;
}

.module-workbench-lane span {
  color: #1384b3;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  margin: 0;
  text-transform: uppercase;
}

.module-workbench-lane strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.25;
  margin-top: 8px;
}

.module-workbench-lane ul {
  color: #3f5f7d;
  display: grid;
  gap: 8px;
  font-size: 13px;
  line-height: 1.4;
  list-style: none;
  margin: 14px 0 0;
  padding: 0;
}

.module-workbench-lane li {
  align-items: flex-start;
  display: flex;
  gap: 8px;
}

.module-workbench-lane li::before {
  background: #00bcd4;
  border-radius: 50%;
  content: "";
  flex: 0 0 7px;
  height: 7px;
  margin-top: 6px;
  width: 7px;
}

.module-workbench-evidence {
  border-top: 1px solid rgba(184, 215, 239, 0.9);
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 18px;
  padding-top: 18px;
}

.module-workbench-evidence article {
  background: linear-gradient(180deg, #ffffff, #f4fbff);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.055);
  min-height: 118px;
  padding: 14px;
}

.module-workbench-evidence span {
  color: #00729a;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.module-workbench-evidence strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  line-height: 1.28;
}

.module-workbench-evidence small {
  color: #496884;
  display: block;
  font-size: 12px;
  line-height: 1.45;
  margin-top: 8px;
}

.module-action-contracts {
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 16px;
  margin-top: 18px;
  padding: 16px;
}

.module-action-contracts-head {
  align-items: baseline;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 12px;
}

.module-action-contracts-head span {
  color: #00729a;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.module-action-contracts-head strong {
  color: #082e73;
  font-size: 16px;
}

.module-action-contract-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.module-action-contract-grid article {
  background: linear-gradient(180deg, #ffffff, #f5fbff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  display: grid;
  gap: 9px;
  padding: 14px;
}

.module-action-contract-grid strong {
  color: #082e73;
  font-size: 14px;
  line-height: 1.3;
}

.module-action-contract-grid small {
  color: #496884;
  font-size: 12px;
  line-height: 1.35;
}

.module-readiness-panel {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(242, 249, 255, 0.96));
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 16px;
  box-shadow: 0 12px 26px rgba(36, 75, 112, 0.055);
  margin-top: 18px;
  padding: 16px;
}

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

.module-readiness-head span:first-child {
  color: #00729a;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.module-readiness-head strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  margin-top: 3px;
}

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

.module-readiness-grid article {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  display: grid;
  gap: 6px;
  min-height: 112px;
  padding: 14px;
}

.module-readiness-grid span {
  color: #496884;
  font-size: 12px;
  font-weight: 800;
}

.module-readiness-grid strong {
  color: #082e73;
  font-size: 17px;
  line-height: 1.25;
}

.module-readiness-grid small {
  color: #496884;
  font-size: 12px;
  line-height: 1.35;
}

.module-readiness-panel > p {
  color: #31506c;
  font-size: 13px;
  line-height: 1.5;
  margin: 12px 0 0;
}

.core-roadmap-panel {
  background:
    radial-gradient(circle at 8% 0%, rgba(47, 177, 226, 0.13), transparent 28%),
    radial-gradient(circle at 96% 12%, rgba(19, 107, 234, 0.12), transparent 24%),
    #ffffff;
}

.roadmap-health-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 12px;
}

.roadmap-health-grid article {
  background: linear-gradient(180deg, #ffffff, #f3f9ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(36, 75, 112, 0.055);
  display: grid;
  gap: 6px;
  min-height: 112px;
  padding: 16px;
}

.roadmap-health-grid span,
.roadmap-card-head span,
.roadmap-action-row span,
.roadmap-dependency-list span,
.roadmap-gap-list span {
  color: #00729a;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.roadmap-health-grid strong {
  color: #082e73;
  font-size: 26px;
  line-height: 1;
}

.roadmap-health-grid small,
.roadmap-action-row small,
.roadmap-dependency-list small,
.roadmap-gap-list small {
  color: #496884;
  font-size: 12px;
  line-height: 1.35;
}

.roadmap-execution-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: 1.2fr 1fr 1fr;
  margin-top: 16px;
}

.roadmap-queue-card {
  background: rgba(248, 251, 255, 0.86);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 16px;
  box-shadow: 0 12px 28px rgba(36, 75, 112, 0.05);
  min-width: 0;
  padding: 16px;
}

.roadmap-card-head {
  display: grid;
  gap: 4px;
  margin-bottom: 12px;
}

.roadmap-card-head strong {
  color: #082e73;
  font-size: 17px;
}

.roadmap-action-list,
.roadmap-dependency-list,
.roadmap-gap-list {
  display: grid;
  gap: 10px;
}

.roadmap-action-row,
.roadmap-dependency-list article,
.roadmap-gap-list article {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 8px 18px rgba(36, 75, 112, 0.045);
  display: grid;
  gap: 6px;
  padding: 13px;
  text-align: left;
}

.roadmap-action-row {
  color: inherit;
  cursor: pointer;
  font: inherit;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.roadmap-action-row:hover,
.roadmap-action-row:focus-visible {
  border-color: rgba(31, 175, 225, 0.68);
  box-shadow: 0 12px 24px rgba(19, 107, 234, 0.1);
  outline: none;
  transform: translateY(-1px);
}

.roadmap-action-row strong,
.roadmap-dependency-list strong,
.roadmap-gap-list strong {
  color: #082e73;
  font-size: 14px;
  line-height: 1.3;
}

.implementation-plan-strip {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(238, 247, 255, 0.92));
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 16px;
  box-shadow: 0 12px 28px rgba(36, 75, 112, 0.05);
  margin-top: 16px;
  padding: 16px;
}

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

.implementation-plan-list article {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  display: grid;
  gap: 6px;
  min-height: 112px;
  padding: 13px;
}

.implementation-plan-list span {
  color: #00729a;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.implementation-plan-list strong {
  color: #082e73;
  font-size: 14px;
  line-height: 1.3;
}

.implementation-plan-list small {
  color: #496884;
  font-size: 12px;
  line-height: 1.35;
}

.button {
  align-items: center;
  background: var(--brand-secondary);
  border: 0;
  border-radius: var(--radius);
  color: #ffffff;
  display: inline-flex;
  gap: 8px;
  font-weight: 700;
  min-height: 40px;
  padding: 0 14px;
}

.button:hover {
  background: var(--brand);
}

.button.secondary:hover {
  background: #e5f8fb;
  border-color: var(--accent);
}

.btn-icon {
  background: rgba(255, 255, 255, 0.22);
  color: #ffffff;
  height: 22px;
  width: 22px;
}

.button.secondary {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--brand-dark);
}

.button.secondary .btn-icon {
  background: #e5f8fb;
  color: var(--brand-dark);
}

.metric-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 22px;
}

.metric,
.panel,
.task-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: 0 10px 30px rgba(36, 75, 112, 0.04);
}

.metric {
  padding: 16px;
}

.metric span {
  color: var(--muted);
  display: block;
  font-size: 13px;
  margin-bottom: 8px;
}

.metric strong {
  display: block;
  font-size: 24px;
}

.metric small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  margin-top: 8px;
}

.content-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.7fr);
}

.panel {
  overflow: hidden;
}

.panel-header {
  align-items: center;
  border-bottom: 1px solid var(--border);
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
}

.panel-header h2 {
  font-size: 16px;
  margin: 0;
}

.order-table {
  border-collapse: collapse;
  width: 100%;
}

.order-table th,
.order-table td {
  border-bottom: 1px solid var(--border);
  font-size: 14px;
  padding: 13px 16px;
  text-align: left;
  vertical-align: top;
}

.order-table tbody tr:hover {
  background: #f6fbfe;
}

[data-order-row],
[data-logistics-row],
[data-finance-row],
[data-sac-row],
[data-marketing-row] {
  cursor: pointer;
}

[data-order-row].selected,
[data-logistics-row].selected,
[data-finance-row].selected,
[data-sac-row].selected,
[data-marketing-row].selected {
  background: linear-gradient(90deg, rgba(225, 247, 255, 0.92), rgba(255, 255, 255, 0.96));
  box-shadow: inset 4px 0 0 var(--brand-secondary);
}

.order-table th {
  background: var(--surface-muted);
  color: var(--muted);
  font-size: 12px;
  text-transform: uppercase;
}

.product-table strong {
  display: block;
  font-size: 14px;
  line-height: 1.35;
  max-width: 360px;
}

.product-table small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  margin-top: 5px;
}

.product-table .product-release-note {
  border-radius: 999px;
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  margin: 7px 6px 0 0;
  max-width: 100%;
  padding: 5px 9px;
}

.product-table .product-release-note.ok {
  background: #e3fbf8;
  color: #047273;
}

.product-table .product-release-note.design {
  background: #fff0e7;
  color: #9b3d10;
}

.product-table .product-release-note.production {
  background: #e6f8ff;
  color: #075a80;
}

.product-check-note {
  background: #fff7ed;
  border: 1px solid rgba(251, 146, 60, 0.32);
  border-radius: 10px;
  color: #8a3a0b;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  margin: 8px 0 0;
  padding: 8px 10px;
}

.order-table small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  margin-top: 4px;
}

.order-margin-note {
  border-radius: 999px;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  margin-top: 7px;
  padding: 4px 8px;
}

.order-margin-note.pickup {
  background: #e3fbf8;
  color: #047273;
}

.order-margin-note.design {
  background: #fff0e7;
  color: #9b3d10;
}

.order-chain-card span {
  line-height: 1.45;
}

.selected-order-panel .panel-header,
.selected-logistics-panel .panel-header,
.selected-finance-panel .panel-header,
.selected-sac-panel .panel-header {
  align-items: flex-start;
}

.selected-order-panel .panel-header small,
.selected-logistics-panel .panel-header small,
.selected-finance-panel .panel-header small,
.selected-sac-panel .panel-header small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.35;
  margin-top: 4px;
}

.selected-order-card {
  background: linear-gradient(180deg, #ffffff, #effaff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  display: grid;
  gap: 6px;
  margin: 16px;
  padding: 16px;
}

.selected-order-card strong {
  color: #082e73;
  font-size: 22px;
}

.selected-order-card span {
  color: #496884;
  font-size: 13px;
  font-weight: 800;
}

.selected-order-card p {
  color: #136bea;
  font-weight: 900;
  margin: 0;
}

.selected-order-actions {
  padding-top: 0;
}

.finance-breakdown-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  padding: 0 16px 16px;
}

.finance-breakdown-grid article {
  background: linear-gradient(180deg, #ffffff, #f2f9ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 14px;
}

.finance-breakdown-grid span {
  color: #496884;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
}

.finance-breakdown-grid strong {
  color: #082e73;
  font-size: 18px;
}

.selected-marketing-panel {
  border-top: 1px solid var(--border);
  padding-top: 2px;
}

.marketing-decision-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 0 16px 16px;
}

.marketing-decision-grid article {
  background: linear-gradient(180deg, #ffffff, #f2f9ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 14px;
}

.marketing-decision-grid span {
  color: #496884;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
}

.marketing-decision-grid strong {
  color: #082e73;
  display: block;
  font-size: 15px;
  line-height: 1.35;
}

[data-api-card] {
  cursor: pointer;
}

[data-api-card].selected {
  border-color: rgba(0, 188, 212, 0.72);
  box-shadow: 0 18px 34px rgba(0, 120, 185, 0.14);
}

[data-product-row] {
  cursor: pointer;
}

[data-supplier-row] {
  cursor: pointer;
}

[data-product-row].selected,
[data-supplier-row].selected {
  background: linear-gradient(90deg, rgba(225, 247, 255, 0.92), rgba(255, 255, 255, 0.96));
  box-shadow: inset 4px 0 0 var(--brand-secondary);
}

.selected-product-panel {
  border-top: 1px solid rgba(203, 222, 239, 0.92);
  padding-top: 2px;
}

.product-decision-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  padding: 0 46px 24px;
}

.product-decision-grid article {
  background: linear-gradient(180deg, #ffffff, #f2f9ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 14px;
}

.product-decision-grid span {
  color: #496884;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
}

.product-decision-grid strong {
  color: #082e73;
  display: block;
  font-size: 14px;
  line-height: 1.35;
}

.selected-supplier-panel {
  border-bottom: 1px solid var(--border);
}

.supplier-decision-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 0 16px 16px;
}

.supplier-decision-grid article {
  background: linear-gradient(180deg, #ffffff, #f2f9ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 14px;
}

.supplier-decision-grid article.wide {
  grid-column: span 4;
}

.supplier-decision-grid span {
  color: #496884;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
}

.supplier-decision-grid strong {
  color: #082e73;
  display: block;
  font-size: 14px;
  line-height: 1.35;
}

.selected-api-panel {
  border-top: 1px solid var(--border);
  margin-top: 18px;
  padding-top: 2px;
}

.api-decision-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 0 16px 16px;
}

.api-decision-grid article {
  background: linear-gradient(180deg, #ffffff, #f2f9ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 14px;
}

.api-decision-grid span {
  color: #496884;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
}

.api-decision-grid strong {
  color: #082e73;
  display: block;
  font-size: 15px;
  line-height: 1.35;
}

.api-discovery-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0 16px 18px;
}

.api-discovery-grid article {
  background: linear-gradient(180deg, #f8fbff, #edf7ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 16px;
}

.api-discovery-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.api-discovery-grid ul {
  color: #173b63;
  display: grid;
  font-size: 13px;
  gap: 7px;
  line-height: 1.35;
  margin: 0;
  padding-left: 18px;
}

.api-discovery-grid p {
  color: #173b63;
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
}

.zap-contract-panel {
  margin-top: 18px;
}

.zap-contract-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0 16px 18px;
}

.zap-contract-grid article {
  background: linear-gradient(180deg, #ffffff, #eef7ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 14px;
  box-shadow: 0 12px 26px rgba(36, 75, 112, 0.06);
  padding: 16px;
}

.zap-contract-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.zap-contract-grid strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  line-height: 1.25;
  margin-bottom: 8px;
}

.zap-contract-grid p {
  color: #173b63;
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
}

.product-api-link-note {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 18px 0;
}

.product-api-link-note article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  padding: 16px;
}

.product-api-link-note span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.product-api-link-note strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  line-height: 1.25;
}

.product-api-link-note p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.filter-row {
  color: var(--muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 13px;
  gap: 12px;
}

.product-workbench {
  margin-bottom: 18px;
}

.product-view {
  background:
    radial-gradient(circle at top left, rgba(65, 191, 223, 0.12), transparent 34%),
    linear-gradient(180deg, #f8fbff 0%, #edf4fb 100%);
  padding: 28px;
}

.product-corebar {
  align-items: center;
  background: linear-gradient(90deg, #082e73 0%, #06418f 48%, #043072 100%);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 12px 12px 0 0;
  box-shadow: 0 16px 34px rgba(5, 38, 91, 0.16);
  color: #ffffff;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(160px, 1fr) minmax(360px, 600px) minmax(260px, 1fr);
  margin-bottom: 28px;
  min-height: 96px;
  padding: 20px 32px;
}

.product-corebar > strong {
  font-size: 25px;
  letter-spacing: 0;
}

.legacy-topbar-hidden {
  display: none !important;
}

.core-pagebar {
  border-radius: 12px 12px 0 0;
}

.core-search {
  align-items: center;
  background: rgba(255, 255, 255, 0.13);
  border: 1px solid rgba(199, 222, 255, 0.44);
  border-radius: 8px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15);
  color: #eaf6ff;
  display: flex;
  gap: 12px;
  min-height: 58px;
  padding: 0 16px;
  position: relative;
}

.core-search span {
  font-size: 28px;
  line-height: 1;
}

.core-search input {
  background: transparent;
  border: 0;
  color: #ffffff;
  flex: 1;
  font-size: 17px;
  min-width: 0;
}

.core-search input::placeholder {
  color: rgba(255, 255, 255, 0.78);
}

.core-search kbd {
  background: transparent;
  border: 0;
  color: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: 800;
}

.core-actions {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: flex-end;
}

.core-actions button {
  background: transparent;
  border: 0;
  color: #ffffff;
  cursor: pointer;
  font-size: 25px;
  height: 38px;
  width: 38px;
}

.core-actions button:hover {
  background: rgba(255, 255, 255, 0.12);
  border-radius: 999px;
}

.core-action-alert {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 999px !important;
  font-size: 16px !important;
  font-weight: 900;
  position: relative;
}

.core-action-alert::after {
  align-items: center;
  background: #1b8cff;
  border: 2px solid #063477;
  border-radius: 999px;
  content: "3";
  display: flex;
  font-size: 10px;
  font-weight: 900;
  height: 19px;
  justify-content: center;
  position: absolute;
  right: -4px;
  top: -5px;
  width: 19px;
}

.core-action-panel {
  background: #ffffff;
  border: 1px solid rgba(185, 214, 239, 0.96);
  border-radius: 18px;
  box-shadow: 0 24px 56px rgba(5, 38, 91, 0.24);
  display: none;
  max-width: min(360px, calc(100vw - 32px));
  padding: 16px;
  position: fixed;
  right: 24px;
  top: 92px;
  width: 360px;
  z-index: 80;
}

.core-action-panel.active {
  display: grid;
  gap: 14px;
}

.core-action-panel-header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.core-action-panel-header strong {
  color: #082e73;
  display: block;
  font-size: 18px;
  line-height: 1.2;
}

.core-action-panel-header p {
  color: #52708b;
  font-size: 13px;
  line-height: 1.35;
  margin: 5px 0 0;
}

.core-action-panel-header button {
  background: #eef7ff;
  border: 1px solid rgba(185, 214, 239, 0.96);
  border-radius: 999px;
  color: #082e73;
  cursor: pointer;
  font-size: 20px;
  height: 34px;
  line-height: 1;
  width: 34px;
}

.core-action-panel-list {
  display: grid;
  gap: 8px;
}

.core-action-panel-list article {
  background: linear-gradient(180deg, #f8fbff 0%, #eef7ff 100%);
  border: 1px solid rgba(185, 214, 239, 0.82);
  border-radius: 14px;
  padding: 12px;
}

.core-action-panel-list span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.core-action-panel-list p {
  color: #173b63;
  font-size: 13px;
  line-height: 1.35;
  margin: 4px 0 0;
}

.core-action-panel-button {
  justify-content: center;
  width: 100%;
}

.planned-action-status {
  align-items: center;
  background: #f8fbff;
  border: 1px solid rgba(185, 214, 239, 0.82);
  border-radius: 999px;
  color: #52708b;
  display: flex;
  font-size: 12px;
  font-weight: 800;
  gap: 10px;
  justify-content: space-between;
  padding: 8px 10px;
}

.core-search-results {
  background: #ffffff;
  border: 1px solid rgba(185, 214, 239, 0.96);
  border-radius: 14px;
  box-shadow: 0 22px 46px rgba(5, 38, 91, 0.22);
  display: none;
  left: 0;
  overflow: hidden;
  padding: 8px;
  position: absolute;
  right: 0;
  top: calc(100% + 10px);
  z-index: 30;
}

.core-search-results.active {
  display: grid;
  gap: 6px;
}

.core-search-results button {
  background: #ffffff;
  border: 1px solid transparent;
  border-radius: 10px;
  cursor: pointer;
  display: grid;
  gap: 3px;
  padding: 12px;
  text-align: left;
}

.core-search-results button:hover,
.core-search-results button:focus-visible {
  background: #eef7ff;
  border-color: rgba(25, 126, 218, 0.24);
  outline: none;
}

.core-search-results strong {
  color: #082e73;
  font-size: 14px;
}

.core-search-results span,
.core-search-empty {
  color: #52708b;
  font-size: 12px;
  line-height: 1.35;
}

.core-search-empty {
  padding: 12px;
}

.core-divider {
  background: rgba(255, 255, 255, 0.3);
  height: 34px;
  width: 1px;
}

.core-version {
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(199, 222, 255, 0.34);
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  padding: 8px 10px;
  white-space: nowrap;
}

.core-avatar {
  align-items: center;
  background: linear-gradient(145deg, #5cb8ff, #136bea);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(3, 19, 54, 0.22);
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  font-size: 20px;
  font-weight: 800;
  height: 54px;
  justify-content: center;
  width: 54px;
}

.core-user {
  cursor: pointer;
  display: grid;
  gap: 3px;
  line-height: 1.2;
}

.core-user strong {
  font-size: 16px;
}

.core-user small {
  color: rgba(255, 255, 255, 0.78);
  font-size: 13px;
}

.product-page-hero {
  align-items: center;
  background:
    linear-gradient(90deg, rgba(240, 248, 255, 0.62), rgba(255, 255, 255, 0.86)),
    url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAcFBgYGBQcGBgYICAcJCxIMCwoKCxcQEQ0SGxccHBoXGhkdISokHR8oIBkaJTIlKCwtLzAvHSM0ODQuNyouLy7/2wBDAQgICAsKCxYMDBYuHhoeLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi7/wAARCAFDBXgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD6RooooAKQkAZPT3qOWUJx1b0qq7MxyTVKNyXKxZadB0yfpUZuD/dH4moKK05UTzMn+0H+4tH2g/3FqCijlQuZk/2g/wB1aPtB/urUNFHKg5mTfaD/AHRS+ef7q1BiijlQczJ/PP8AdWjzz/dWoKWjlQczJvPP91aPPP8AdWoaKOVBzMm88/3Vo88/3RUNFHKguybzz/dWjzz/AHRUNFLlQ7sm88/3Vo88/wB1ahop8qC7JvPP91aPPP8AdWoaKOVBdk3nn+6KPPP90VD2opcqC7JvOP8AdWjzz/dFRUUcqC7JfPP90Ueef7q1FRRyoXMyXzz/AHVo88/3RUVFHKh3ZL55/uijzj/dWoqKOVBdk3nH+6tHnH+6tQ0UcqC7JvOP91aPOP8AdFRUUcqC7JfOP90Uecf7oqKijlQXZL5x/uijzj/dFRUUcqC7JfOP91aPOP8AdWoqKOVBdkvmn+6tHmn+6KiopcqC7JfOP90Ueaf7oqOiiyC7JfNP90Ueaf7oqKiiyC7JfNP90Ueaf7oqKlosguyTzT/dFHmn+6tR0UWQ7sk80/3RR5v+yKjoosguyTzT/dWjzT/dFR0UWQXZJ5v+yKPM/wBkVHRRZBdknmH+6tHmH+6tMoosgux/mf7IpfM/2RUdFFkF2SeZ/sijzP8AZWo6KLILsk8z/ZFHmf7IqOilZBck8z/ZFHmf7IqOiiyC7JPM/wBkUb/9kVHS0WQ7j9/+yKN/+yKZRRZBcfv/ANkUb/8AZFMoosguP3/7Ipd/+yKjoosFyTf/ALIo3/7IplFFguO3/wCyKN/+ytMoosA/f/sijf8A7IptFFgH7/YUbv8AZFMopWAfv/2RRv8AYU2kosFx+7/ZFG72FMoosFx+72FG72FMpaLAO3ewo3ewptFFgHbv9kUbvYU2iiwDt3sKN3+yKbRRYB+72FG72FNoosA7d7Cjd7Cm0UAOz7Cjd7Cm0UWGO3ewo3ewpKKAFz7Cjd7CkooAdn2FJn2FJRQAufYUufYU2igB2fYUZHoKSikAufYUZ9hSUUALn2FH4CkpaAD8BRkegoooAXPsKPwFJRQAvHoKMj0FJRQAv4Cj8BSUUAL+Ao49BSUtAw49BRx6CiigA/AUcegoooAPwFHHoKKKAD8BR+AoooAOPQUfgKKKADj0FHHpRRQAfhRx6CiigA/AUcelFFAB+Ao/CiigA/AUcegoooAOPQUfgKKKQB+Ao49BRRTAOPQUfgKKKAD8BRx6CiikAvHoKTj0FFFAC/hR+ApKKADj0FH4CiigBfwpPwFFFAB+Ao/AUUUAH4UcegoooAOPQUUCigBaM0lFADqKSloAKKKKACoppNowPvHpUjHA56daou29i1VFXJk7DaKKK2MwpaKKACiiikAUUUUAFFFFABRRRQAtJRS0AFFJSigAooooGFFFFAgooooGLRSUUALRRRSAKKKKACiiigAooooAKWkooAWiiigBaKSloAKKKKAEopaKBhRRRQIKKKKQBRRRQMWiiigAooooAKKKKACiiigApaSloAKKKKACiiigAooopAFLSUUDCiiigApaSloAKKKKACiiigAooooAKKKKACgUUUDFopKKAFooopAFFFFABRS0UCCiikoGFLSUtABRRRQAUUUUALRRRQAUUUUAFFFFAC0UUUgCkpaKACikooGLRRRQAtFJRQAtFFFIAooooAKKWigAoopKAFpKWkoAWikpaACiiigApaKKACiiigYUUUUAFFFBoAKKKKACiiigAooooAKKKKACiiikAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABS0lFABS0lFAC0lFBoAdRSDrj15FFAEVw2EPucVUVg3Q5qe56qPbNV1ULnAraOxlLcWjIBHrRQVBIJ6iqEFFLSMoYYNIApaSloAKSlooAKKKKACiiigApaSigBaKSloAKKKKAEpaKKACiiigAooooGFLSUUALRSUtIQUUUUDCiiigAooooAWikooAWiiigBaSiigBaKKKACikooAWikpaQwooooAKKKKAFooooAKKKKACiiigAooooAKWkooAWikpaACiiigAooopAFFFFABRRRQMWikoFAC0UUUALSUUUAFLSUUAFLSUUAFFLRQAlLSUtIYUUUUAFFFFAgpaSloGFFJRQAtFJQKAFooooAKKKKAFopKKAFooooAKKKKQBS0lFAC0UlLQMKKKKACiiigApaSigBaKKKACiiikAtFJS0AFFJS0AFFJRQAtFFFABRRRQAtFJS0AFFFFAwooooAKKKKACiiigAooooAKKKKACiiigAooopAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRQcnoaKACiimqpBOWzn1oAfSUtMkj34+bGKAFbjB9DRQ/CN/umiqSuK9ivc/eX6VDUt1nK4HO2q0LOc7+laxXumUnqS0lOqN2cOoUZXvTQD6KM1HIzqAVXPNC1AkopBQeAccmkAtFA6A9DRQAUUiksOVxS0AFFFFABRRRQAUUUUAFFFFABS0lFAC0UUUAFFFFAwooooAKWikoAKWiikAUUUUAFFJS0AFFFFABS0lFAC0UUUAFFFFABS0lFAC0lFFAxaKKKACiiigApaSikAtFFFABRRRQAUUUUAFApKWgApaSigBaKSloAKKKSgBaKKKACiiikAUUUUDClpKWgAooooAKKKKAClpKKACiiigAoopaAEpaSigYtFIKWkAUUUUALSUUUCCiiigYtFJRQAtFJS0AFLSUUAFLSUtABRRRQAUUUUAFFFFIBaSiloAKKKKBhRRRQAClpBRQAtFFAoAKWkopAFFFFAC0lLRQAlLRSUALmikpaAClpKKAFpKWkoAWikpaBhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFIAooooAKKKKACiiigAooooAKKKKACiiigApaaHBZlHUUtABS013VACe5p1ABRRTEkV847UAPoNFRyyiPGQefShK4bCy/6t/wDdNFEnMbn/AGT/ACorSJMiC5+8v0qKpLogFSegWoEkVzgdaqK0IluOopaazqDtJ5qhC0tJTWdV6mgB1LSUE46nigApaSlpAFFAII4OaKACikpaACikpaACiiigAooooAKWkooAWiiigAoopKAFooooAKKKKBhRRS0AFFFFIAooooAKKKKACiiigApaSloAKKKKACiiigBaSlooGFJS0lAC0UlLQAUUUUCCloopDEoopaACiiigAooooAKKKKACiiigBaKSloAKKKKACiiikAUUUUAFAoooAKWkooGLRQKKACiiigAooooAKWkooAKKKWgYlFLSUALRRRSEFFFFABRRRQMKWkpaBBRRRQMKKKKACiiigBaKSigBaKKKACiiigApaSikAtFJRQAtFFFAwooooAKWkooAWiiigAoooNIBaKSigAooooAKWkooAWiiigBaSiigBaKSloAKKKKBhRRRQAUUUUgCiiimAUUUUAFFFFABRRRQAUUUUAFFFFIAooooAKKKKACiiigAooooAKKKKACiiigAoopaAE470tFFABSAAdBS0UAFIQD1GaWigBkn+rf/AHTRRJ/q3/3TRVxJkV7sBtoPQrVaOMIc5yatXP3l/wB2ocVpF2RnLcXNRugZt3OakxSU07CCkdFbGe3pS5paADoKRlDDBopaBgOmKQjIpaKQDVUIML0p1FFMBMDOe9LRRSASilpKACilooAKKKKACiiigApaSigAooooAKWiigAooooGFFFFAC0UUUgCiiigAooooAKKKKACiiigApabS0ALRRRQAtFJRQAtJRRQAUUUUDClpKKBC0UUUhhS0lLQAUUlLQAUUUlAC0UUUAFFFFAC0UlLQAUUUUAFFFFABRRRSAKKWkoAKKKKBhS0lFAC0UUUAFFFFABQKKKACiiigAooooAKWkooAUUUUUgCiiigAooooGFFFFABRRRQAtFJS0AFLSUUALRSUtABRRRQAUUUUgClpKKAClpKKAFooooGFFFFAC0UlFAC0UUUAFFFFIAoopaAEopaSgApaSigBaKSloAKKKKACg0tJQAtFJS0AFFFFAwooooAKKKBQAUUUUAFFFFABRRRQAUUUUAFFFFIAooooAKKKKACjvRRTAKa4LKQrbT606igAHAAJyfWjpRRSAjRGEjMXyD0HpUlLRTvcCKaNnC7X24NS0UUXAKihR0LFmzmpaKLisFV7iOR2UryPTNWKDQnZ3Bq5GQRCwJyQpopZP8AVv8A7poqoiZVvido29dtUYS/mDHTvWjcfeX/AHai4rWErRsZSV2IPeoZA5k4zjtip6TmhOwNCgCmShsjZnHtTuaKBi9BUchkwNlSUULQW4gzgZ60HO0460tFAxse7b83WnZoooAaN285xt7UtLRQAhzxj8c0tFFIApKWigBKKKKAFoxRRQAUtFFABRRRQAUUUUAFFFFABRRRQMKKKKBC0UUUhhRRRQAUhpaKACiiigAopKWgAoopaACiiigApaSigBaKSloAKSlooAKKSigBaKKKQBRRRQAUtJS0DCkpaSgAoopaACikpaAFopKKAFooooAKKKKACiiikAUUUUAFFFFAwpaSloAKWkooAKKKKACiiigAooooAWikooABS0lLQAUUUUgCiiigAooooGFLSUUALRRRQAUUUUALRSUUALRSUtABRRRQAUUUUgCiiigBaSiloAKKKKBhRRRQAtFJS0AFFFFABRRRSAKKKKAClpKKACilpKAFopKWgAooooAKWkpaACiiigYUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFIAoFFFMApu4b9vfGadRQAU2VxGm49PanUHFACKQyhh0PNLzRS0gIll3SmPaeO9Sd6O/vS4psRHLKseM9TT1YMoYdDSMit95QfrTgKNLBrcQ8A+1QxSs7YZcenNT0iqqk4GDQrWDUWq81xsfYOvU5qxUckKSEFhzTja+oO9tBN++BmHdTRSuAsTADACmiqj5CZWviV2kdcYqkkjhhuORV68G4qp9KrJCAck5rWDXLqZSvzaE1QtNhsAcCpsVG0Sls0K3UHfoSAggGonlAbABNSDimsqsckc0lbqDuOHIB9aa7bMZpwzTWQP8AeoQDge/akdwoyaUCggEYIyKAERg4yKdSAADAGBRQMQOpYrnkUtIFAOcc+tLQAEgEZPWikwKKAF7UUUUAFFFFIApaSigBaKKKAFopKKAFopKWgAooooAKKSloAKKKKBi0UlLQAUUUlIBaKKKACiikoAWkopaAClptLQAtFJS0AFFFGKAClpKKAClpKKACiiigBaKSloAKKKKQwpaSigBaKKSgApaKKACikooAWgUUlADqKSloAKKKKACikpaACg0UUgCiiigAooooGFLSUUALRSUooAKKKKACiiigAooooAKKKKAFopKKAFooopAFFFFABRRRQMKKKWgAopKWgAooooAWkoooAWikpaACiiigAooooAKWkopALRRRQAUUUUDCiiigBaKSigBaKKKACiiikAtFJRQAtFFJQAUtJRQAtFJS0AFLSUUALSUtFAwpKWigAopKWgApKWigAooooAKKKKACiiigApKWigAooooAKKQ9OOtAztGTk+tAC0UUza3mbt3y46UAPoopkqsyYVsGgB9ApqhgoBOTjrSgH1oAdSZHTvUMcbrKWZsj+dOEZ8zcfzzTshXZLRUcibsYpJo2ZVAbpSsguS00MpONwzSYby9ucnGM1T8qctjGPenGKfUTbRfpjyIn3jyacM4qrPG/m7gCwPpRFJvUbbSJ3IMTkHjaaKaF227gjnaaKqJLIrogFSem2qyyoTgGpr9SQuPSqSrk4HWtYJOJnNtMt80hIzgsKd0qqwO459aIq4m7Fnp1oBU9DmoZN3lr7daZEG3g8+9Pl0DmLVN3KTgMM0jAlSB1xVdYmzjBzQkgbZZpaKbKpZcLUjH0VHEGVcGniiwBS0xVIcktwe1PoGJRTWBJGGwO9OoAKKQ8ggHB9aFBAAzk+tAC0UUopAFFFFABRRRQAUUUUALRSUUALRSUUALRRRQAUUUUDCiiigBaKSlpAFFFFACUUtFACUUUUwFooopAFFFFACiikpaACiiigAooooAKWkooAWikooAWigUUhhS0lLQISiiigYUtJRQAUtFJQAtFFFABRSUtAC0UlLQAUlFLQAUUUUAFFFFIAooooAKKKKAClpKKBi0UlLQAUUUUAFFFFABRRRQAUUUUAFFFFAC0UUUgCiiigAooooAKWkooGLRSUtABRRRQAUUUUALRRRQAUUUUAFFFFIApaSigBaKKKACiiigAooooGLRSUtABRRRQAUUUUgFpKKKACilpKAClopKAFooooAKWkooAWiiigAooooAKKKKBhRRRQAUUUUAFFFFABRRSUALRRRQAUUhOASegoBDAEdDQAooopocGTy+d3WgB9JRUc0vlrnGecUWuGxJS0xG3oG7GmRsxfB6H9KLCuTUUcd6pm7IfgDHpTUW9gckty5RTVbcoI781Va4kMhCgBRxyKFFsHJIuUU1DuUH1qC4kYNtU4x3oUbuwN2VyzRUMM24EEfMO9Vri5cS7FO0D0pqDbsJySVy5L/q3/wB00VDFKZIZN3UKefWimlbRibuJcn5l+lQcdhT70ldpHUjFUgzA53GtIRujOTsy1RigEFQ3tmoDMxPHAppNibSLGKWoXkOwEdTTY5G3BW5zRysOZFikppOFJx0qEStnnGPShK4Nk9LQMYpksmwDAyTS3HsSUVFFJvB4wRUgoasCdwopquGYqO1OzQMWkprMAQD3p1ABRQSACTQpyMjoaACloopAFFFFABRRSUALSUtFACUtBooAKKKKAFopKUUAFFFFABRRRQMKWkooAWikooAKKKKACilopAFFFFMAooopAFFFLQAUUUUAFFLSUAFFFFABRRRQAUtFFAxKWiigQtJRRSGFFFFAgpaSloGFFFFABRRRQAUUUUAFLSCloAKKKKACiiigAooopAFFFFABRRRQMKKKWgAopKWgAooooAKKKKACiiigAooooAKKKKAFopKWkAUUUUAFFFFAwopaSgApaSigBaKKKAClpKKAFopKKAFooopAFFFFMBaKSlpAFFFJQAUtFFAwooooAWikooAWiiigAooopALSUUUAFFFFAC0UlLQAUUUUALRSUUALRRRQMKKKKACiiigAooooAKKKKACiiigAooooAMUDjjFFFABRx1xz60UUAFIVBGCMj3paWkAg44FAx2FGaBTADUX2eIvuK81MKYZUDbSwDelCv0E7dRwAFNMcZOdvNOzSMyjqQKFcYvsBTJI1k65B9qkpruiD5jihX6CduoiRqgwoqOW2SU7jwfUVMrKwypBFNkkEYyxppu4aWGeWsULqv908/hRTmdXicqcjaf5UVUb9SX5EF3g7V9qpeSxbk8VeusAqT021VEqZxz+NaQbtoZytfUeBgYqMwjOelS801nUHBPNNN9BNIRo1KgdMdKEjCnOcmlJAGc8UK6t0OaNQ0HHkYxUflLn29Kkpu5Scbhmkrj0FpGUMMGn4pOBRcBFAUYApaKWgYmB1xRS0UAJRRRQAUUUtACUtFFIAooooAKKSloAKKKKACiiigAooooAWkoooAKWkooAWiiigAooooGFFFFABRRRQAUtFFIAoozRQAUUUUAFLSUUAFLSUUALRRRQAUUUUALRSUUAFFFFAC0UUUAFFJS0gCiiigAooooGFLSUUALRRRQAUUUUAFFFFAC0UlLQAUUlLQAUUUUAAooopAFFFFAwooooAWikooAWikpaACiiigAooooAKKKKACiiigAooooAWikpaQwooooELRSUUDFpKKKAFooooAKKKKAFooooAKKSloAKKKKACiiikAUUUtABSUtFABRSUUALRRRQMWikpaACiiigAooopALRSUUAFLSUUAFLRRQAUUUUALRSUUALRSUUALRRRQAUUUlAxaKKKACiiigBKWiigBGzg469qF3bRu6+1LRQIKjAk83Ofk9KkooGFQ3COygKe/IqekoTtqJq4kYIjUN1xTZQxjITrUlJRfW4/IZEJBGAx5qkbeQuQwOc9a0aKpTaJcUxqLtUD0FVLhXEhPY9DV3FFKMrO4ON1YhtvM2fOOO1Vro4lO48HpV+kKqeoB+tNSs7g43VijaBvM3L93HNFwsvnEnpjirwUDoMUpHtT59bi5NLFSFWEcpI42mirEn+rf/dNFCd9QatoVb4EhQOuKzwGY4wa07gfMv8Au1DitISsjOUbsB0AquY23HjPvVkikpp2E1cjeM7FA5xTYoyGyRgVNk0Zou7WCyBuhFVvLfOOMetWaXFClYGrjRTZELrjNSYpKVx2GxpsXBp/SkzRRuMYFw5bPXtT6WkoEIVyQcniloooGIeQR0pRwAM5oooAKKKKACilpKAFoopKQC0lFFABS0UUAFFJRQAtFFFAC0UlFABRRRQAUtJS0AFFFFABS0lFABS0lFABS0lLSGFFFFABRRRQAUUlLQAUtJRQAtFJS0AFFFGKACiiigApaSigBaKSigBaKSloAKKKKQBRRRQAUtJS0DCikooAKWiigAopKWgAooooAWikpaACkpaKACiiigAoopaQCUUGigYUtJS0AFFFFABRRSUALRRRQAUUUUAFFFFABS0lLQAUUlKKQBRRRQAUUUUAFFFFAxaKSgUALRRRQAtFJRQAtFJS0AFFFFABRRRQAUUUUgFpKKKAFopKKAFopKWgYuaKSigBaKKKACiiigAooopALRRRQAUUlLQAUUUUAFFFFAC0UlLQAUUlLQAUUUUDCiiigAooooAQkAZNAORkcigjIwaAMDAFAhabvXfs706kwN27HPrQMXNRySrGATnntUmKayKwwwzQrdRO4qNuUMOhpSdqknoKFwoAHAHag88GgYyKVXJA4NQPd4cgAYFWFjVfujFRtbRltxHPtVJxvqQ1KxJG29QwGMjNRTSMrbU7dSanAwMDoKa6I3JHPtSTVynewkLF1y3UdajuJTGQFIB9TUygKMCo5oRN1OCO4oVr6id7aDILnc2xuvqKZPdEPsQdOpqWK2SPkcn1NJJaq7bs4aqvDmFaVgSXzInB6hTRSiMRRP3O080U15B6kN8xUAjrtqgsrhs5J9q0boZZQem2q6xRg5xWkGlHUzmm3oP61AWbcece1WKQqCc45oTsDQKMqDUG9t/49KnyaT3xzQmJjs4qrJcOHIHAHarOKQqCckDNCstwd3sAYkA0jkhSQMmnUtIYyMllyRzTs0UUAMDMWI28DvTxRRQAhOCBjr+lLRRQMQnAPFKOQD0oooEFAoooGFFFLSASilooAKKSigAopaSgAooooAWiiigAooooAKKKKACiiigBaSiloAKKKKBhRRRQAtJRRQAtJRRQAtJRRQAtFJRQAtFJRSAWlpKKAFopKKAFooooAKKKKACikpaACiiigBaKSloAKKKKACiiikAUUUUDCiiigApaSloAKKKKAFpKBRQAUUtJQAtFJRQAtFJS0AFFFFABRRRSGFLSCloAKKKSgBaKKKACikpaACg0UUAAooooAKWkFFABS0lFAC0UUUgCiiigApaSigYUtJRQAtFJRQAtFFFABS0lLQAUUUUAFFFFABRRRSAKWkooAWikooAWiiigYUtJS0AFFFFABRRRQAtFJS0gEoopaACikooAWiiigAooooAKWkpaACiiigAooooGFFBooAKKQ5wcdaVc4GetABRRTBv8ztsxQA+iio5g5X5DzQtRPQkpqHOaE3bQG696cBj2oGGcU3zk3bc801EkEhLNlfSk8gb854zmnZdSbvoS0jELyTTqjkTcQc8ikimPXBGRTZJFjXLH8KVRtUDvUFzFI5BTr0waaSb1E27E0cqSDKn8KVnCjJIAqtbW7oxd+p4xUs8PmAY7HpTaV7CTdhWYPE5U5G00UxY/Ljkz3U8UU1psJ+Yy7bBUnptqqkys2MEfWrV3zgeq1UjiO4FsYHpWkLcupnK9yemF0BwTzT8VC0WWJB4NCt1B3JqaHUtjPNBHy4B6VEsWHyTmmrBqTZprOoPJp1RugY5yRSVgZJQeO9HHSmuu5cUAO6jiimou0YFOxQAlLTQoDFu5p1ABSUhUEgnqKdQAUUhGRiloGFFFFABS0lFABRRRQAtJRRQAUtFFIBKWiimAlLRSUgFooooAKKKKACiiigBaSiigBaKKKACiiigYUUUUCCiiigYUUUUCCiiigYUtJS0AJS0UUgClpKKAFopKKAFpKKKAFopKWgAooooAKKKKAFoopKAFoopKAFopKWgAooopDCiiigAooooAKWkooAWiiigAooooAKKKDQAtFIKWgAooopAHeiiigYtFJRQAtFJRQAtFJRQAtFFFABSUtFABRSUtABRRRQAUtJRQAtFFFIAooooAKKKKBhRRS0AIKWkooAWiiigApaSigBaKKKAEpaKKACiiigAooopAFFFFAC0UlLQMKWkooAWiiigAooopALSUUUALSUUUAFFFFAC0UlLQAUUUUAFLSUUALRRRQAUUUUDCiiigAzRRRkZxnn0oAKbK+xMgZ9qdQaAAdKCaKUUgEpAecVGkbiVmJ+U/rU2Kb0EgpGIVST0FRTRuzKVPFSOu5Np9KLAJHIj8Dr6GklmSJcn8BTYoQh3ZyaLiIyKMAZHrT924tbCwzLKuR19KWWTZjPeo7eAx5LdT2FFzA0hVlPTjFO0eYLuxLJ/qn/3T/KikYEQEHqEI/SinEUiK5HzL9Kh6VJdE5XH92qkAkDHf096uK90iT1Js0c0vFRvvD8dKa1EPooxUbGTfx92hahsS0lMfdj5aTMoX1NOwXJKM0g9+tDDIIBx70gF70UiLtXGcn1o5oAWimjduOTx2FOoAKKQ5yMfjRQMKWkpaACgUlLQAUUUUAFFFFABQKKKAFopKWkAUUlFMBaSiigApaSikAtFFFABRRRQAtJRRQAUUUUALRSUUALRRRQMKKKKACiiigAooooAWikpaQBRRRQAUUlLQAUUUUAFLRSUALRRRQAUUUUAJS0UUALSUUUAFFLRQAUUUUgCiiigYtJRS0AJRS0UAJS0lLQAUUUUAFFFFABRRRQAClpKKAFopKWkAUUUUwCiiigAooopDFoopKAFooooAKKKKACiiigAooooAKKKKAClpKKAFooopAFFFFABRRRQMKKKWgAooooAKKKKAFopKWgAooooAKKKKAClpKKQBRRRQAUUUtABRRRQMWikpaACiiikAUUUUAFFFFAC0lFFABS0lLQAUUlLQAUGiigAooooGLSUUtABjIxSDAGO1LRQAUm0bt2Pm9aWigApsoBT5jgU6kYBhgjihCFA4GDxRwKB0wOlGKBjVkVmKjqKfmo1jRWJXrTgTk0O3QS8xTS4qrdsw246VNCXMal+tO2lwvrYkNRiVCxUMMjtTnUspA6kVUih/eAjqKIpNaibaZczQzAfeIA96XAqpeMu5QW/CiKu7DbsrliQfu3/3TRTA263JBz8p5oqoksivG2gEddtVISxY85FW7td20f7NVo49meck1pC3KZyvzEnNMZ8NipKieMGRWz9RQvMGPpaKY6lgAG280APopMUEHHHWgBaTFKOlBNABRTV3Y+br7UtAC0U0Z3H0paACij+VLQMKSlpKACiiigBRRRRQACiiigAopaSgAooooAKKWkoAKKKKACiiikAtFFFABRRRQAtJRRQAUUUUAFFFFAC0UlFAC0UUUAFFFJQAtFJS0AFFFFABRRRQMWikpaQBRRRQAUUUUAFFFFAC0UlFABS0UUAFFFAoAKWkpaACiiikAUUUUAFFFFAwpaSigBaKKSgApaSigBaKKBQAUUUUAFFFFAC0lFLQAUUUUAFFFJQAtFJRSAWiiigYUUtJQAtFFFABRRRQAUUUUAFFFFABRRS0AFFFFIAooooAKKKKAClFJRQMWiiigAooooAKKKKAFopKUUAFFFFABRRRQAUtJRSAWikooAWiiigApaSigYtFJS0CCiiikMKKKKACiiigAopaSgBaSiloASloooAKKKKAClpKKAFpBwMUUtABTcHfndxjpTqKACmuCykK20+tOooGAyABnPvRRRQA0IA5YZyafTe9HO72oEKwVhyM0uKimZ1A2DPPNSdQKAFpiIqEle9PpkcgckAYIo1DQfUUsCyEHoRUtQTySqyiOPcD1NON76A7W1HlQkLKOgU0Ur/6t/8AdNFOImQXP3l+lQ1NddVx121Vi8znf+FaR+EzluSUhHIpaY2/eNuNvemIfiiimvux8vWgB1JS0h6HHWgBaKaM4560tABRSAnHzDBpaACiiloASlopKAFpKWigYUlFLQAUUUUCCkpaSgBaKKKBhRRRQAUUUUAFFLSUAFFFFABRRRQAUtJRSAKKWkoAWiiigAooooAKKKKAFopKWgYlLRSUCFooooAKKKKACilpKACiiigYtJRS0AFFFFIAooooAKWkooAWikpaACiiigAooooAWikFLQAUUUUgCiiimAUUUUhhRRRQAUUUUAFLSUtABRRRQAUUUUAFFFFAC0UUUAFFFFACUtJS0AFFFFABRRS0gAUUlFAxaKKSgBaKKKACiiigAooooAWkoooAKKWikAUUUUAFFFFABRRRQMKWkpaACiiigAooooAWiiigBKKKWgAooooAKKKKQBS0lLQAUUUUDCiiigBaKSloAKKKKQBRRRQAUUUtABSUUtACUtFJQAtFFFABRRRQAUUUtABSe1LRQMKRm2qWP6UtFAgHIBooooGNVgWK85FPpKKAGu4QAnPPpT80lFIAJ4NQwBDuZAR9anoH0p30FYQCo5n2beM5qWkoQ2Nf/VN/umiiT/Vv/umiqiTIgufvL9Khqe642n6iqqOHB9quOxnLcfSUUjMAQD1NUIWilpGIAyaACiijtQAUUDpRQAUUtJQAUUUUAFLSUtABRRRQAlFLRQMSloooEFFFFAwooooAKKKKBBRRRQMKKKKACiiigBaKSigBaSiikAtJRRQAGlpKM0ALRSUtABRRRQAUtFFABRRRQMKKKKBBRRRQAUUUUAFLSUUALSUUtAxKWkpaQBRSUtABRSUtABRRRQAUtJS0AFFJS0AFFFFAC0UlLSAKKKKYBRRRQAUUUUgCiiigApaSigYtFJRQAtFJS0AFFFFAC0UlFABS0lLQAUUUUAJS0UUAFLSUUAFLSUUgClpKKACloooGFBoooAKKKKACiiigBaSlpKAFooopAFFFFABRRRQACiiigYUtJRQAtFFFABRRRQAUtJS0AFFFFABRRRQAUUUUgFooooAKKKKBhS0lLQAUUUUAFFLSUgCiiigBaKKKACikooAWiiigAooooAKKKKAClpKWgAoopDQAtFFFAwopFXDE7jz29KWgAoprlgBtGeafQAUUlRwlzu3gjnjNAEtFJUVwzrsCZ5POKEribsPk/wBW/wDumilbO0+/FFNOwNCTruQ/nVLA7Vo1TmTY3HQ9KqD6EzXUiooorQzCkoooAKWkpaACikpaACkoooAWiikoAWiiigAooooASloooGFFFFABRRRQAUUUUCCiiigAooooAKKKBQMKKKKACiiigAooooAKWkooADRRRQAUUUUgFpaSigAoopaACiiigAooooGFFFFAgooooAKKKKAClpKWgBKKKKBhRRRQAtFFFIApaSigBaSiigBaKSigBaKKKAFopKWgAooooAKKKBQAUUUUgClpKKACiiloGJRRRQAtFJRQAtFFFABRRRQAUUUUALRRRQAUUUUAFFFFABRRRSAWiiigYUUUUAFFJRQAtFFFABRRRQAtFJRQAtFJS0AFFFFIAooooAKKKKBi0lFFABRRRQAtFFFABRRRQAtFFJQAtFFFABRRRQAtFJRSAWikpaACiiigYtFJRQAtFJS0AFFFFIAooooAKWkpaACiiigAooooAKKKKACiiigApaSigBaKSloGFFFFABRRRSAKWkooAWikpDnjHTvQAvUj25opw/WigAprqGUg06igChIjIcHp2NMrRYBhgjIqtJbkcofwNaxnfczcexXpaGVl+8pFJmrICiiigAooooAKKKKACikpRQAtFJRQAtJRS0AJRRRQAtFJRQAtFJS0AFFFFABRSUtABRRSUALRRSUALRRRQAUUlFAC0UlLQMWikooAWkoopAFFFLQAUUUUAFLSUUALSUlFADhRSZozQAtFFJQAtFFFABRRRQAUUUUAFFFFAC0lFFAxaKSikAtFJS0ALSUUUALSUtFACUtFJQAtLTaUUALRRRQAUUlLQAUUUUgCiiigAooooGFFFFABS0lFAC0UUUAFFFFABRRRQAUUUUALRRRQAUUUUAFFFFABRRRSAWiiigYlFLSUCClpKKBhRRRQAtFFFABRRRQAtFFGaQBRRRQAUUUUAFFFFABRRRQMKKKKAFopKKAFooooAWikooAWiiigAooooAWikopALRRRQAUUUUAFFFFAxaWkooAWkoopALSUUtABRSUtABRRRQAUUUUAFFFFABRRRQAUUUUALRSUUALRRRQMKKKUCgBKUClopAFFFFABRRRQAUUUUABqMgf3R+VFFMBnH91fyFGB/dX8hRRQIMD+6v5CjA/ur+QoooAMD+6v5CjA/ur+QoooAMD+6v5CjA/ur+QoooAOPRfyo4/ur+QoooAOP7q/kKOP7q/kKKKADA/ur+QowP7q/kKKKADA/ur+QowP7q/kKKKADA/ur+Qo4/ur+QoooAOP7q/kKMD+6v5CiigAwP7q/kKMD+6v5CiigAwP7q/kKOP7q/kKKKADj+6v5CjA/ur+QoooAMD+6v5CjA/ur+QoooAQAf3V/IUuB/dX8hRRQAcei/kKMD+6v5CiigAwP7q/kKOP7q/kKKKADj0X8qOPRfyoooAOP7q/kKOP7q/kKKKADj+6v5Cjj+6v5CiigA4/ur+Qo49F/KiigA4/ur+Qo4/ur+QoooAOP7q/kKBj+6v5CiigA49F/Kjj+6v5CiigA49F/Kk49F/IUUUALx6L+Qo4/ur+QoooAOPRfyo/AflRRQAcei/lRx6L+VFFABx6L+VHHov5UUUAH4D8qOPQflRRQAfgPyo49B+VFFAC/gPypOPQflRRQAfgPypfwH5UUUAJ+A/Kjj0X8qKKADj0H5UfgPyoooAPwH5UfgPyoooAOPQflS/gPyoooAT8B+VH4D8qKKAF/AflR+A/KiigA/AflR+A/KiigA/AflR+A/KiigA/AflR+A/KiigA/AflRx6D8qKKAD8B+VH4D8qKKAF/AflR+A/KiigBPwH5UfgPyoooAX8B+VH4D8qKKAD8B+VH4D8qKKAD8B+VH4D8qKKAD8B+VH4D8qKKBh+A/Kj8B+VFFAg/AflR+A/KiigA/AflR+A/KiigA/AflR+A/KiigA/AflR+A/KiigA/AflR+A/KiigYfgPyo/AflRRQAfgPyo/AflRRQAD6D8qX8B+VFFAhPy/Kj8B+VFFAxfy/Kk/AflRRQAD6D8qD9B+VFFAB+A/Kl/AflRRQAmfp+VH4D8qKKADP0/KjP0/KiigAz9Pyoz9PyoooAM/T8qM/T8qKKADP0/KjP0/KiigAz9Pypc/T8qKKAEz9Pypc/T8qKKADP+cUZ+n5UUUCDP0/Kkz9PyoooGKD/nFGf84oooEJk/5FLk0UUDDNGaKKBBk0ZNFFAwyaM0UUAGTQSaKKADJoyc0UUCDNGTRRQAmTS5NFFAwBNKDRRQA+iiikAUUUUAFFFFAH/9k=") center / cover no-repeat;
  border: 1px solid rgba(203, 222, 239, 0.88);
  border-radius: 12px;
  box-shadow: 0 14px 32px rgba(36, 75, 112, 0.12);
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
  min-height: 154px;
  padding: 28px 54px;
}

.product-hero-title {
  align-items: center;
  display: flex;
  gap: 34px;
}

.product-hero-icon {
  align-items: center;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(190, 214, 234, 0.82);
  border-radius: 28px;
  box-shadow: 0 14px 26px rgba(36, 75, 112, 0.18);
  display: inline-flex;
  height: 96px;
  justify-content: center;
  width: 96px;
}

.product-hero-icon img {
  display: block;
  height: 58px;
  object-fit: contain;
  width: 58px;
}

.product-hero-title h1 {
  color: #082e73;
  font-size: 42px;
  line-height: 1.1;
  margin: 0;
}

.core-page-eyebrow {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.core-page-hero p {
  color: #315779;
  font-size: 15px;
  line-height: 1.45;
  margin: 8px 0 0;
  max-width: 720px;
}

.core-hero-actions:empty {
  display: none;
}

.product-hero-actions {
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.product-view .button,
.core-page-hero .button {
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(19, 107, 234, 0.18);
  font-size: 15px;
  min-height: 56px;
  padding: 0 24px;
}

.product-view .button.secondary,
.core-page-hero .button.secondary {
  box-shadow: 0 8px 18px rgba(36, 75, 112, 0.09);
}

.product-page-tabs {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(203, 222, 239, 0.9);
  border-radius: 10px;
  box-shadow: 0 10px 24px rgba(36, 75, 112, 0.08);
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
  min-height: 68px;
  padding: 0 34px;
}

.product-page-tabs button {
  background: transparent;
  border: 0;
  border-bottom: 4px solid transparent;
  color: #136bea;
  font-size: 17px;
  font-weight: 800;
  min-width: 108px;
  padding: 0 26px;
}

.product-page-tabs button.active {
  border-bottom-color: #136bea;
}

.product-page-tabs button:not(.active) {
  color: #315779;
}

.product-view .product-workbench {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 12px 28px rgba(36, 75, 112, 0.1);
  margin-bottom: 18px;
}

.product-list-actions {
  align-items: center;
  display: flex;
  gap: 12px;
}

.product-catalog-summary {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 18px;
}

.product-catalog-summary article {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 12px 26px rgba(36, 75, 112, 0.08);
  min-height: 112px;
  padding: 20px;
}

.product-catalog-summary span {
  color: #315779;
  display: block;
  font-size: 13px;
  font-weight: 800;
}

.product-catalog-summary strong {
  color: #082e73;
  display: block;
  font-size: 30px;
  line-height: 1;
  margin: 10px 0;
}

.product-catalog-summary small {
  color: #5e7083;
  line-height: 1.4;
}

.product-filter-button {
  min-height: 46px !important;
}

.product-view .panel-header {
  border-bottom-color: rgba(203, 222, 239, 0.9);
  padding: 22px 46px;
}

.product-view .panel-header h2 {
  color: #082e73;
  font-size: 24px;
}

.product-view .panel-header small {
  color: #496884;
  display: block;
  line-height: 1.45;
  margin-top: 5px;
  max-width: 720px;
}

.product-catalog-tools {
  align-items: end;
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border-bottom: 1px solid rgba(203, 222, 239, 0.9);
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(260px, 1fr) auto;
  padding: 18px 46px;
}

.product-catalog-search {
  color: #254d78;
  display: grid;
  font-size: 13px;
  font-weight: 800;
  gap: 8px;
}

.product-catalog-search input {
  background: #ffffff;
  border: 1px solid rgba(190, 214, 234, 0.95);
  border-radius: 10px;
  color: #082e73;
  min-height: 46px;
  padding: 0 14px;
}

.product-status-filter {
  align-items: center;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 10px;
  display: flex;
  gap: 6px;
  min-height: 46px;
  padding: 5px;
}

.product-status-filter button {
  background: transparent;
  border: 0;
  border-radius: 8px;
  color: #315779;
  font-weight: 800;
  min-height: 34px;
  padding: 0 12px;
}

.product-status-filter button.active,
.product-status-filter button:hover {
  background: #136bea;
  color: #ffffff;
}

.product-table-wrap {
  overflow-x: auto;
}

.product-view .order-table th {
  background: linear-gradient(180deg, #f8fbff, #eef6fd);
  color: #254d78;
  font-size: 13px;
  padding: 18px 46px;
}

.product-view .order-table td {
  color: #173657;
  padding: 18px 46px;
}

.product-view .product-table strong {
  color: #071f47;
  font-size: 15px;
}

.product-view .table-action {
  border-radius: 8px;
  min-height: 40px;
  padding: 0 16px;
}

.product-empty-state {
  color: #496884;
  display: none;
  font-weight: 700;
  margin: 0;
  padding: 26px 46px 34px;
}

.product-empty-state.active {
  display: block;
}

.product-category-panel {
  overflow: hidden;
}

.category-layout {
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 1fr) 360px;
  padding: 26px 46px 34px;
}

.category-form {
  align-content: start;
}

.category-list {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px;
}

.category-list-header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 4px;
}

.category-list h3 {
  color: #082e73;
  font-size: 17px;
}

.category-item {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 10px;
  color: #173657;
  display: flex;
  justify-content: space-between;
  padding: 14px;
  text-align: left;
}

.category-item.active {
  border-color: #18bdd5;
  box-shadow: 0 10px 22px rgba(24, 189, 213, 0.12);
}

.category-item small {
  color: #496884;
  display: block;
  font-size: 12px;
  margin-top: 4px;
}

.category-item > span:last-child {
  color: #136bea;
  font-size: 12px;
  font-weight: 800;
}

.priority-workspace,
.loja-functional-panel .product-workbench {
  display: grid;
  gap: 18px;
}

.priority-head {
  align-items: flex-start;
  background: linear-gradient(180deg, #ffffff 0%, #f4f9ff 100%);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(36, 75, 112, 0.08);
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 22px;
}

.priority-head small,
.specific-module-form-head span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.priority-head h3 {
  color: #082e73;
  font-size: 28px;
  line-height: 1.1;
  margin: 6px 0;
}

.priority-head p {
  color: #496884;
  line-height: 1.45;
  margin: 0;
  max-width: 760px;
}

.priority-kpi-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.priority-kpi-card {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 12px 26px rgba(36, 75, 112, 0.08);
  display: grid;
  gap: 8px;
  min-height: 152px;
  padding: 18px;
  position: relative;
}

.priority-kpi-card span {
  color: #315779;
  font-size: 13px;
  font-weight: 900;
}

.priority-kpi-card strong {
  color: #082e73;
  font-size: 29px;
  line-height: 1;
}

.priority-kpi-card small {
  color: #5e7083;
  line-height: 1.35;
}

.priority-kpi-card i {
  position: absolute;
  right: 14px;
  top: 14px;
}

.priority-table-card {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 12px 26px rgba(36, 75, 112, 0.08);
  overflow: hidden;
}

.priority-table-card .specific-module-form-head {
  border-bottom: 1px solid rgba(203, 222, 239, 0.92);
  padding: 18px 22px;
}

.priority-table-card .specific-module-form-head strong {
  color: #082e73;
  display: block;
  font-size: 20px;
  margin-top: 4px;
}

.priority-split {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.72fr);
}

.priority-filter-row {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 999px;
  display: flex;
  gap: 6px;
  padding: 5px;
}

.priority-filter-row button {
  background: transparent;
  border: 0;
  border-radius: 999px;
  color: #315779;
  font-weight: 800;
  min-height: 36px;
  padding: 0 14px;
}

.priority-filter-row button.active {
  background: #136bea;
  color: #ffffff;
}

.loja-step-layout {
  display: grid;
  gap: 22px;
  grid-template-columns: 390px minmax(0, 1fr);
  padding: 24px 34px 34px;
}

.loja-stepper {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.loja-stepper li {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  display: grid;
  gap: 4px;
  grid-template-columns: 36px 1fr;
  padding: 14px;
}

.loja-stepper li.active {
  background: #eef7ff;
  border-color: #18bdd5;
}

.loja-stepper b {
  align-items: center;
  background: #136bea;
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.loja-stepper span {
  color: #082e73;
  font-weight: 900;
}

.loja-stepper small {
  color: #496884;
  grid-column: 2;
  line-height: 1.35;
}

.loja-step-form,
.loja-validation-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 12px 26px rgba(36, 75, 112, 0.08);
  padding: 20px;
}

.loja-choice-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 18px 0;
}

.loja-choice-grid article,
.loja-impact-list article {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  padding: 16px;
}

.loja-choice-grid article.active {
  border-color: #136bea;
  box-shadow: 0 10px 22px rgba(19, 107, 234, 0.14);
}

.loja-choice-grid strong,
.loja-validation-card strong,
.loja-impact-list strong {
  color: #082e73;
  display: block;
  font-size: 17px;
}

.loja-choice-grid p,
.loja-validation-card p,
.loja-impact-list p {
  color: #496884;
  line-height: 1.45;
  margin: 7px 0 0;
}

.loja-edit-grid {
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(0, 1fr) 360px;
  padding: 24px 34px 34px;
}

.loja-edit-main {
  display: grid;
  gap: 16px;
}

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

.loja-validation-card ul {
  color: #496884;
  line-height: 1.5;
  margin: 12px 0 0;
  padding-left: 18px;
}

.loja-category-form-wrap {
  grid-template-columns: 1fr;
  padding: 0;
}

@media (max-width: 1100px) {
  .priority-kpi-grid,
  .loja-choice-grid,
  .loja-impact-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .priority-split,
  .loja-step-layout,
  .loja-edit-grid {
    grid-template-columns: 1fr;
  }

  .product-catalog-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-catalog-tools {
    grid-template-columns: 1fr;
  }

  .category-layout {
    grid-template-columns: 1fr;
  }

  .supplier-api-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .supplier-capability-grid,
  .supplier-discovery-grid,
  .operation-permission-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .logistics-control-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .order-control-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .finance-control-grid,
  .finance-pricing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .finance-rule-list article {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .sac-control-grid,
  .sac-template-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .integration-control-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .security-approval-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .marketing-control-grid,
  .marketing-funnel,
  .marketing-seasonal-grid,
  .marketing-approval-flow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .supplier-link-overview {
    grid-template-columns: 1fr;
  }

  .product-dependency-strip {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .priority-head {
    display: grid;
  }

  .priority-kpi-grid,
  .loja-choice-grid,
  .loja-impact-list {
    grid-template-columns: 1fr;
  }

  .product-catalog-summary {
    grid-template-columns: 1fr;
  }

  .product-status-filter {
    align-items: stretch;
    flex-direction: column;
  }

  .supplier-api-grid {
    grid-template-columns: 1fr;
  }

  .supplier-capability-grid,
  .supplier-discovery-grid,
  .operation-permission-grid {
    grid-template-columns: 1fr;
  }

  .logistics-control-grid {
    grid-template-columns: 1fr;
  }

  .order-control-grid {
    grid-template-columns: 1fr;
  }

  .finance-control-grid,
  .finance-pricing-grid {
    grid-template-columns: 1fr;
  }

  .sac-control-grid,
  .sac-template-grid {
    grid-template-columns: 1fr;
  }

  .integration-control-grid {
    grid-template-columns: 1fr;
  }

  .security-approval-grid {
    grid-template-columns: 1fr;
  }

  .marketing-control-grid,
  .marketing-funnel,
  .marketing-seasonal-grid,
  .marketing-approval-flow,
  .module-tab-context {
    grid-template-columns: 1fr;
  }
}

.analytics-filter {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-bottom: 18px;
  padding: 12px;
}

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

.filter-pills button,
.report-list button,
.icon-button,
.view-toggle {
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--brand-dark);
  font-weight: 700;
}

.filter-pills button {
  background: #ffffff;
  min-height: 36px;
  padding: 0 12px;
}

.filter-pills button:hover,
.api-actions button:hover,
.view-toggle:hover {
  background: #e5f8fb;
  border-color: var(--accent);
}

.filter-pills button.active,
.icon-button.active,
.view-toggle.active {
  background: var(--brand-secondary);
  border-color: var(--brand-secondary);
  color: #ffffff;
}

.period-note {
  color: var(--muted);
  font-size: 13px;
  white-space: nowrap;
}

.analytics-metrics .metric {
  border-top: 4px solid var(--accent);
}

.analytics-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  margin-bottom: 18px;
}

.mini-actions {
  display: flex;
  gap: 8px;
}

.icon-button {
  align-items: center;
  background: #ffffff;
  display: inline-flex;
  height: 34px;
  justify-content: center;
  width: 42px;
}

.view-toggle {
  align-items: center;
  background: #ffffff;
  display: inline-flex;
  font-size: 12px;
  min-height: 34px;
  padding: 0 10px;
}

.chart-card {
  display: grid;
  gap: 16px;
  grid-template-columns: 70px 1fr;
  min-height: 320px;
  padding: 18px;
}

.chart-axis {
  color: var(--muted);
  display: flex;
  flex-direction: column;
  font-size: 12px;
  justify-content: space-between;
}

.chart-bars {
  align-items: end;
  background:
    linear-gradient(to bottom, transparent 24%, var(--surface-muted) 25%, transparent 26%),
    linear-gradient(to bottom, transparent 49%, var(--surface-muted) 50%, transparent 51%),
    linear-gradient(to bottom, transparent 74%, var(--surface-muted) 75%, transparent 76%);
  border-bottom: 1px solid var(--border);
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(7, minmax(18px, 1fr));
  min-height: 260px;
}

.chart-bars i {
  background: linear-gradient(180deg, var(--accent), var(--brand-secondary));
  border-radius: 6px 6px 0 0;
  display: block;
  min-height: 10px;
}

.alert-card {
  border-left: 4px solid var(--orange);
}

.analytics-lower {
  align-items: start;
}

.command-panel,
.analytics-decision-panel,
.analytics-action-table {
  margin-top: 18px;
}

.command-grid,
.analytics-decision-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.command-grid article,
.analytics-decision-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.command-grid span,
.analytics-decision-grid span {
  align-items: center;
  background: #e5f8fb;
  border: 1px solid #b8ecf4;
  border-radius: 999px;
  color: #00729a;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  min-height: 28px;
  padding: 0 12px;
}

.command-grid strong,
.analytics-decision-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  margin-top: 14px;
}

.command-grid p,
.analytics-decision-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.command-grid small {
  color: #2f5575;
  display: block;
  font-size: 12px;
  font-weight: 800;
  margin-top: 12px;
}

.integration-lifecycle-panel,
.credential-policy-panel {
  margin-top: 18px;
}

.integration-lifecycle-grid,
.credential-policy-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 22px;
}

.credential-policy-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.integration-lifecycle-grid article,
.credential-policy-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.integration-lifecycle-grid b {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 12px;
  color: #ffffff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  height: 34px;
  justify-content: center;
  margin-bottom: 12px;
  width: 34px;
}

.integration-lifecycle-grid strong,
.credential-policy-grid strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  line-height: 1.3;
}

.integration-lifecycle-grid span,
.credential-policy-grid p {
  color: #496884;
  display: block;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.credential-policy-grid span {
  align-items: center;
  background: #e5f8fb;
  border: 1px solid #b8ecf4;
  border-radius: 999px;
  color: #00729a;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 14px;
  min-height: 28px;
  padding: 0 12px;
}

.appearance-governance-panel,
.component-registry-panel,
.seasonal-calendar-panel,
.template-builder-panel {
  margin-top: 18px;
}

.appearance-governance-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.appearance-governance-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.appearance-governance-grid span {
  align-items: center;
  background: #e5f8fb;
  border: 1px solid #b8ecf4;
  border-radius: 999px;
  color: #00729a;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  min-height: 28px;
  padding: 0 12px;
}

.appearance-governance-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  margin-top: 14px;
}

.appearance-governance-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.seasonal-control-strip {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 18px 18px 0;
}

.seasonal-control-strip article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  padding: 16px;
}

.seasonal-control-strip strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  line-height: 1.3;
  margin-top: 12px;
}

.seasonal-control-strip small {
  color: #496884;
  display: block;
  font-size: 13px;
  line-height: 1.45;
  margin-top: 8px;
}

.seasonal-table {
  margin-top: 18px;
}

.seasonal-table tbody tr {
  cursor: pointer;
}

.seasonal-table tbody tr.selected {
  background: linear-gradient(90deg, rgba(225, 247, 255, 0.92), rgba(255, 255, 255, 0.96));
  box-shadow: inset 4px 0 0 var(--brand-secondary);
}

.seasonal-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 16px 18px 18px;
}

.seasonal-chip-row span {
  background: #e5f8fb;
  border: 1px solid #b8ecf4;
  border-radius: 999px;
  color: #075985;
  font-size: 12px;
  font-weight: 900;
  padding: 8px 12px;
}

.appearance-tabs {
  border-bottom: 1px solid var(--border);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px 16px 0;
}

.appearance-tabs button {
  background: transparent;
  border: 0;
  border-bottom: 3px solid transparent;
  color: #315774;
  font-weight: 900;
  min-height: 42px;
  padding: 0 14px;
}

.appearance-tabs button.active {
  border-bottom-color: var(--brand-secondary);
  color: #006fdc;
}

.template-builder-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: 220px minmax(0, 1fr) 320px;
  padding: 18px;
}

.builder-block-library,
.builder-inspector,
.builder-canvas {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  padding: 16px;
}

.builder-block-library {
  display: grid;
  gap: 10px;
}

.builder-block-library strong,
.builder-inspector strong {
  color: #082e73;
  display: block;
  font-size: 15px;
  margin-bottom: 4px;
}

.builder-block-library button,
.builder-section button {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 10px;
  color: #082e73;
  font-weight: 800;
  min-height: 38px;
  padding: 0 12px;
  text-align: left;
}

.builder-block-library button {
  cursor: pointer;
}

.builder-block-library button.active,
.builder-block-library button:hover {
  background: #eaf7ff;
  border-color: rgba(29, 143, 229, 0.55);
  color: #006fdc;
}

.builder-canvas {
  display: grid;
  gap: 12px;
}

.builder-page-bar {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 10px;
  color: #082e73;
  display: flex;
  justify-content: space-between;
  padding: 12px 14px;
}

.builder-page-bar span,
.builder-page-bar small {
  font-weight: 900;
}

.builder-page-bar small {
  color: #00729a;
}

.builder-section {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  display: grid;
  gap: 12px;
  grid-template-columns: 42px 1fr auto;
  padding: 14px;
}

.builder-section:not(.locked) {
  cursor: pointer;
}

.builder-section.selected {
  border-color: var(--brand-secondary);
  box-shadow: 0 14px 28px rgba(0, 111, 220, 0.12);
}

.builder-section.locked {
  background: #f8fbff;
}

.builder-section > span {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 12px;
  color: #ffffff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  height: 36px;
  justify-content: center;
}

.builder-section strong {
  color: #082e73;
  display: block;
  font-size: 15px;
}

.builder-section small {
  color: #496884;
  display: block;
  font-size: 12px;
  margin-top: 4px;
}

.builder-inspector {
  display: grid;
  gap: 12px;
}

.builder-inspector label {
  color: #496884;
  display: grid;
  font-size: 12px;
  font-weight: 800;
  gap: 6px;
}

.builder-inspector input,
.builder-inspector textarea {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 10px;
  color: #0b1f33;
  min-height: 38px;
  padding: 10px 12px;
}

.builder-inspector textarea {
  min-height: 112px;
  resize: vertical;
}

.builder-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}

.report-list {
  display: grid;
  gap: 10px;
  padding: 14px;
}

.report-list button {
  align-items: center;
  background: #ffffff;
  display: flex;
  gap: 10px;
  min-height: 42px;
  padding: 0 12px;
  text-align: left;
}

.report-list span {
  align-items: center;
  background: #e5f8fb;
  border-radius: 6px;
  color: var(--brand-dark);
  display: inline-flex;
  font-size: 11px;
  height: 24px;
  justify-content: center;
  width: 28px;
}

.order-flow-panel {
  margin-top: 18px;
}

.order-control-panel,
.order-action-panel {
  margin-top: 18px;
}

.order-control-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 18px;
}

.order-control-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 16px;
}

.order-control-grid span {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 10px;
  color: #ffffff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  height: 32px;
  justify-content: center;
  margin-bottom: 12px;
  width: 32px;
}

.order-control-grid strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  line-height: 1.3;
}

.order-control-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.operation-permission-panel,
.logistics-cost-policy-panel {
  margin-top: 18px;
}

.operation-permission-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 18px;
}

.operation-permission-grid article {
  background: linear-gradient(180deg, #ffffff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  min-height: 178px;
  padding: 16px;
}

.operation-permission-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.operation-permission-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.25;
}

.operation-permission-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 9px 0 0;
}

.operation-permission-grid small {
  color: #173b63;
  display: block;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  margin-top: 12px;
}

.order-flow {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  padding: 16px;
}

.flow-step {
  background: var(--surface-muted);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  min-height: 96px;
  padding: 12px;
}

.flow-step b {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 50%;
  color: var(--brand-dark);
  display: inline-flex;
  height: 30px;
  justify-content: center;
  margin-bottom: 12px;
  width: 30px;
}

.flow-step span {
  color: var(--text);
  display: block;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
}

.flow-step.done {
  background: #e5f8fb;
  border-color: var(--accent);
}

.flow-step.active {
  background: #fff0e4;
  border-color: var(--orange);
}

.product-editor {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) 360px;
}

.editor-tabs {
  border-bottom: 1px solid var(--border);
  display: flex;
  gap: 4px;
  overflow-x: auto;
  padding: 10px 12px 0;
}

.editor-tabs button {
  background: transparent;
  border: 0;
  border-bottom: 3px solid transparent;
  color: var(--muted);
  font-weight: 700;
  padding: 10px 12px;
  white-space: nowrap;
}

.editor-tabs button.active {
  border-bottom-color: var(--accent);
  color: var(--brand-dark);
}

.product-dependency-strip {
  background: linear-gradient(90deg, #f8fbff, #eef7ff);
  border-bottom: 1px solid rgba(203, 222, 239, 0.92);
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 14px 16px;
}

.product-dependency-strip article {
  align-items: center;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(203, 222, 239, 0.88);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  display: grid;
  gap: 4px 12px;
  grid-template-columns: 34px 1fr;
  padding: 12px;
}

.product-dependency-strip span {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 10px;
  color: #ffffff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.product-dependency-strip strong {
  color: #082e73;
  font-size: 14px;
}

.product-dependency-strip small {
  color: #496884;
  font-size: 12px;
  grid-column: 2;
  line-height: 1.35;
}

.compact-tabs {
  padding-top: 8px;
}

.contact-form-block {
  border-top: 1px solid var(--border);
}

.contact-form-block > strong {
  display: block;
  font-size: 14px;
  padding: 14px 16px 0;
}

.form-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 16px;
}

.form-grid.compact {
  grid-template-columns: 1fr;
}

.form-grid label {
  color: var(--muted);
  display: grid;
  font-size: 13px;
  font-weight: 700;
  gap: 6px;
}

.form-grid .wide {
  grid-column: 1 / -1;
}

.form-grid input,
.form-grid select,
.form-grid textarea {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--text);
  min-height: 40px;
  padding: 9px 10px;
  width: 100%;
}

.form-grid input:hover,
.form-grid select:hover,
.form-grid textarea:hover {
  border-color: #9fc4dc;
}

.form-grid input:focus,
.form-grid select:focus,
.form-grid textarea:focus {
  border-color: var(--accent);
}

.form-grid textarea {
  min-height: 88px;
  resize: vertical;
}

.editor-side {
  display: grid;
  gap: 18px;
}

.product-panel {
  display: none;
}

.product-panel.active {
  display: block;
}

.product-editor-panel {
  display: none;
}

.product-editor-panel.active {
  display: block;
}

.product-topper {
  background:
    linear-gradient(90deg, rgba(236, 248, 253, 0.94), rgba(255, 255, 255, 0.78)),
    var(--surface-muted);
}

.compact-toolbar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.table-action {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--brand-dark);
  font-size: 13px;
  font-weight: 800;
  padding: 8px 10px;
}

.table-action:hover {
  background: #e5f8fb;
  border-color: var(--accent);
}

.toggle-field {
  align-items: center;
  background: #eff6fb;
  border: 1px solid var(--border);
  border-radius: 999px;
  color: var(--brand-dark);
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  gap: 8px;
  min-height: 40px;
  padding: 5px 12px 5px 6px;
  width: max-content;
}

.toggle-field span {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 999px;
  display: inline-flex;
  height: 28px;
  position: relative;
  width: 50px;
}

.toggle-field span::after {
  background: var(--muted);
  border-radius: 50%;
  content: "";
  height: 20px;
  left: 4px;
  position: absolute;
  top: 3px;
  transition: left 150ms ease, background 150ms ease;
  width: 20px;
}

.toggle-field.is-on {
  background: #e5f8fb;
  border-color: var(--accent);
}

.toggle-field.is-on span::after {
  background: var(--accent);
  left: 24px;
}

.preview-link {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--brand-dark);
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  min-height: 40px;
  padding: 9px 10px;
  text-decoration: none;
  width: max-content;
}

.preview-link:hover {
  background: #e5f8fb;
  border-color: var(--accent);
}

.product-form select,
.attribute-grid select {
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--brand-secondary) 50%),
    linear-gradient(135deg, var(--brand-secondary) 50%, transparent 50%);
  background-position:
    calc(100% - 16px) 17px,
    calc(100% - 11px) 17px;
  background-repeat: no-repeat;
  background-size: 5px 5px, 5px 5px;
}

.product-subsection {
  border-top: 1px solid var(--border);
  padding: 18px 16px;
}

.section-heading {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  margin-bottom: 10px;
}

.section-heading h3 {
  font-size: 17px;
  margin: 0;
}

.inline-note {
  color: var(--muted);
  font-size: 13px;
  margin: 0 0 14px;
}

.blocked-note {
  background: #fff7ed;
  border: 1px solid #f8c79e;
  border-radius: var(--radius);
  color: #8b4513;
  font-size: 13px;
  font-weight: 700;
  margin: 0 0 14px;
  padding: 10px 12px;
}

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

.attribute-grid label {
  color: var(--muted);
  display: grid;
  font-size: 13px;
  font-weight: 700;
  gap: 6px;
}

.attribute-grid select {
  background-color: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--text);
  min-height: 40px;
  padding: 9px 28px 9px 10px;
  width: 100%;
}

.child-table td,
.mini-table td {
  vertical-align: top;
}

.mini-table {
  border-collapse: collapse;
  font-size: 12px;
  margin: 0 16px 16px;
  width: calc(100% - 32px);
}

.mini-table th,
.mini-table td {
  border-top: 1px solid var(--border);
  padding: 8px 6px;
  text-align: left;
}

.mini-table th {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.roadmap-card .check-list label {
  align-items: flex-start;
}

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

.editor-blueprint article {
  background: #f8fbfd;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: grid;
  gap: 8px;
  min-height: 120px;
  padding: 14px;
}

.editor-blueprint strong {
  color: var(--brand-dark);
  font-size: 15px;
}

.editor-blueprint span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.side-panel {
  height: max-content;
}

.product-link-panel .panel-header {
  padding-bottom: 16px;
}

.product-link-list {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.product-link-list article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  padding: 16px;
}

.product-link-list strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  margin: 10px 0 6px;
}

.product-link-list p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 0 0 12px;
}

.supplier-link-overview {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 18px;
}

.supplier-link-overview article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.supplier-link-overview span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 9px;
  text-transform: uppercase;
}

.supplier-link-overview strong {
  color: #082e73;
  display: block;
  font-size: 18px;
  line-height: 1.25;
}

.supplier-link-overview p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.supplier-product-form {
  margin-bottom: 18px;
}

.supplier-api-map {
  margin-top: 18px;
}

.supplier-capability-panel,
.supplier-discovery-panel,
.supplier-product-map {
  margin-top: 18px;
}

.supplier-api-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.supplier-capability-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.supplier-discovery-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.supplier-api-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.supplier-capability-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.supplier-discovery-grid article {
  background: linear-gradient(180deg, #ffffff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  min-height: 176px;
  padding: 18px;
}

.supplier-api-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.supplier-discovery-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.supplier-api-grid strong {
  color: #082e73;
  display: block;
  font-size: 16px;
  line-height: 1.3;
}

.supplier-discovery-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.25;
}

.supplier-api-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.supplier-discovery-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 9px 0 0;
}

.supplier-discovery-grid small {
  color: #173b63;
  display: block;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  margin-top: 12px;
}

.supplier-capability-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  margin-top: 12px;
}

.supplier-capability-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.check-list {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.check-list label {
  align-items: center;
  color: var(--text);
  display: flex;
  font-size: 14px;
  gap: 9px;
}

.status {
  border-radius: 999px;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  padding: 5px 9px;
}

.status.production {
  background: #d7eef7;
  color: #245a80;
}

.status.design {
  background: #fff0e4;
  color: #9a4a15;
}

.status.pickup {
  background: #e5f8fb;
  color: #236b78;
}

.supplier-logo,
.supplier-badge {
  align-items: center;
  border-radius: var(--radius);
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 7px;
  line-height: 1;
  min-height: 30px;
  padding: 5px 8px;
  white-space: nowrap;
}

.supplier-logo {
  background: #ffffff;
  border: 1px solid var(--border);
  justify-content: center;
  min-height: 40px;
  min-width: 78px;
  padding: 5px;
}

.supplier-logo img,
.supplier-logo object {
  display: block;
  height: 34px;
  object-fit: contain;
  width: 70px;
}

.supplier-logo object {
  pointer-events: none;
}

.placeholder-logo {
  color: var(--brand-secondary);
  font-size: 24px;
  font-weight: 900;
}

.supplier-badge.zap {
  background: #eef7fb;
  border: 1px solid #c8e6f2;
  color: #1f638b;
}

.sale-source {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: inline-flex;
  gap: 6px;
  min-height: 38px;
  padding: 5px 7px;
  white-space: nowrap;
}

.sale-source svg {
  border-radius: 6px;
  display: block;
  flex: 0 0 auto;
}

.sale-source img {
  display: block;
  flex: 0 0 auto;
  object-fit: contain;
}

.atomo-symbol {
  border-radius: 50%;
  height: 32px;
  width: 32px;
}

.channel-logo {
  height: 28px;
  width: 28px;
}

.sale-source.marketplace {
  min-width: 72px;
  justify-content: center;
}

.mercado-livre-icon {
  height: 38px;
  width: 58px;
}

.sr-only {
  height: 1px;
  margin: -1px;
  overflow: hidden;
  position: absolute;
  width: 1px;
  clip: rect(0, 0, 0, 0);
}

.logo-upload-box {
  align-items: center;
  border-top: 1px solid var(--border);
  display: flex;
  gap: 12px;
  padding: 16px;
}

.logo-upload-box strong {
  display: block;
  font-size: 14px;
  margin-bottom: 4px;
}

.logo-upload-box p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
  margin: 0;
}

.supplier-rules {
  margin-top: 18px;
}

.logistics-grid {
  margin-top: 18px;
}

.logistics-control-panel,
.logistics-queue-panel {
  margin-top: 18px;
}

.logistics-control-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.logistics-control-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.logistics-control-grid span {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 10px;
  color: #ffffff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  height: 34px;
  justify-content: center;
  margin-bottom: 12px;
  width: 34px;
}

.logistics-control-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
}

.logistics-control-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.finance-control-panel,
.finance-margin-panel,
.finance-rules-panel,
.finance-pricing-panel {
  margin-top: 18px;
}

.finance-control-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.finance-control-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.finance-control-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 9px;
  text-transform: uppercase;
}

.finance-control-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
}

.finance-control-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.finance-rule-list {
  display: grid;
  gap: 12px;
  padding: 18px;
}

.finance-rule-list article {
  align-items: center;
  background: linear-gradient(90deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  display: grid;
  gap: 8px 16px;
  grid-template-columns: 180px 1fr auto;
  padding: 14px 16px;
}

.finance-rule-list strong {
  color: #082e73;
}

.finance-rule-list span {
  color: #496884;
  font-size: 13px;
}

.finance-rule-list em {
  background: #e5f8fb;
  border-radius: 999px;
  color: #236b78;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  padding: 6px 10px;
  white-space: nowrap;
}

.finance-pricing-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 18px;
}

.finance-pricing-grid article {
  background: linear-gradient(180deg, #ffffff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  min-height: 178px;
  padding: 16px;
}

.finance-pricing-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.finance-pricing-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.25;
}

.finance-pricing-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 9px 0 0;
}

.finance-pricing-grid small {
  color: #173b63;
  display: block;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  margin-top: 12px;
}

.sac-control-panel,
.sac-template-panel {
  margin-top: 18px;
}

.sac-workspace {
  margin-top: 18px;
}

.sac-control-grid,
.sac-template-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.sac-control-grid article,
.sac-template-grid article,
.sac-message-card {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.sac-control-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 9px;
  text-transform: uppercase;
}

.sac-control-grid strong,
.sac-template-grid strong,
.sac-message-card strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
}

.sac-control-grid p,
.sac-message-card p {
  color: #496884;
  font-size: 13px;
  line-height: 1.5;
  margin: 8px 0 0;
}

.sac-message-card {
  margin: 16px;
}

.sac-message-card .status {
  margin-bottom: 12px;
}

.sac-message-actions {
  display: flex;
  gap: 10px;
  margin-top: 16px;
}

.sac-template-grid span {
  color: #496884;
  display: block;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 12px;
}

.sac-template-grid em {
  background: #e5f8fb;
  border-radius: 999px;
  color: #236b78;
  display: inline-flex;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  padding: 6px 10px;
}

.marketing-control-panel,
.marketing-funnel-panel,
.marketing-campaign-panel,
.marketing-seasonal-panel {
  margin-top: 18px;
}

.marketing-control-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.marketing-control-grid article,
.marketing-funnel article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.marketing-control-grid span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 9px;
  text-transform: uppercase;
}

.marketing-control-grid strong,
.marketing-funnel strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
}

.marketing-control-grid p,
.marketing-funnel span {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.marketing-funnel {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 18px;
}

.marketing-funnel b {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 10px;
  color: #ffffff;
  display: inline-flex;
  font-size: 13px;
  height: 32px;
  justify-content: center;
  margin-bottom: 12px;
  width: 32px;
}

.marketing-seasonal-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 22px;
}

.marketing-seasonal-grid article {
  background:
    radial-gradient(circle at 92% 12%, rgba(16, 132, 230, 0.14), transparent 26%),
    linear-gradient(180deg, #ffffff, #f1f8ff);
  border: 1px solid rgba(190, 215, 238, 0.92);
  border-radius: 16px;
  box-shadow: 0 14px 28px rgba(36, 75, 112, 0.08);
  padding: 20px;
}

.marketing-seasonal-grid article > span {
  color: #136bea;
  display: block;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.marketing-seasonal-grid strong {
  color: #082e73;
  display: block;
  font-size: 18px;
  line-height: 1.25;
}

.marketing-seasonal-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.5;
  margin: 10px 0 16px;
}

.seasonal-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.seasonal-card-actions button {
  background: #ffffff;
  border: 1px solid rgba(184, 212, 237, 0.95);
  border-radius: 10px;
  color: #082e73;
  cursor: default;
  font-size: 12px;
  font-weight: 800;
  padding: 9px 12px;
}

.marketing-approval-flow {
  border-top: 1px solid rgba(198, 219, 238, 0.86);
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 18px 22px 22px;
}

.marketing-approval-flow div {
  align-items: flex-start;
  background: rgba(239, 248, 255, 0.78);
  border: 1px solid rgba(198, 222, 241, 0.88);
  border-radius: 14px;
  display: flex;
  gap: 12px;
  padding: 14px;
}

.marketing-approval-flow b {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.marketing-approval-flow span {
  color: #385b78;
  font-size: 13px;
  line-height: 1.45;
}

.integration-panel {
  margin-top: 18px;
}

.integration-control-panel,
.integration-foundation-panel,
.integration-permission-panel,
.integration-log-panel {
  margin-top: 18px;
}

.integration-foundation-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 16px;
}

.integration-foundation-grid article {
  background: linear-gradient(180deg, #fbfdff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  display: grid;
  gap: 7px;
  padding: 16px;
}

.integration-foundation-grid span,
.integration-foundation-grid small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.35;
}

.integration-foundation-grid strong {
  color: var(--brand-dark);
  font-size: 18px;
  line-height: 1.2;
}

.public-site-panel {
  margin-bottom: 18px;
}

.public-site-grid,
.public-site-workbench {
  display: grid;
  gap: 14px;
  padding: 16px;
}

.public-site-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.public-site-grid article,
.public-site-list article {
  background: linear-gradient(180deg, #fbfdff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  padding: 16px;
}

.public-site-grid span,
.public-site-list span,
.public-site-grid small,
.public-site-list small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.35;
}

.public-site-grid strong,
.public-site-list strong {
  color: var(--brand-dark);
  display: block;
  font-size: 17px;
  line-height: 1.2;
  margin: 6px 0;
}

.public-site-workbench {
  border-top: 1px solid rgba(203, 222, 239, 0.8);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 18px;
}

.public-site-workbench h3 {
  color: var(--brand-dark);
  font-size: 16px;
  margin: 0 0 12px;
}

.public-site-list {
  display: grid;
  gap: 10px;
}

.integration-control-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.integration-control-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.integration-control-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  margin-top: 12px;
}

.integration-control-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.infrastructure-panel {
  margin-bottom: 18px;
}

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

.diagnostic-strip {
  align-items: center;
  background: #fff8f1;
  border-top: 1px solid #ffd8b4;
  color: #7a3d12;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 13px 16px;
}

.diagnostic-strip span {
  color: #7a3d12;
  font-size: 13px;
}

.api-board {
  margin-bottom: 18px;
}

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

.api-card {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: grid;
  gap: 12px;
  padding: 14px;
}

.api-card.is-enabled {
  background: linear-gradient(180deg, #ffffff, #effaff);
  border-color: rgba(29, 143, 229, 0.5);
  box-shadow: 0 14px 28px rgba(0, 111, 220, 0.08);
}

.api-card-head {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: auto 1fr auto;
}

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

.api-card-head small {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.api-card p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
}

.api-status-line {
  align-items: center;
  display: flex;
  gap: 8px;
}

.api-status-line small {
  color: var(--muted);
  font-size: 12px;
}

.switch-control {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  gap: 7px;
}

.switch-control input {
  height: 1px;
  opacity: 0;
  position: absolute;
  width: 1px;
}

.switch-control span {
  background: #d7e3ed;
  border: 1px solid var(--border);
  border-radius: 999px;
  display: inline-flex;
  height: 24px;
  padding: 2px;
  position: relative;
  width: 44px;
}

.switch-control span::before {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(7, 23, 39, 0.18);
  content: "";
  height: 18px;
  left: 2px;
  position: absolute;
  top: 2px;
  transition: transform 150ms ease;
  width: 18px;
}

.switch-control input:checked + span {
  background: var(--accent);
  border-color: var(--accent);
}

.switch-control input:checked + span::before {
  transform: translateX(20px);
}

.switch-control b {
  color: var(--muted);
  font-size: 11px;
  min-width: 24px;
}

.switch-control.on b {
  color: var(--brand-dark);
}

.control-rule-panel {
  margin-bottom: 18px;
}

.control-mode-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 14px;
}

.control-mode-card {
  background: #fbfdff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  cursor: pointer;
  display: grid;
  gap: 10px;
  padding: 13px;
}

.control-mode-card.selected {
  background: linear-gradient(180deg, #ffffff, #edf8ff);
  border-color: rgba(29, 143, 229, 0.62);
  box-shadow: 0 14px 28px rgba(0, 111, 220, 0.12);
}

.control-mode-card p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
}

.mode-badge,
.role-badge {
  border-radius: 999px;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  padding: 5px 9px;
  width: fit-content;
}

.role-badge {
  background: #eef6fb;
  border: 1px solid var(--border);
  color: var(--brand-dark);
}

.mode-off {
  background: #edf2f7;
  color: #53667a;
}

.mode-manual {
  background: #eef6fb;
  color: var(--brand-dark);
}

.mode-assisted {
  background: #e5f8fb;
  color: #236b78;
}

.mode-auto {
  background: #fff0e4;
  color: #9a4a15;
}

.critical-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px;
}

.critical-list span {
  background: #fff7ed;
  border: 1px solid #ffd3b2;
  border-radius: 999px;
  color: #8a3d11;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 9px;
}

.guard-overview-panel,
.guard-detail-grid,
.permission-matrix-panel,
.api-security-panel,
.agent-programming-panel,
.security-permission-panel,
.security-approval-panel {
  margin-bottom: 18px;
}

.permission-matrix-summary {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 14px;
}

.permission-matrix-summary article {
  background: linear-gradient(180deg, #fbfdff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  display: grid;
  gap: 6px;
  padding: 16px;
}

.permission-matrix-summary span,
.permission-matrix-summary small,
.permission-matrix-panel .order-table small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.35;
}

.permission-matrix-summary strong {
  color: var(--brand-dark);
  font-size: 28px;
  line-height: 1;
}

.permission-matrix-panel .order-table td {
  vertical-align: top;
}

.permission-matrix-panel .order-table strong {
  color: var(--brand-dark);
}

.security-approval-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 18px;
}

.security-approval-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.security-approval-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  margin-top: 12px;
}

.security-approval-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0;
}

.security-approval-grid small {
  color: #8a3d11;
  display: block;
  font-size: 12px;
  font-weight: 800;
}

.guard-metric-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 14px;
}

.guard-metric {
  background: #fbfdff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: grid;
  gap: 6px;
  padding: 14px;
}

.guard-metric span,
.guard-metric small {
  color: var(--muted);
  font-size: 13px;
}

.guard-metric strong {
  font-size: 24px;
}

.scan-list {
  display: grid;
  gap: 10px;
  padding: 14px;
}

.scan-item,
.permission-row {
  align-items: center;
  background: #fbfdff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 11px 12px;
}

.scan-item span,
.permission-row span,
.permission-row em {
  color: var(--muted);
  font-size: 13px;
  font-style: normal;
}

.scan-item strong {
  color: var(--brand-dark);
  font-size: 12px;
}

.panel-actions {
  border-top: 1px solid var(--border);
  display: flex;
  gap: 10px;
  padding: 14px;
}

.agent-programming-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(260px, 0.8fr) minmax(0, 1.1fr) minmax(260px, 0.9fr);
  padding: 14px;
}

.agent-config-card,
.permission-mini-table {
  display: grid;
  gap: 10px;
}

.agent-config-card label,
.agent-instructions {
  color: var(--brand-dark);
  display: grid;
  font-size: 13px;
  font-weight: 700;
  gap: 7px;
}

.agent-config-card input,
.agent-config-card select,
.agent-instructions textarea {
  background: #fbfdff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  min-height: 42px;
  padding: 0 12px;
}

.agent-instructions textarea {
  line-height: 1.45;
  min-height: 168px;
  padding: 12px;
  resize: vertical;
}

.api-logo {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: inline-flex;
  font-weight: 900;
  height: 42px;
  justify-content: center;
  overflow: hidden;
  width: 52px;
}

.api-logo svg {
  height: 34px;
  width: 48px;
}

.api-logo img {
  height: 34px;
  object-fit: contain;
  width: 48px;
}

.shopee-logo {
  background: #ee4d2d;
  color: #ffffff;
  font-size: 26px;
}

.melhor-envio-logo {
  background: #dff5fb;
  color: #236b78;
  font-size: 15px;
}

.amazon-logo {
  background: #111827;
  color: #ff9900;
  font-size: 28px;
}

.mercado-pago-logo {
  background: #d7eef7;
  color: #245a80;
  font-size: 15px;
}

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

.api-actions button {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--brand-dark);
  font-size: 12px;
  font-weight: 800;
  min-height: 32px;
  padding: 0 10px;
}

.integration-lower {
  margin-top: 18px;
}

.operations-panel {
  margin-top: 18px;
}

.agent-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 16px;
}

.agent-card {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 14px;
}

.agent-card.is-off {
  opacity: 0.72;
}

.agent-card-head {
  align-items: flex-start;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  margin-bottom: 8px;
}

.agent-card span {
  color: var(--brand-secondary);
  display: block;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.agent-card .mode-badge {
  flex: 0 0 auto;
  text-transform: none;
}

.agent-card strong {
  display: block;
  font-size: 20px;
  margin-bottom: 8px;
}

.agent-card p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
  margin: 0;
}

.agent-card small {
  border-top: 1px solid rgba(203, 222, 239, 0.78);
  color: #496884;
  display: block;
  font-size: 12px;
  line-height: 1.35;
  margin-top: 12px;
  padding-top: 10px;
}

.brand-editor {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1fr);
  padding: 16px;
}

.figma-panel {
  margin-top: 18px;
}

.visual-direction-panel {
  margin-top: 18px;
}

.ux-principles-panel {
  margin-top: 18px;
}

.visual-direction-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 16px;
}

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

.direction-rules {
  border-top: 1px solid var(--border);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px 16px;
}

.direction-rules span {
  background: #e5f8fb;
  border: 1px solid #c8e6f2;
  border-radius: 999px;
  color: #236b78;
  font-size: 12px;
  font-weight: 800;
  padding: 6px 10px;
}

.design-system-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 16px;
}

.brand-preview-card {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: grid;
  justify-items: center;
  min-height: 230px;
  padding: 18px;
  text-align: center;
}

.brand-preview-card img {
  display: block;
  max-width: 220px;
  width: 100%;
}

.brand-preview-card strong {
  color: var(--brand-dark);
  font-size: 22px;
}

.brand-preview-card span {
  color: var(--muted);
  font-size: 13px;
}

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

.swatch-grid span {
  align-items: end;
  background: var(--swatch);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: #071727;
  display: flex;
  font-size: 13px;
  font-weight: 800;
  min-height: 88px;
  padding: 10px;
}

.swatch-grid span:nth-child(1),
.swatch-grid span:nth-child(2),
.swatch-grid span:nth-child(4) {
  color: #ffffff;
}

.task-list {
  display: grid;
  gap: 10px;
  padding: 14px;
}

.task-card {
  padding: 13px;
}

.task-card strong {
  display: block;
  font-size: 14px;
  margin-bottom: 5px;
}

.task-card span {
  color: var(--muted);
  font-size: 13px;
}

.login-screen {
  align-items: center;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.12) 48%, rgba(255, 255, 255, 0.76) 68%, rgba(255, 255, 255, 0.9) 100%),
    url("./assets/fundo-tela-core.png") left center/cover no-repeat;
  display: grid;
  gap: 64px;
  grid-template-columns: minmax(420px, 1fr) minmax(440px, 520px);
  min-height: 100vh;
  padding: 34px clamp(36px, 10vw, 150px) 34px clamp(28px, 4vw, 72px);
}

.login-hero {
  min-height: 70vh;
}

.login-hero h1 {
  font-size: 48px;
  line-height: 1.05;
  margin: 8px 0 12px;
}

.login-hero p {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.5;
  margin: 0;
}

.login-atom {
  align-items: center;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
}

.login-atom img {
  display: block;
  height: auto;
  max-width: 100%;
}

.login-card {
  background: rgba(255, 255, 255, 0.86);
  border: 1px solid var(--border);
  border-radius: 34px;
  box-shadow: 0 26px 70px rgba(36, 75, 112, 0.12);
  display: grid;
  gap: 18px;
  justify-items: stretch;
  padding: 32px 44px 24px;
}

.login-logo {
  display: block;
  height: auto;
  justify-self: center;
  max-width: 178px;
}

.login-card h2 {
  color: #10176b;
  font-size: 28px;
  line-height: 1.18;
  margin: 2px 0 8px;
  text-align: center;
}

.login-card p {
  color: #2f6db8;
  font-size: 18px;
  margin: 0;
  text-align: center;
}

.login-card .form-alert {
  background: #fff2f2;
  border: 1px solid #ffc6c6;
  border-radius: 12px;
  color: #9f1239;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.4;
  padding: 12px 14px;
  text-align: left;
}

.login-form {
  display: grid;
  gap: 13px;
}

.login-form label {
  color: #10176b;
  display: grid;
  font-size: 14px;
  font-weight: 700;
  gap: 7px;
}

.login-form input {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #bed6f1;
  border-radius: 8px;
  color: #10176b;
  font-size: 16px;
  min-height: 54px;
  padding: 0 18px;
}

.login-form input::placeholder {
  color: #3d7cca;
}

.login-options {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.checkbox-line {
  align-items: center;
  display: flex !important;
  gap: 8px !important;
  color: #10176b !important;
}

.checkbox-line input {
  min-height: auto;
}

.login-options a,
.login-note {
  color: #0d6ceb;
  font-size: 13px;
  font-weight: 700;
}

.login-primary,
.google-button {
  justify-content: center;
  min-height: 54px;
  width: 100%;
}

.login-primary {
  background: #096fdc;
  border-radius: 8px;
  font-size: 18px;
}

.google-button {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #bed6f1;
  border-radius: 8px;
  color: #10176b;
  font-size: 18px;
}

.google-button span {
  align-items: center;
  background: #ffffff;
  border-radius: 999px;
  color: #4285f4;
  display: inline-flex;
  font-weight: 800;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.login-separator,
.login-protected {
  align-items: center;
  color: #3b82af;
  display: grid;
  font-size: 14px;
  font-weight: 700;
  gap: 14px;
  grid-template-columns: 1fr auto 1fr;
  text-align: center;
}

.login-separator::before,
.login-separator::after,
.login-protected::before,
.login-protected::after {
  background: #d7e6f5;
  content: "";
  height: 1px;
}

.login-note {
  background: rgba(236, 242, 247, 0.72);
  border-radius: 8px;
  color: #10176b;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.45;
  padding: 16px 18px;
}

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

.module-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 18px;
}

.module-card span {
  color: var(--brand-secondary);
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.module-card strong {
  display: block;
  font-size: 20px;
  margin-bottom: 8px;
}

.module-card p {
  color: var(--muted);
  line-height: 1.45;
  margin: 0;
}

.wizard-layout {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1.1fr);
}

.steps {
  display: grid;
  gap: 10px;
  padding: 16px;
}

.step {
  align-items: center;
  background: var(--surface-muted);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: flex;
  gap: 12px;
  padding: 12px;
}

.step b {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 50%;
  color: var(--brand-dark);
  display: inline-flex;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.step.active {
  background: #e5f8fb;
  border-color: var(--accent);
}

.art-preview {
  align-items: center;
  background: linear-gradient(135deg, #dfeaf3, #ffffff);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: flex;
  justify-content: center;
  min-height: 360px;
  padding: 28px;
}

.card-mock {
  aspect-ratio: 91 / 51;
  background: #ffffff;
  border: 1px solid #b8cada;
  box-shadow: 0 24px 60px rgba(36, 75, 112, 0.18);
  display: grid;
  gap: 6px;
  max-width: 520px;
  padding: 28px;
  position: relative;
  width: 100%;
}

.card-band {
  background: linear-gradient(90deg, var(--brand), var(--accent));
  height: 10px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.card-mock strong {
  color: var(--brand-dark);
  font-size: 28px;
  margin-top: auto;
}

.card-mock span {
  color: var(--brand-secondary);
  font-weight: 700;
}

.card-mock small {
  color: var(--muted);
}

.wizard-control-panel,
.wizard-rules-panel,
.wizard-template-panel {
  margin-top: 18px;
}

.wizard-control-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.wizard-control-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.wizard-control-grid span {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  min-height: 28px;
  padding: 0 12px;
}

.wizard-control-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  margin-top: 14px;
}

.wizard-control-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.wizard-rule-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 18px;
}

.wizard-rule-grid article {
  background: #ffffff;
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.06);
  padding: 16px;
}

.wizard-rule-grid strong,
.wizard-device-list b,
.wizard-approval-list strong {
  color: #082e73;
  display: block;
  font-size: 15px;
  line-height: 1.3;
}

.wizard-rule-grid span,
.wizard-device-list span,
.wizard-approval-list small {
  color: #496884;
  display: block;
  font-size: 13px;
  line-height: 1.45;
  margin-top: 8px;
}

.wizard-operational-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  margin-top: 18px;
}

.wizard-device-list,
.wizard-approval-list {
  display: grid;
  gap: 12px;
  padding: 18px;
}

.wizard-device-list article,
.wizard-approval-list article {
  background: linear-gradient(90deg, #f8fbff, #ffffff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 15px;
}

.wizard-approval-list article {
  display: grid;
  gap: 8px;
}

.atomic-account-panel,
.atomic-client-table {
  margin-top: 18px;
}

.atomic-profile-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px;
}

.atomic-profile-grid article {
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.07);
  padding: 18px;
}

.atomic-profile-grid span {
  align-items: center;
  background: #e5f8fb;
  border: 1px solid #b8ecf4;
  border-radius: 999px;
  color: #00729a;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  min-height: 28px;
  padding: 0 12px;
}

.atomic-profile-grid strong {
  color: #082e73;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  margin-top: 14px;
}

.atomic-profile-grid p {
  color: #496884;
  font-size: 13px;
  line-height: 1.45;
  margin: 8px 0 0;
}

.atomic-operation-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  margin-top: 18px;
}

.atomic-timeline,
.atomic-permission-list {
  display: grid;
  gap: 12px;
  padding: 18px;
}

.atomic-timeline article,
.atomic-permission-list article {
  background: linear-gradient(90deg, #f8fbff, #ffffff);
  border: 1px solid rgba(203, 222, 239, 0.92);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(36, 75, 112, 0.05);
  padding: 15px;
}

.atomic-timeline article {
  display: grid;
  gap: 4px 12px;
  grid-template-columns: 70px 1fr;
}

.atomic-timeline b {
  align-items: center;
  background: linear-gradient(180deg, #1d8fe5, #0a6fdc);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
}

.atomic-timeline strong,
.atomic-permission-list strong {
  color: #082e73;
  display: block;
  font-size: 15px;
  line-height: 1.3;
}

.atomic-timeline span {
  color: #496884;
  font-size: 13px;
  grid-column: 2;
  line-height: 1.45;
}

.atomic-permission-list article {
  display: grid;
  gap: 8px;
}

.atomic-permission-list small {
  color: #496884;
  display: block;
  font-size: 13px;
  line-height: 1.45;
}

@media (max-width: 980px) {
  .shell,
  .metric-grid,
  .roadmap-health-grid,
  .roadmap-execution-grid,
  .implementation-plan-list,
  .content-grid,
  .module-grid,
  .login-screen,
  .login-hero,
  .wizard-layout,
  .analytics-grid,
  .order-flow,
  .brand-editor,
  .agent-grid,
  .api-grid,
  .control-mode-grid,
  .guard-metric-grid,
  .agent-programming-grid,
  .infrastructure-grid,
  .design-system-grid,
  .visual-direction-grid,
  .ux-principles-grid,
  .product-editor,
  .attribute-grid,
  .editor-blueprint,
  .form-grid,
  .wizard-control-grid,
  .wizard-rule-grid,
  .wizard-operational-grid,
  .atomic-profile-grid,
  .atomic-operation-grid,
  .command-grid,
  .analytics-decision-grid,
  .public-site-grid,
  .public-site-workbench,
  .integration-foundation-grid,
  .integration-lifecycle-grid,
  .credential-policy-grid,
  .appearance-governance-grid,
  .seasonal-control-strip,
  .template-builder-grid,
  .marketing-seasonal-grid,
  .marketing-approval-flow,
  .supplier-discovery-grid,
  .zap-contract-grid,
  .operation-permission-grid,
  .finance-pricing-grid,
  .module-functional-fields,
  .module-functional-grid,
  .module-functional-workflow,
  .specific-module-grid,
  .module-tab-context,
  .module-workbench-lanes,
  .module-workbench-evidence,
  .module-readiness-grid,
  .module-action-contract-grid,
  .permission-matrix-summary {
    grid-template-columns: 1fr;
  }

  .analytics-filter,
  .module-action-contracts-head,
  .module-functional-head,
  .specific-module-head,
  .module-readiness-head,
  .module-workbench-header,
  .topbar {
    align-items: stretch;
    flex-direction: column;
  }

  .period-note {
    white-space: normal;
  }
}

