/* ═══════════════════════════════════════════════════════════════════
   v45-base-redesign.css  ·  Solos™ · Aba BASE — Redesign Visual
   Regra cardinal: ZERO mudança em lógica de cálculo ou IDs de engine.
   Aplica tokens neumórficos + tipografia Jost sobre classes
   existentes. Camada purely visual.
   ═══════════════════════════════════════════════════════════════════ */

/* ── 0. Fonts ── */
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700;800&display=swap');

/* ── 1. Design tokens neumórficos ── */
:root {
  --rd-bg:        #e4e6ea;
  --rd-surface:   #eaebef;
  --rd-card:      #eeeff3;
  --rd-ink:       #0d1117;
  --rd-ink-6:     rgba(13,17,23,.06);
  --rd-ink-10:    rgba(13,17,23,.10);
  --rd-ink-20:    rgba(13,17,23,.20);
  --rd-ink-40:    rgba(13,17,23,.40);
  --rd-ink-60:    rgba(13,17,23,.60);
  --rd-w90:       rgba(255,255,255,.90);
  --rd-w70:       rgba(255,255,255,.70);
  --rd-w50:       rgba(255,255,255,.50);
  --rd-w22:       rgba(255,255,255,.22);
  --rd-green:     #00c27a;
  --rd-green-dk:  #009e63;
  --rd-green-bg:  rgba(0,194,122,.08);
  --rd-green-br:  rgba(0,194,122,.22);
  --rd-amber:     #d97706;
  --rd-amber-bg:  rgba(217,119,6,.07);
  --rd-blue:      #0ea5e9;
  --rd-blue-bg:   rgba(14,165,233,.07);
  --rd-raise:
    6px 6px 16px rgba(13,17,23,.13),
    -4px -4px 12px rgba(255,255,255,.80),
    inset 0 1px 0 rgba(255,255,255,.88),
    inset 0 -1px 0 rgba(13,17,23,.03);
  --rd-raise-sm:
    4px 4px 10px rgba(13,17,23,.11),
    -3px -3px 8px rgba(255,255,255,.78),
    inset 0 1px 0 rgba(255,255,255,.85);
  --rd-raise-lg:
    10px 10px 28px rgba(13,17,23,.15),
    -6px -6px 18px rgba(255,255,255,.84),
    inset 0 1px 0 rgba(255,255,255,.90);
  --rd-inset:
    inset 3px 3px 7px rgba(13,17,23,.09),
    inset -2px -2px 5px rgba(255,255,255,.70),
    0 1px 0 rgba(255,255,255,.55);
  --rd-pill-raise:
    3px 3px 8px rgba(13,17,23,.10),
    -2px -2px 6px rgba(255,255,255,.76);
  --rd-pill-press:
    inset 2px 2px 5px rgba(13,17,23,.14),
    inset -1px -1px 4px rgba(255,255,255,.40);
  --rd-r:    14px;
  --rd-r-sm: 10px;
  --rd-r-pill: 999px;
  --rd-fh: 'Jost', sans-serif;
  --rd-fb: 'Jost', sans-serif;
  --rd-fm: 'Jost', sans-serif;
}

/* ── 2. Page background ── */
body {
  font-family: var(--rd-fb) !important;
  background: var(--rd-bg) !important;
}
body::after {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 55% 45% at 8% 5%,  rgba(255,255,255,.44) 0%, transparent 55%),
    radial-gradient(ellipse 45% 35% at 92% 92%, rgba(255,255,255,.30) 0%, transparent 50%);
}

/* ── 3. Header ── */
.header {
  background: rgba(238,239,243,.92) !important;
  backdrop-filter: blur(28px) saturate(1.8) !important;
  border-bottom: 1px solid var(--rd-w70) !important;
  box-shadow: 0 2px 12px rgba(13,17,23,.07), inset 0 1px 0 var(--rd-w90) !important;
  padding: 0 20px !important;
  height: 56px !important;
}
.header-inner { height: 100% !important; align-items: center !important; }

.brand {
  font-family: var(--rd-fh) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: -.01em !important;
  color: var(--rd-ink) !important;
}
.brand em { font-weight: 400 !important; }

.mode-switcher {
  background: rgba(210,212,218,.6) !important;
  border-radius: var(--rd-r-pill) !important;
  padding: 3px !important;
  box-shadow: var(--rd-inset) !important;
  border: none !important;
}
.mode-btn {
  font-family: var(--rd-fh) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  padding: 5px 14px !important;
  border-radius: var(--rd-r-pill) !important;
  border: none !important;
  background: transparent !important;
  color: var(--rd-ink-40) !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transform: none !important;
  transition: all .2s !important;
}
.mode-btn.active, .mode-btn[aria-pressed="true"] {
  background: var(--rd-ink) !important;
  color: var(--rd-w90) !important;
  box-shadow: var(--rd-pill-press) !important;
  transform: none !important;
  border: none !important;
}
.mode-btn:hover { transform: none !important; box-shadow: none !important; }

.btn-ghost {
  font-family: var(--rd-fh) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  padding: 5px 14px !important;
  border-radius: var(--rd-r-pill) !important;
  border: 1px solid var(--rd-w70) !important;
  background: var(--rd-card) !important;
  color: var(--rd-ink-60) !important;
  box-shadow: var(--rd-pill-raise) !important;
  transform: none !important;
  transition: box-shadow .18s !important;
}
.btn-ghost:hover { box-shadow: var(--rd-raise-sm) !important; transform: none !important; color: var(--rd-ink) !important; }

.btn-soft-primary {
  font-family: var(--rd-fh) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 5px 14px !important;
  border-radius: var(--rd-r-pill) !important;
  border: none !important;
  background: var(--rd-ink) !important;
  color: var(--rd-w90) !important;
  box-shadow: var(--rd-pill-press) !important;
  transform: none !important;
}
.btn-soft-primary:hover { transform: none !important; }

.status-pill {
  font-family: var(--rd-fh) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  padding: 4px 10px !important;
  border-radius: var(--rd-r-pill) !important;
  border: 1px solid var(--rd-w70) !important;
  background: var(--rd-card) !important;
  color: var(--rd-ink-40) !important;
  box-shadow: var(--rd-pill-raise) !important;
}
.status-pill::before { background: var(--rd-ink-20) !important; box-shadow: none !important; }
.status-pill.success { color: var(--rd-green-dk) !important; border-color: var(--rd-green-br) !important; background: var(--rd-green-bg) !important; }
.status-pill.success::before { background: var(--rd-green) !important; }

/* ── 4. v14 area header ── */
.v14-area-header {
  background: rgba(238,239,243,.92) !important;
  backdrop-filter: blur(20px) saturate(1.6) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r) !important;
  box-shadow: var(--rd-raise-sm) !important;
  padding: 10px 14px !important;
}
.v14-area-name { font-family: var(--rd-fh) !important; font-weight: 700 !important; color: var(--rd-ink) !important; }
.v14-tabs { top: 68px !important; background: transparent !important; }

/* ── 5. Container bg ── */
.container, .v14-main { background: transparent !important; }

/* ── 6. Cards → neumorphic ── */
.card, .indicator-card, .strip-card, .cenario-card,
.timeline-content, .table-container, .chart-wrapper,
.v19-recuo-smart, .v23-inline-recuo-card, .v23-inline-apt-card {
  background: var(--rd-card) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r) !important;
  box-shadow: var(--rd-raise) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: none !important;
  transition: box-shadow .2s !important;
}
.card::before, .indicator-card::before, .strip-card::before,
.cenario-card::before, .timeline-content::before,
.table-container::before, .chart-wrapper::before { display: none !important; }
.card:hover, .strip-card:hover, .cenario-card:hover {
  box-shadow: var(--rd-raise-lg) !important;
  transform: none !important;
}

/* ── 7. Section titles ── */
.section-title {
  font-family: var(--rd-fh) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink-40) !important;
  margin-bottom: 10px !important;
}
.section-title::before { background: var(--rd-green) !important; width: 3px !important; height: 10px !important; border-radius: 2px !important; }

/* ── 8. Inputs ── */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
select, textarea {
  font-family: var(--rd-fb) !important;
  background: rgba(218,220,226,.85) !important;
  border: 1px solid var(--rd-w50) !important;
  border-radius: var(--rd-r-sm) !important;
  box-shadow: var(--rd-inset) !important;
  color: var(--rd-ink) !important;
  padding: 7px 10px !important;
  font-size: 12px !important;
  transition: box-shadow .18s, border-color .18s !important;
  outline: none !important;
}
input:focus, select:focus, textarea:focus {
  border-color: var(--rd-green-br) !important;
  box-shadow: var(--rd-inset), 0 0 0 3px var(--rd-green-bg) !important;
}
input[readonly], input[disabled] { opacity: .55 !important; cursor: not-allowed !important; }
select {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='5'%3E%3Cpath d='M1 1l3.5 3 3.5-3' stroke='rgba(13,17,23,.32)' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 9px center !important;
  padding-right: 24px !important;
}
label {
  font-family: var(--rd-fh) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink-40) !important;
}

/* ── 9. Resumo negócio ── */
.resumo-core, .resumo-preco, .resumo-total {
  background: rgba(228,230,234,.82) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: 12px !important;
  box-shadow: inset 2px 2px 6px rgba(13,17,23,.08), inset -2px -2px 5px rgba(255,255,255,.62), 0 1px 0 rgba(255,255,255,.55) !important;
}
.resumo-total-value { font-family: var(--rd-fm) !important; letter-spacing: -.01em !important; color: var(--rd-ink) !important; }
.resumo-control-label, .resumo-static .k {
  font-family: var(--rd-fh) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink-40) !important;
}
.resumo-static .v { font-family: var(--rd-fm) !important; font-size: 15px !important; font-weight: 400 !important; color: var(--rd-ink) !important; }
#bar_dinheiro { background: linear-gradient(90deg, var(--rd-green-dk), var(--rd-green)) !important; border-radius: 999px !important; }
#bar_permuta  { background: linear-gradient(90deg, var(--rd-green-dk, #3a5200), var(--rd-green, #9BC53D)) !important; border-radius: 999px !important; }

/* ── 10. v19 recuo smart ── */
.v19-recuo-smart {
  background: var(--rd-card) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r) !important;
  box-shadow: var(--rd-raise) !important;
  padding: 12px 14px !important;
  margin-top: 10px !important;
  backdrop-filter: none !important;
}
.v19-recuo-smart-title {
  font-family: var(--rd-fh) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink) !important;
}
.v19-recuo-smart-sub { font-family: var(--rd-fb) !important; font-size: 10px !important; color: var(--rd-ink-40) !important; margin-top: 2px !important; }
.v19-recuo-toggle-btn {
  font-family: var(--rd-fh) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  padding: 4px 11px !important;
  border-radius: var(--rd-r-pill) !important;
  border: 1px solid var(--rd-w70) !important;
  background: var(--rd-card) !important;
  color: var(--rd-green-dk) !important;
  box-shadow: var(--rd-pill-raise) !important;
  min-height: unset !important;
  height: auto !important;
}
.v19-recuo-toggle-btn:hover { box-shadow: var(--rd-raise-sm) !important; }

.v19-recuo-smart-metrics {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(110px, 1fr)) !important;
  gap: 8px !important;
}
@media (min-width: 1280px) { .v19-recuo-smart-metrics { grid-template-columns: repeat(7, minmax(100px, 1fr)) !important; } }

.v19-recuo-metric {
  background: rgba(228,230,234,.82) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r-sm) !important;
  padding: 8px 10px !important;
  box-shadow: inset 2px 2px 5px rgba(13,17,23,.07), inset -1px -1px 4px rgba(255,255,255,.60) !important;
}
.v19-recuo-metric span {
  font-family: var(--rd-fh) !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink-40) !important;
  margin-bottom: 4px !important;
}
.v19-recuo-metric strong { font-family: var(--rd-fm) !important; font-size: 13px !important; font-weight: 400 !important; color: var(--rd-ink) !important; line-height: 1.2 !important; }
.v19-recuo-metric em { font-family: var(--rd-fb) !important; font-size: 9px !important; color: var(--rd-ink-40) !important; font-style: normal !important; margin-top: 3px !important; }

.v19-recuo-smart-table-wrap {
  background: rgba(228,230,234,.7) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r-sm) !important;
  box-shadow: var(--rd-inset) !important;
}
.v19-recuo-smart-table thead th {
  background: rgba(236,238,242,.92) !important;
  font-family: var(--rd-fh) !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink-40) !important;
  border-bottom: 1px solid var(--rd-w70) !important;
  padding: 9px 8px !important;
}
.v19-recuo-smart-table tbody td { font-family: var(--rd-fm) !important; font-size: 11px !important; color: var(--rd-ink-60) !important; border-bottom: 1px solid rgba(13,17,23,.04) !important; padding: 7px 8px !important; }

/* ── 11. Lot dims editor ── */
.v19-lotdims-editor {
  background: rgba(228,230,234,.7) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r-sm) !important;
  box-shadow: var(--rd-inset) !important;
  padding: 8px 10px !important;
}
.v19-lotdims-toggle {
  background: rgba(210,212,218,.7) !important;
  border-radius: var(--rd-r-pill) !important;
  border: none !important;
  overflow: hidden !important;
  box-shadow: var(--rd-inset) !important;
}
.v19-lotdims-mode {
  font-family: var(--rd-fh) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink-40) !important;
  background: transparent !important;
  border: none !important;
  padding: 4px 12px !important;
  min-width: 64px !important;
  height: auto !important;
}
.v19-lotdims-mode.is-active { background: var(--rd-ink) !important; color: var(--rd-w90) !important; box-shadow: var(--rd-pill-press) !important; }
.v19-lotdims-field span { font-family: var(--rd-fh) !important; font-size: 9px !important; font-weight: 700 !important; letter-spacing: .09em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; }

/* ── 12. Strip KPI ── */
.strip-card { padding: 16px 18px !important; }
.strip-label { font-family: var(--rd-fh) !important; font-size: 8px !important; font-weight: 700 !important; letter-spacing: .10em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; margin-bottom: 6px !important; }
.strip-value { font-family: var(--rd-fm) !important; font-size: 24px !important; font-weight: 400 !important; letter-spacing: -.01em !important; color: var(--rd-ink) !important; }
.strip-value.gain { background: transparent !important; color: var(--rd-green-dk) !important; padding: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.strip-sub { font-family: var(--rd-fb) !important; font-size: 9px !important; color: var(--rd-ink-40) !important; margin-top: 4px !important; }

/* ── 13. Indicator cards ── */
.indicator-card { padding: 18px 20px !important; }
.indicator-label { font-family: var(--rd-fh) !important; font-size: 8px !important; font-weight: 700 !important; letter-spacing: .10em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; margin-bottom: 6px !important; }
.indicator-value { font-family: var(--rd-fm) !important; font-size: 28px !important; font-weight: 400 !important; letter-spacing: -.01em !important; color: var(--rd-ink) !important; }
.indicator-value.green { color: var(--rd-green-dk) !important; }
.indicator-value.amber, .indicator-value.warning, .indicator-value.red { color: var(--rd-amber) !important; }
.meter { height: 6px !important; border-radius: 999px !important; background: rgba(13,17,23,.07) !important; box-shadow: inset 1px 1px 3px rgba(13,17,23,.06), inset -1px -1px 2px rgba(255,255,255,.50) !important; border: none !important; }
.meter-fill { background: linear-gradient(90deg, var(--rd-green-dk), var(--rd-green)) !important; border-radius: 999px !important; }
.meter-label { font-family: var(--rd-fb) !important; font-size: 9px !important; color: var(--rd-ink-40) !important; }

/* ── 14. Incentivos ── */
.incentivo-item {
  background: linear-gradient(180deg, rgba(236,238,242,.94) 0%, rgba(231,233,238,.86) 100%) !important;
  border: 1px solid rgba(255,255,255,.78) !important;
  border-radius: 12px !important;
  box-shadow: 4px 4px 12px rgba(13,17,23,.10), -2px -2px 8px rgba(255,255,255,.82), inset 0 1px 0 rgba(255,255,255,.88) !important;
}
.incentivo-item.is-on {
  border-color: var(--rd-green-br) !important;
  background: linear-gradient(180deg, rgba(223,242,234,.70) 0%, rgba(216,237,230,.62) 100%) !important;
}
.incentivo-label { font-family: var(--rd-fb) !important; font-size: 12px !important; color: var(--rd-ink-60) !important; }
.incentivo-valor { font-family: var(--rd-fm) !important; font-size: 10px !important; color: var(--rd-ink-40) !important; }
.incentivo-item.is-on .incentivo-valor { color: var(--rd-green-dk) !important; }
.incentivo-check-ui {
  border-radius: 999px !important;
  background: linear-gradient(180deg, rgba(205,208,214,.9) 0%, rgba(194,198,205,.86) 100%) !important;
  border: 1px solid rgba(255,255,255,.82) !important;
  box-shadow: inset 1px 1px 4px rgba(15,23,42,.10), inset -1px -1px 3px rgba(255,255,255,.46), 2px 2px 6px rgba(15,23,42,.08) !important;
}
.incentivo-checkbox:checked + .incentivo-check-ui {
  background: linear-gradient(180deg, rgba(0,194,122,.96) 0%, rgba(0,158,99,.92) 100%) !important;
  border-color: var(--rd-green-br) !important;
  box-shadow: inset 1px 1px 4px rgba(0,158,99,.22), inset -1px -1px 2px rgba(255,255,255,.24), 0 4px 12px rgba(0,194,122,.22) !important;
}

/* ── 15. Cenários ── */
.cenario-card { padding: 18px 20px !important; position: relative !important; overflow: hidden !important; }
.cenario-badge { font-family: var(--rd-fh) !important; font-size: 8px !important; font-weight: 700 !important; letter-spacing: .10em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; margin-bottom: 8px !important; }
.cenario-title { font-family: var(--rd-fh) !important; font-size: 14px !important; font-weight: 700 !important; color: var(--rd-ink) !important; margin-bottom: 12px !important; }
.cenario-value { font-family: var(--rd-fm) !important; font-size: 13px !important; color: var(--rd-ink-60) !important; }
.cenario-value strong { font-family: var(--rd-fh) !important; font-size: 9px !important; font-weight: 700 !important; letter-spacing: .08em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; display: block !important; margin-bottom: 2px !important; }
div[id="cenario_card_b"] { border: 1px solid var(--rd-green-br) !important; box-shadow: var(--rd-raise), 0 0 0 1px var(--rd-green-br) !important; background: var(--rd-card) !important; }
div[id="cenario_card_b"]::before { content: '' !important; display: block !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important; background: linear-gradient(90deg, var(--rd-green), rgba(0,194,122,.25)) !important; pointer-events: none !important; }
div[id="cenario_card_b"] .cenario-badge { color: var(--rd-green-dk) !important; }

/* ── 16. Timeline ── */
.timeline-content { padding: 16px 18px !important; }
.timeline-title { font-family: var(--rd-fh) !important; font-size: 13px !important; font-weight: 700 !important; color: var(--rd-ink) !important; }
.timeline-desc { font-family: var(--rd-fb) !important; font-size: 12px !important; color: var(--rd-ink-60) !important; line-height: 1.6 !important; }
.timeline-number { background: linear-gradient(165deg, rgba(255,255,255,.9) 0%, rgba(245,245,240,.62) 100%) !important; border: 1px solid rgba(255,255,255,.95) !important; box-shadow: 0 10px 22px rgba(15,23,42,.12), 0 0 0 1px rgba(0,194,122,.18), inset 0 1px 0 rgba(255,255,255,.92) !important; font-family: var(--rd-fh) !important; font-size: 13px !important; font-weight: 800 !important; color: var(--rd-ink) !important; }

/* ── 17. Lote table ── */
.lote-table-shell {
  background: var(--rd-card) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r) !important;
  box-shadow: var(--rd-raise) !important;
  backdrop-filter: none !important;
}
.table-lote-a-lote { background: transparent !important; border: none !important; border-radius: 0 !important; }
.table-lote-a-lote thead th {
  background: rgba(236,238,242,.92) !important;
  font-family: var(--rd-fh) !important;
  font-size: 8.5px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--rd-ink-40) !important;
  border-bottom: 1px solid var(--rd-w70) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85) !important;
  backdrop-filter: none !important;
  padding: 9px 8px !important;
}
.table-lote-a-lote tbody td { font-size: 12px !important; color: #111 !important; border-bottom: 1px solid rgba(0,0,0,.05) !important; background: transparent !important; padding: 10px 10px !important; vertical-align: middle !important; }
.table-lote-a-lote tbody tr:nth-child(even) td { background: transparent !important; }
.table-lote-a-lote tbody tr:hover td { background: rgba(195,234,79,.04) !important; }
.table-lote-a-lote tfoot td { background: #fafaf9 !important; border-top: 1px solid rgba(0,0,0,.08) !important; font-weight: 600 !important; color: #999 !important; padding: 9px 10px !important; font-size: 11px !important; }
.table-lote-a-lote input, .table-lote-a-lote select {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  border-bottom: 1.5px solid transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  outline: none !important;
  padding: 2px 0 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #111 !important;
  font-family: inherit !important;
  width: 100% !important;
  transition: border-color .15s !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
.table-lote-a-lote input[type="text"] { font-size: 12px !important; font-weight: 600 !important; }
.table-lote-a-lote input[type="number"] { text-align: right !important; }
.table-lote-a-lote .col-num input,
.table-lote-a-lote .col-geo input,
.table-lote-a-lote .col-pct input { text-align: center !important; }
.table-lote-a-lote input:hover, .table-lote-a-lote select:hover {
  background: transparent !important;
  border-bottom-color: rgba(0,0,0,.18) !important;
}
.table-lote-a-lote input:focus, .table-lote-a-lote select:focus {
  background: transparent !important;
  border-bottom-color: #C3EA4F !important;
  box-shadow: none !important;
}
.btn-remover { background: transparent !important; border: none !important; color: var(--rd-ink-20) !important; border-radius: 6px !important; }
.btn-remover:hover { color: #dc2626 !important; background: rgba(220,38,38,.06) !important; }
.btn-link-lote { background: transparent !important; border: none !important; color: var(--rd-ink-40) !important; border-radius: 6px !important; }
.btn-link-lote:hover { color: var(--rd-green-dk) !important; background: var(--rd-green-bg) !important; }
.cell-money, .cell-unit { font-family: var(--rd-fm) !important; }

/* ── 18. v14-exec KPIs ── */
.v14-exec-kpi { background: rgba(228,230,234,.82) !important; border: 1px solid var(--rd-w70) !important; border-radius: var(--rd-r-sm) !important; box-shadow: inset 2px 2px 5px rgba(13,17,23,.07), inset -1px -1px 4px rgba(255,255,255,.60) !important; }
.v14-exec-kpi.is-main { background: var(--rd-ink) !important; border-color: var(--rd-ink) !important; box-shadow: var(--rd-raise-sm) !important; }
.v14-exec-kpi .k { font-family: var(--rd-fh) !important; font-size: 8px !important; font-weight: 700 !important; letter-spacing: .10em !important; color: var(--rd-ink-40) !important; }
.v14-exec-kpi .v { font-family: var(--rd-fm) !important; font-weight: 400 !important; color: var(--rd-ink) !important; }
.v14-exec-kpi.is-main .k { color: rgba(255,255,255,.42) !important; }
.v14-exec-kpi.is-main .v { color: #fff !important; }

/* ── 19. Money bars v14 ── */
.v14-money-track { height: 6px !important; border-radius: 999px !important; background: rgba(13,17,23,.07) !important; box-shadow: inset 1px 1px 3px rgba(13,17,23,.06), inset -1px -1px 2px rgba(255,255,255,.50) !important; border: none !important; }
.v14-money-fill { background: linear-gradient(90deg, var(--rd-green-dk), var(--rd-green)) !important; border-radius: 999px !important; }
.v14-money-fill.alt { background: linear-gradient(90deg, #b45309, var(--rd-amber)) !important; }
.v14-money-head { font-family: var(--rd-fh) !important; font-size: 9px !important; font-weight: 700 !important; letter-spacing: .06em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; }
.v14-money-head span { font-family: var(--rd-fm) !important; color: var(--rd-green-dk) !important; }

/* ── 20. Owner sections ── */
.owner-conviction-hero, .owner-gain-card, .owner-why,
.owner-lead-cta-card, .owner-permuta-model-card,
.owner-potential-card, .owner-calc-card, .permuta-inline {
  background: var(--rd-card) !important;
  border: 1px solid var(--rd-w70) !important;
  border-radius: var(--rd-r) !important;
  box-shadow: var(--rd-raise) !important;
}
.owner-conviction-title { font-family: var(--rd-fh) !important; font-weight: 800 !important; color: var(--rd-ink) !important; }
.owner-gain-grid td:last-child { font-family: var(--rd-fm) !important; color: var(--rd-ink) !important; }
.owner-gain-grid tr:last-child td:last-child { color: var(--rd-green-dk) !important; }
.permuta-inline-head { font-family: var(--rd-fh) !important; font-size: 9px !important; font-weight: 700 !important; letter-spacing: .10em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; }
.permuta-inline-value { font-family: var(--rd-fm) !important; color: var(--rd-ink) !important; }
#chart_permuta_valor { font-family: var(--rd-fm) !important; color: var(--rd-green-dk) !important; }

/* ── 21. Dev map ── */
.dev-map { background: var(--rd-card) !important; border: 1px solid var(--rd-w70) !important; border-radius: var(--rd-r) !important; box-shadow: var(--rd-raise) !important; overflow: hidden !important; }
.dev-map-top { background: rgba(236,238,242,.85) !important; border-bottom: 1px solid var(--rd-w70) !important; padding: 9px 13px !important; }
.dev-map-top h4 { font-family: var(--rd-fh) !important; font-size: 11px !important; font-weight: 700 !important; color: var(--rd-ink) !important; }
.dev-map-toggle { font-family: var(--rd-fh) !important; font-size: 9px !important; font-weight: 700 !important; padding: 4px 10px !important; border-radius: var(--rd-r-pill) !important; border: 1px solid var(--rd-w70) !important; background: var(--rd-card) !important; color: var(--rd-green-dk) !important; box-shadow: var(--rd-pill-raise) !important; }
.map-dimensions { font-family: var(--rd-fm) !important; background: rgba(238,239,243,.95) !important; border: 1px solid var(--rd-w70) !important; border-radius: var(--rd-r-sm) !important; box-shadow: var(--rd-raise-sm) !important; }

/* ── 22. Score atratividade ── */
.score-atratividade { background: var(--rd-card) !important; border: 1px solid var(--rd-w70) !important; border-radius: var(--rd-r) !important; box-shadow: var(--rd-raise-sm) !important; }
.score-atratividade-head strong { font-family: var(--rd-fh) !important; }
.score-atratividade-head span { font-family: var(--rd-fm) !important; }
.score-chip { background: rgba(228,230,234,.82) !important; border: 1px solid var(--rd-w70) !important; border-radius: var(--rd-r-sm) !important; }
.score-chip .k { font-family: var(--rd-fh) !important; font-size: 9px !important; letter-spacing: .08em !important; color: var(--rd-ink-40) !important; }
.score-chip .v { font-family: var(--rd-fm) !important; font-size: 13px !important; font-weight: 400 !important; color: var(--rd-ink) !important; }

/* ── 23. Alavancas ── */
.alavanca-item { background: rgba(228,230,234,.82) !important; border: 1px solid var(--rd-w70) !important; border-radius: var(--rd-r-sm) !important; box-shadow: inset 2px 2px 5px rgba(13,17,23,.07), inset -1px -1px 4px rgba(255,255,255,.60) !important; }
.alavanca-title { font-family: var(--rd-fh) !important; font-size: 12px !important; font-weight: 700 !important; color: var(--rd-ink) !important; }
.alavanca-desc { font-family: var(--rd-fb) !important; font-size: 11px !important; color: var(--rd-ink-60) !important; }
.alavanca-impact { font-family: var(--rd-fm) !important; color: var(--rd-green) !important; }

/* ── 24. v14-area mode buttons ── */
.v14-area-mode-btn { font-family: var(--rd-fh) !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: .06em !important; text-transform: uppercase !important; padding: 5px 14px !important; border-radius: var(--rd-r-pill) !important; border: 1px solid var(--rd-w70) !important; background: var(--rd-card) !important; color: var(--rd-ink-40) !important; box-shadow: var(--rd-pill-raise) !important; }
.v14-area-mode-btn.active { background: var(--rd-ink) !important; border-color: var(--rd-ink) !important; color: #fff !important; box-shadow: var(--rd-pill-press) !important; }

/* ── 25. Alert box ── */
.alert-box { border-radius: var(--rd-r) !important; border: 1px solid rgba(255,255,255,.78) !important; box-shadow: var(--rd-raise) !important; }

/* ── 26. Misc ── */
.disclaimer { border-left: 3px solid var(--rd-green-br) !important; background: var(--rd-green-bg) !important; color: var(--rd-ink-60) !important; border-radius: 0 var(--rd-r-sm) var(--rd-r-sm) 0 !important; }
.more-options-menu { background: var(--rd-card) !important; border: 1px solid var(--rd-w70) !important; border-radius: var(--rd-r) !important; box-shadow: var(--rd-raise-lg) !important; }
.v14-toast { background: rgba(13,17,23,.92) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: var(--rd-r-sm) !important; box-shadow: var(--rd-raise-lg) !important; font-family: var(--rd-fh) !important; }
.v14-pill { font-family: var(--rd-fh) !important; font-size: 9px !important; font-weight: 700 !important; letter-spacing: .06em !important; border-radius: var(--rd-r-pill) !important; padding: 3px 9px !important; }

/* ── 27. Scrollbar ── */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(13,17,23,.14); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(13,17,23,.28); }

/* ── 28. v38 recuo table ── */
.v38-recuo-table thead th { font-family: var(--rd-fh) !important; font-size: 8px !important; font-weight: 700 !important; letter-spacing: .09em !important; text-transform: uppercase !important; color: var(--rd-ink-40) !important; background: rgba(236,238,242,.92) !important; border-bottom: 1px solid var(--rd-w70) !important; }
.v38-recuo-table tbody td { font-family: var(--rd-fm) !important; font-size: 11px !important; color: var(--rd-ink-60) !important; }

/* ── 29. Apt card head separator ── */
.v23-inline-apt-card .v19-recuo-smart-head,
.v23-inline-recuo-card .v19-recuo-smart-head {
  padding-bottom: 8px !important;
  border-bottom: 1px solid var(--rd-w70) !important;
  margin-bottom: 12px !important;
}


/* ── §30 · BASE redesign 2025 ───────────────────────────────────────────
   Layout 2 colunas + glass morphism. Zero impacto em engines.
   TODOS com !important para vencer as regras do §1–§29.
   ──────────────────────────────────────────────────────────────────── */

/* 30.1 Layout raiz */
.v45r-base-layout {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  align-items: start !important;
  padding: 14px !important;
  background: transparent !important;
}
.v45r-col-left,
.v45r-col-right {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  min-width: 0 !important;
}

/* 30.2 Glass card */
.v45r-card.card,
.v45r-card {
  background: rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 0.5px solid rgba(255,255,255,0.85) !important;
  border-radius: 16px !important;
  padding: 16px 18px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

/* 30.3 Motor: grid 4 colunas */
.v45r-card .v43-motor-editor-grid,
.v23-inline-motor-card .v43-motor-editor-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 10px !important;
  align-items: start !important;
  flex-direction: unset !important;
  flex-wrap: unset !important;
}
.v45r-card .v43-motor-gab-section,
.v23-inline-motor-card .v43-motor-gab-section {
  display: contents !important;
}
.v45r-card .v43-motor-field,
.v23-inline-motor-card .v43-motor-field {
  flex: unset !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}
/* Subtexto do gabarito não deve empurrar o grid — colapsa fora do fluxo */
.v45r-card .v43-motor-field > em,
.v23-inline-motor-card .v43-motor-field > em {
  font-size: 9px !important;
  color: #999 !important;
  margin-top: 2px !important;
  line-height: 1.2 !important;
}

/* 30.4 Labels dos campos do motor */
.v45r-card .v43-motor-field > span,
.v23-inline-motor-card .v43-motor-field > span,
.v45r-card .v43-motor-field > label > span:first-child,
.v23-inline-motor-card .v43-motor-field > label > span:first-child {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #888 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
  display: block !important;
  margin-bottom: 7px !important;
  font-family: var(--rd-fh) !important;
}

/* 30.5 Stepper glass (42px) */
.v45r-card .v43-stepper,
.v23-inline-motor-card .v43-stepper {
  display: flex !important;
  align-items: stretch !important;
  height: 42px !important;
  min-height: 42px !important;
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow:
    inset 0 1px 3px rgba(0,0,0,0.10),
    inset 0 -1px 0 rgba(255,255,255,0.60),
    0 1px 0 rgba(255,255,255,0.80) !important;
  overflow: hidden !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.v45r-card .v43-stepper-btn,
.v23-inline-motor-card .v43-stepper-btn {
  width: 36px !important;
  min-width: 36px !important;
  flex-shrink: 0 !important;
  background: transparent !important;
  border: none !important;
  border-right: 0.5px solid rgba(0,0,0,0.08) !important;
  cursor: pointer !important;
  font-size: 17px !important;
  color: #555 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  padding: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.v45r-card .v43-stepper-btn:last-child,
.v23-inline-motor-card .v43-stepper-btn:last-child {
  border-right: none !important;
  border-left: 0.5px solid rgba(0,0,0,0.08) !important;
}
.v45r-card .v43-stepper-val,
.v23-inline-motor-card .v43-stepper-val {
  flex: 1 !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: var(--rd-fm) !important;
}

/* 30.6 Input m²Alvo */
.v45r-card input[data-motor-input="m2PrivAlvo"],
.v23-inline-motor-card input[data-motor-input="m2PrivAlvo"] {
  height: 42px !important;
  min-height: 42px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  padding: 0 14px !important;
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow:
    inset 0 1px 3px rgba(0,0,0,0.10),
    inset 0 -1px 0 rgba(255,255,255,0.60),
    0 1px 0 rgba(255,255,255,0.80) !important;
  width: 100% !important;
  box-sizing: border-box !important;
  font-family: var(--rd-fm) !important;
  text-align: left !important;
}
.v45r-card input[data-motor-input="m2PrivAlvo"]::-webkit-inner-spin-button,
.v45r-card input[data-motor-input="m2PrivAlvo"]::-webkit-outer-spin-button,
.v23-inline-motor-card input[data-motor-input="m2PrivAlvo"]::-webkit-inner-spin-button,
.v23-inline-motor-card input[data-motor-input="m2PrivAlvo"]::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* 30.7 Select gabarito */
.v45r-card select#gab-select,
.v23-inline-motor-card select#gab-select {
  height: 42px !important;
  min-height: 42px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  padding: 0 32px 0 14px !important;
  background-color: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow:
    inset 0 1px 3px rgba(0,0,0,0.10),
    inset 0 -1px 0 rgba(255,255,255,0.60),
    0 1px 0 rgba(255,255,255,0.80) !important;
  width: 100% !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  cursor: pointer !important;
  font-family: var(--rd-fm) !important;
}

/* 30.8 Cabeçalho do motor */
.v45r-card .v43-motor-editor-head,
.v23-inline-motor-card .v43-motor-editor-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  margin-bottom: 14px !important;
}
.v45r-card .v43-motor-reset,
.v23-inline-motor-card .v43-motor-reset {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #555 !important;
  background: rgba(255,255,255,0.70) !important;
  border: 0.5px solid rgba(0,0,0,0.13) !important;
  border-radius: 20px !important;
  padding: 6px 14px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  margin-left: 12px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.08), inset 0 1px 0 rgba(255,255,255,0.95) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-family: var(--rd-fb) !important;
}

/* 30.9 Recuos: grid 7 colunas */
.v45r-card .v38-recuo-metrics-grid,
.v23-inline-recuo-card .v38-recuo-metrics-grid {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0,1fr)) !important;
  gap: 6px !important;
  margin-top: 10px !important;
}
.v45r-card .v38-rm,
.v23-inline-recuo-card .v38-rm {
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.08), 0 1px 0 rgba(255,255,255,0.75) !important;
  padding: 8px 6px !important;
  text-align: center !important;
}
.v45r-card .v38-rm span, .v23-inline-recuo-card .v38-rm span {
  font-size: 8px !important; font-weight: 600 !important; color: #888 !important;
  letter-spacing: 0.05em !important; text-transform: uppercase !important;
  display: block !important; margin-bottom: 4px !important; line-height: 1.3 !important;
}
.v45r-card .v38-rm strong, .v23-inline-recuo-card .v38-rm strong {
  font-size: 12px !important; font-weight: 500 !important; color: #1a1a1a !important;
  display: block !important; font-family: var(--rd-fm) !important;
}
.v45r-card .v38-rm em, .v23-inline-recuo-card .v38-rm em {
  font-size: 8px !important; color: #aaa !important; font-style: normal !important;
  display: block !important; margin-top: 2px !important; line-height: 1.3 !important;
}
.v45r-card .v38-rm.v38-rm-ok strong, .v23-inline-recuo-card .v38-rm.v38-rm-ok strong { color: #22863a !important; }
.v45r-card .v38-rm.v38-rm-warn strong, .v23-inline-recuo-card .v38-rm.v38-rm-warn strong { color: #b45309 !important; }

/* 30.10 KPIs do produto */
.v45r-card .v38-kpis, .v23-inline-apt-card .v38-kpis {
  display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 8px !important; margin-bottom: 12px !important;
}
.v45r-card .v38-kpi, .v23-inline-apt-card .v38-kpi {
  background: rgba(0,0,0,0.042) !important; border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important; box-shadow: inset 0 1px 3px rgba(0,0,0,0.08), 0 1px 0 rgba(255,255,255,0.75) !important;
  padding: 10px 12px !important;
}
.v45r-card .v38-kpi span, .v23-inline-apt-card .v38-kpi span {
  font-size: 9px !important; font-weight: 600 !important; color: #888 !important;
  letter-spacing: 0.07em !important; text-transform: uppercase !important;
  display: block !important; margin-bottom: 5px !important; font-family: var(--rd-fh) !important;
}
.v45r-card .v38-kpi strong, .v23-inline-apt-card .v38-kpi strong {
  font-size: 18px !important; font-weight: 500 !important; color: #1a1a1a !important;
  display: block !important; line-height: 1.2 !important; font-family: var(--rd-fm) !important;
}
.v45r-card .v38-kpi-hero strong, .v23-inline-apt-card .v38-kpi-hero strong {
  font-size: 24px !important; color: #22863a !important;
}
.v45r-card .v38-kpi em, .v23-inline-apt-card .v38-kpi em {
  font-size: 9px !important; color: #aaa !important; font-style: normal !important;
  display: block !important; margin-top: 3px !important; line-height: 1.4 !important;
}
.v38-ok  { color: #22863a !important; }
.v38-warn { color: #b45309 !important; }

/* 30.11 Resumo de áreas */
.v45r-card .v38-resumo, .v23-inline-apt-card .v38-resumo {
  display: flex !important; align-items: center !important; flex-wrap: wrap !important;
  gap: 5px !important; padding: 10px 12px !important; background: rgba(0,0,0,0.025) !important;
  border-radius: 10px !important; margin-bottom: 12px !important;
  border: 0.5px solid rgba(0,0,0,0.06) !important; box-shadow: none !important;
}
.v38-rlb { font-size: 9px !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: #888 !important; font-family: var(--rd-fh) !important; flex-shrink: 0 !important; }
.v38-rtag { display: flex !important; flex-direction: column !important; align-items: center !important; padding: 4px 8px !important; background: rgba(0,0,0,0.042) !important; border: 0.5px solid rgba(0,0,0,0.10) !important; border-radius: 7px !important; box-shadow: inset 0 1px 2px rgba(0,0,0,0.07), 0 1px 0 rgba(255,255,255,0.75) !important; }
.v38-rtag span { font-size: 8px !important; color: #888 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; font-weight: 600 !important; font-family: var(--rd-fh) !important; }
.v38-rtag strong { font-size: 11px !important; font-weight: 500 !important; color: #1a1a1a !important; font-family: var(--rd-fm) !important; }
.v38-rtag.v38-rtag-g strong { color: #22863a !important; }
.v38-rtag.v38-rtag-tot { background: rgba(34,134,58,0.08) !important; border-color: rgba(34,134,58,0.20) !important; }
.v38-rtag.v38-rtag-tot strong { color: #22863a !important; font-size: 13px !important; font-weight: 600 !important; }
.v38-rsep { font-size: 13px !important; color: #bbb !important; flex-shrink: 0 !important; }
.v38-rca { display: none !important; }

/* 30.12 Subsolo */
.v45r-card .v38-sbr, .v23-inline-apt-card .v38-sbr { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 6px !important; }
.v45r-card .v38-sn, .v23-inline-apt-card .v38-sn { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 6px 10px !important; background: rgba(0,0,0,0.042) !important; border: 0.5px solid rgba(0,0,0,0.10) !important; border-radius: 8px !important; box-shadow: inset 0 1px 3px rgba(0,0,0,0.08), 0 1px 0 rgba(255,255,255,0.75) !important; }
.v45r-card .v38-sn.v38-sn-warn, .v23-inline-apt-card .v38-sn.v38-sn-warn { background: rgba(234,179,8,0.06) !important; border-color: rgba(234,179,8,0.28) !important; }
.v38-sn > div > span { font-size: 8px !important; color: #888 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; font-weight: 600 !important; display: block !important; margin-bottom: 2px !important; font-family: var(--rd-fh) !important; }
.v38-sn > div > strong { font-size: 14px !important; font-weight: 500 !important; color: #1a1a1a !important; display: block !important; font-family: var(--rd-fm) !important; }
.v38-sn.v38-sn-warn > div > strong { color: #92400e !important; }
.v38-sn > div > em { font-size: 9px !important; color: #aaa !important; font-style: normal !important; }
.v38-sico { font-size: 18px !important; opacity: 0.45 !important; }
.v38-sl { font-size: 9px !important; font-weight: 700 !important; letter-spacing: 0.10em !important; text-transform: uppercase !important; color: #888 !important; margin: 12px 0 7px !important; padding-left: 2px !important; font-family: var(--rd-fh) !important; }
.v38-sl.v38-sl-amber { color: #b45309 !important; }
.v38-sl.v38-sl-green { color: #22863a !important; }

/* 30.13 Chain composição física */
.v45r-card .v38-chain, .v23-inline-apt-card .v38-chain { display: flex !important; align-items: flex-start !important; gap: 5px !important; flex-wrap: wrap !important; padding: 10px !important; background: rgba(0,0,0,0.022) !important; border-radius: 10px !important; margin-bottom: 10px !important; border: 0.5px solid rgba(0,0,0,0.05) !important; }
.v45r-card .v38-cn, .v23-inline-apt-card .v38-cn { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; padding: 7px 8px !important; background: rgba(0,0,0,0.042) !important; border: 0.5px solid rgba(0,0,0,0.10) !important; border-radius: 8px !important; flex: 1 !important; min-width: 80px !important; }
.v38-cn > span { font-size: 8px !important; color: #888 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; font-weight: 600 !important; margin-bottom: 4px !important; font-family: var(--rd-fh) !important; line-height: 1.3 !important; }
.v38-cn > strong { font-size: 13px !important; font-weight: 500 !important; color: #1a1a1a !important; font-family: var(--rd-fm) !important; }
.v38-cn > em { font-size: 8px !important; color: #aaa !important; font-style: normal !important; margin-top: 2px !important; line-height: 1.3 !important; }
.v38-cn.v38-cn-nc { background: rgba(0,0,0,0.018) !important; border-style: dashed !important; }
.v38-cn.v38-cn-res { background: rgba(34,134,58,0.08) !important; border-color: rgba(34,134,58,0.22) !important; flex: 0 0 auto !important; }
.v38-cn.v38-cn-res > strong { color: #22863a !important; font-size: 18px !important; font-weight: 600 !important; }
.v38-cop { font-size: 15px !important; color: #bbb !important; align-self: center !important; flex-shrink: 0 !important; }

/* 30.14 Iter derivação de pavimentos */
.v45r-card .v38-iter, .v23-inline-apt-card .v38-iter { display: flex !important; align-items: center !important; gap: 5px !important; flex-wrap: wrap !important; padding: 10px !important; background: rgba(0,0,0,0.022) !important; border-radius: 10px !important; margin-bottom: 10px !important; border: 0.5px solid rgba(0,0,0,0.05) !important; }
.v45r-card .v38-ic, .v23-inline-apt-card .v38-ic { display: flex !important; flex-direction: column !important; align-items: center !important; padding: 7px 10px !important; background: rgba(0,0,0,0.042) !important; border: 0.5px solid rgba(0,0,0,0.10) !important; border-radius: 8px !important; }
.v38-ic > span { font-size: 8px !important; color: #888 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; font-weight: 600 !important; margin-bottom: 4px !important; font-family: var(--rd-fh) !important; }
.v38-ic > strong { font-size: 13px !important; font-weight: 500 !important; color: #1a1a1a !important; font-family: var(--rd-fm) !important; }
.v38-ic > em { font-size: 8px !important; color: #aaa !important; font-style: normal !important; margin-top: 2px !important; }
.v38-iop { font-size: 15px !important; color: #bbb !important; flex-shrink: 0 !important; }
.v45r-card .v38-ires, .v23-inline-apt-card .v38-ires { display: flex !important; flex-direction: column !important; align-items: center !important; padding: 8px 14px !important; background: rgba(34,134,58,0.08) !important; border: 0.5px solid rgba(34,134,58,0.22) !important; border-radius: 8px !important; }
.v38-ibadge { font-size: 10px !important; font-weight: 600 !important; padding: 2px 8px !important; border-radius: 6px !important; margin-bottom: 3px !important; font-family: var(--rd-fh) !important; }
.v38-ibadge-ok  { background: #d1fae5 !important; color: #065f46 !important; }
.v38-ibadge-warn { background: #fef3c7 !important; color: #92400e !important; }
.v38-iter-note { font-size: 10px !important; color: #888 !important; line-height: 1.5 !important; padding: 6px 10px !important; background: rgba(0,0,0,0.02) !important; border-radius: 8px !important; margin-bottom: 8px !important; font-family: var(--rd-fb) !important; }

/* 30.15 Badge tipologia */
.v38-tip-badge { font-size: 10px !important; font-weight: 600 !important; letter-spacing: 0.04em !important; padding: 3px 10px !important; border-radius: 6px !important; background: #dbeafe !important; color: #1e40af !important; flex-shrink: 0 !important; font-family: var(--rd-fh) !important; }

/* 30.16 Térreo */
.v38-terreo-params { display: flex !important; flex-wrap: wrap !important; gap: 5px !important; margin-bottom: 8px !important; align-items: center !important; }
.v38-zona-badge { font-size: 10px !important; font-weight: 700 !important; padding: 3px 10px !important; border-radius: 6px !important; background: rgba(0,0,0,0.07) !important; color: #555 !important; letter-spacing: 0.05em !important; font-family: var(--rd-fh) !important; }
.v38-tp-pill { font-size: 10px !important; font-weight: 500 !important; padding: 3px 10px !important; border-radius: 6px !important; }
.v38-ok-pill   { background: #d1fae5 !important; color: #065f46 !important; }
.v38-warn-pill { background: #fef3c7 !important; color: #92400e !important; }
.v38-stbar-wrap { margin-bottom: 10px !important; }
.v38-stbar-label { font-size: 9px !important; color: #888 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; font-weight: 600 !important; margin-bottom: 4px !important; font-family: var(--rd-fh) !important; }
.v38-stbar { display: flex !important; height: 8px !important; max-height: 8px !important; border-radius: 4px !important; overflow: hidden !important; border: none !important; gap: 1px !important; }
.v38-stbar-seg { display: flex !important; align-items: center !important; justify-content: center !important; font-size: 0 !important; color: transparent !important; overflow: hidden !important; white-space: nowrap !important; height: 8px !important; max-height: 8px !important; padding: 0 !important; min-height: 0 !important; }
.v38-s-nucleo  { background: #1e293b !important; }
.v38-s-tec     { background: #8b5cf6 !important; }
.v38-s-coberto { background: #f59e0b !important; }
.v38-s-desc    { background: #10b981 !important; }
.v38-stbar-legend { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin-top: 5px !important; }
.v38-stbar-leg { display: flex !important; align-items: center !important; gap: 4px !important; font-size: 9px !important; color: #888 !important; font-family: var(--rd-fb) !important; }
.v38-stbar-dot { width: 8px !important; height: 8px !important; border-radius: 2px !important; flex-shrink: 0 !important; }
.v38-terreo-dist { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)) !important; gap: 8px !important; }
.v38-terreo-dist .v38-td,
.v45r-card .v38-td,
.v23-inline-apt-card .v38-td,
.v38-td { padding: 3px 6px !important; border-radius: 6px !important; text-align: center !important; border: 0.5px solid rgba(0,0,0,0.10) !important; min-height: 0 !important; line-height: 1.2 !important; }
.v38-td-nc2  { background: rgba(0,0,0,0.025) !important; }
.v38-td-comp { background: rgba(180,83,9,0.05) !important; border-color: rgba(180,83,9,0.16) !important; }
.v38-td-nc   { background: rgba(34,134,58,0.05) !important; border-color: rgba(34,134,58,0.14) !important; }
.v38-td-icon  { display: none !important; }
.v38-terreo-dist .v38-td-label,
.v38-td-label { font-size: 7px !important; color: #888 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; font-weight: 600 !important; margin: 0 !important; padding: 0 !important; font-family: var(--rd-fh) !important; line-height: 1.1 !important; }
.v38-terreo-dist .v38-td-val,
.v38-td-val   { font-size: 11px !important; font-weight: 500 !important; color: #1a1a1a !important; font-family: var(--rd-fm) !important; line-height: 1.1 !important; margin: 0 !important; padding: 0 !important; }
.v38-td-sub   { display: none !important; }

/* 30.17 Warnings */
.v19-lotdims-warning { font-size: 11px !important; color: #92400e !important; background: rgba(234,179,8,0.08) !important; border: 0.5px solid rgba(234,179,8,0.22) !important; border-radius: 8px !important; padding: 6px 10px !important; margin-top: 8px !important; box-shadow: none !important; }
.v19-lotdims-warning.is-neutral { color: #888 !important; background: rgba(0,0,0,0.03) !important; border-color: rgba(0,0,0,0.07) !important; }

/* ── §31 · Cards da esquerda — Resumo, Resultado, Incentivos ──────────
   Aplica glass + pill-field sobre os cards existentes da coluna esquerda.
   Zero impacto em IDs ou engines. Só visual.
   ──────────────────────────────────────────────────────────────────── */

/* 31.1 Resumo do negócio — card glass */
.v45r-resumo {
  background: rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 0.5px solid rgba(255,255,255,0.85) !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), inset 0 1px 0 rgba(255,255,255,0.9) !important;
  padding: 0 !important;
  margin: 0 0 14px 0 !important;
}
.v45r-resumo-inner {
  padding: 16px 18px !important;
}

/* 31.2 Resumo — título */
.v45r-resumo-inner > div:first-child {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
  font-family: var(--rd-fh, -apple-system, sans-serif) !important;
}

/* 31.3 Resumo — selects (Bairro, Zona, Padrão) */
.rn-row1 {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 8px !important;
  margin-bottom: 12px !important;
}
.rn-label {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #888 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  font-family: var(--rd-fh, -apple-system, sans-serif) !important;
}
.rn-select {
  width: 100% !important;
  height: 42px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  padding: 0 28px 0 12px !important;
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.10), inset 0 -1px 0 rgba(255,255,255,0.60), 0 1px 0 rgba(255,255,255,0.80) !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 10px center !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  font-family: var(--rd-fm, -apple-system, sans-serif) !important;
  outline: none !important;
}

/* 31.4 Resumo — row2: Valor Total + Preço m² + Preço INC + Área */
.rn-row2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin-bottom: 12px !important;
}
.rn-total-hero {
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.10), inset 0 -1px 0 rgba(255,255,255,0.60), 0 1px 0 rgba(255,255,255,0.80) !important;
  padding: 10px 14px !important;
}
.rn-total-val {
  font-size: 20px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  font-family: var(--rd-fm, -apple-system, sans-serif) !important;
}
.rn-matriz-link {
  font-size: 11px !important;
  color: #aaa !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  cursor: pointer !important;
  margin-top: 2px !important;
  display: block !important;
}

/* 31.5 Resumo — stat fields e inputs */
.rn-field {
  min-width: 0 !important;
}
.rn-stat,
.rn-input-readonly,
.rn-input {
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.10), inset 0 -1px 0 rgba(255,255,255,0.60), 0 1px 0 rgba(255,255,255,0.80) !important;
  padding: 10px 14px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  font-family: var(--rd-fm, -apple-system, sans-serif) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.rn-input {
  outline: none !important;
  cursor: text !important;
}

/* 31.6 Resumo — barras dinheiro/permuta */
.rn-row3 {
  margin-bottom: 10px !important;
}
.rn-bar-head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 4px !important;
}
.rn-bar-label {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #888 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-family: var(--rd-fh, -apple-system, sans-serif) !important;
}
.rn-bar-vals {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
}
.rn-bar-track {
  height: 6px !important;
  border-radius: 3px !important;
  background: rgba(0,0,0,0.08) !important;
  overflow: hidden !important;
}
.rn-bar-fill {
  height: 100% !important;
  border-radius: 3px !important;
  background: #22863a !important;
}
.rn-bar-fill--permuta {
  opacity: 0.5 !important;
}

/* 31.7 Resumo — intermediação */
.rn-row4 {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 8px 0 0 0 !important;
  border-top: 0.5px solid rgba(0,0,0,0.06) !important;
  margin-top: 10px !important;
}
.rn-intermediacao-label {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #888 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-family: var(--rd-fh, -apple-system, sans-serif) !important;
}
.rn-intermediacao-val {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  font-family: var(--rd-fm, -apple-system, sans-serif) !important;
}

/* 31.8 Result strips — glass card */
.result-strip {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  margin: 14px 0 !important;
}
.strip-card {
  background: rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 0.5px solid rgba(255,255,255,0.85) !important;
  border-radius: 16px !important;
  padding: 16px 18px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}
.strip-label {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #888 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  font-family: var(--rd-fh, -apple-system, sans-serif) !important;
}
.strip-value {
  font-size: 26px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  font-family: var(--rd-fm, -apple-system, sans-serif) !important;
}
.strip-value.gain {
  background: none !important;
  color: #22863a !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  display: block !important;
}
.strip-sub {
  font-size: 11px !important;
  color: #aaa !important;
  margin-top: 4px !important;
}

/* 31.8b Esconder mapa e índice na aba BASE — IDs preservados no DOM */
.dev-map {
  display: none !important;
}
#indice,
#indice + .grid-3 {
  display: none !important;
}
/* Esconder tabela lote-a-lote + botão adicionar + totais */
#tabela_lotes,
.table-lote-a-lote,
[onclick*="adicionarLote"],
.v45r-lote-table {
  display: none !important;
}

/* 31.9 Incentivos — glass card + toggle redesign */
.only-dev > .section-title + .card,
#incentivos_incorporadora {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* 31.10 Incentivo items — mockup style */
.incentivo-item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 8px 0 !important;
  border-bottom: 0.5px solid rgba(0,0,0,0.06) !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
}
.incentivo-item:last-child {
  border-bottom: none !important;
}
.incentivo-label {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  flex: 1 !important;
}
.incentivo-item.is-on {
  background: transparent !important;
  border-left: none !important;
  border-radius: 0 !important;
  padding: 8px 0 !important;
  margin: 0 !important;
}
.incentivo-item.is-on .incentivo-label {
  color: #1a1a1a !important;
  font-weight: 500 !important;
}
.incentivo-item:not(.is-on) .incentivo-label {
  color: #aaa !important;
}
.incentivo-valor {
  font-size: 11px !important;
  color: #888 !important;
  margin-right: 12px !important;
  font-weight: 400 !important;
}
.incentivo-item.is-on .incentivo-valor {
  color: #22863a !important;
  font-weight: 500 !important;
}
.incentivo-item:not(.is-on) .incentivo-valor {
  color: #aaa !important;
}

/* 31.11 Toggle switch (checkbox visual) */
.incentivo-check-wrap {
  width: 40px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
  position: relative !important;
}
.incentivo-check-ui {
  position: absolute !important;
  inset: 0 !important;
  width: 40px !important;
  height: 22px !important;
  border-radius: 11px !important;
  background: rgba(0,0,0,0.15) !important;
  cursor: pointer !important;
  transition: background 0.18s !important;
  border: none !important;
  box-shadow: none !important;
}
.incentivo-check-ui::after {
  content: '' !important;
  position: absolute !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  background: #fff !important;
  top: 2px !important;
  left: 2px !important;
  transition: transform 0.18s cubic-bezier(.22,.9,.24,1) !important;
  transform: translateX(0) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.18) !important;
}
.incentivo-checkbox:checked + .incentivo-check-ui {
  background: #22863a !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
.incentivo-checkbox:checked + .incentivo-check-ui::after {
  transform: translateX(18px) !important;
  left: 2px !important;
}

/* 31.12 Incentivo headline */
.incentivo-headline {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 8px !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}
.incentivo-headline-title {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  font-family: var(--rd-fh, -apple-system, sans-serif) !important;
}
.incentivo-headline-total {
  font-size: 10px !important;
  font-weight: 600 !important;
  padding: 3px 10px !important;
  border-radius: 6px !important;
  background: #d1fae5 !important;
  color: #065f46 !important;
}

/* ── §32 · Resumo compacto + Resultado Estimado ───────────────────── */

/* 32.1 Row2a: Valor Total + Área Total (2 colunas) */
.rn-row2a {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin-bottom: 8px !important;
}

/* 32.2 Row2b: Preço M² + Intermediação (2 colunas) */
.rn-row2b {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin-bottom: 12px !important;
}

/* 32.3 Pill stat (reusável) */
.rn-pill-stat {
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.10), inset 0 -1px 0 rgba(255,255,255,0.60), 0 1px 0 rgba(255,255,255,0.80) !important;
  padding: 10px 14px !important;
}
.rn-hint {
  font-size: 11px !important;
  color: #aaa !important;
  margin-top: 2px !important;
}

/* 32.4 Input inline (preço inc dentro do hint) */
.rn-input-inline {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  width: 90px !important;
  outline: none !important;
  font-family: var(--rd-fm, -apple-system, sans-serif) !important;
}
.rn-input-hidden {
  display: none !important;
}

/* 32.5 Resultado Estimado — card container */
.v45r-resultado-card {
  background: rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 0.5px solid rgba(255,255,255,0.85) !important;
  border-radius: 16px !important;
  padding: 16px 18px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), inset 0 1px 0 rgba(255,255,255,0.9) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
.v45r-resultado-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
}
.v45r-resultado-title {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  font-family: var(--rd-fh, -apple-system, sans-serif) !important;
}
.v45r-resultado-sub {
  font-size: 11px !important;
  color: #aaa !important;
  margin-top: 2px !important;
}
.v45r-resultado-badge {
  font-size: 10px !important;
  font-weight: 600 !important;
  padding: 3px 10px !important;
  border-radius: 6px !important;
  background: rgba(0,0,0,0.07) !important;
  color: #555 !important;
  flex-shrink: 0 !important;
}

/* 32.6 Resultado — top row (VGV + Potencial, 2 col) */
.v45r-resultado-row-top {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
}
.v45r-resultado-card .strip-card--hero {
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.10), inset 0 -1px 0 rgba(255,255,255,0.60), 0 1px 0 rgba(255,255,255,0.80) !important;
  padding: 12px 14px !important;
  backdrop-filter: none !important;
}
.v45r-resultado-card .strip-card--hero .strip-value {
  font-size: 24px !important;
}
.v45r-resultado-card .strip-card--hero .strip-value.gain {
  font-size: 24px !important;
  color: #22863a !important;
  background: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* 32.7 Resultado — bottom row (Unidades + M² + Ticket, 3 col) */
.v45r-resultado-row-bot {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 8px !important;
}
.v45r-resultado-card .strip-card--compact {
  background: rgba(0,0,0,0.042) !important;
  border: 0.5px solid rgba(0,0,0,0.10) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.10), inset 0 -1px 0 rgba(255,255,255,0.60), 0 1px 0 rgba(255,255,255,0.80) !important;
  padding: 10px 12px !important;
  text-align: center !important;
  backdrop-filter: none !important;
}
.v45r-resultado-card .strip-card--compact .strip-value {
  font-size: 20px !important;
}
.v45r-resultado-card .strip-card--compact .strip-sub {
  font-size: 10px !important;
}


/* ══════════════════════════════════════════════════════════════════
   §51 Negociações — Cards glassmorphism (v51, mockup v4)
   Seletores duplos com #v14-panel-neg para especificidade.
   ══════════════════════════════════════════════════════════════════ */

/* ── Paleta de cores — escopo da aba Negociações ── */
#v14-panel-neg {
  --neg-cream:       #eeecea;
  --neg-cream2:      #e6e3e0;
  --neg-ink:         #1a1a18;
  --neg-ink2:        #3d3d3a;
  --neg-muted:       #8a8880;
  --neg-green:       #2d7a58;
  --neg-green-light: #3d9e72;
  --neg-green-bg:    rgba(45,122,88,0.10);
  --neg-green-text:  #1e5c40;
  --neg-amber:       #d4820a;
  --neg-amber-bg:    rgba(212,130,10,0.10);
  --neg-amber-text:  #8a5200;
  --neg-red:         #c94040;
  --neg-red-bg:      rgba(201,64,64,0.09);
  --neg-red-text:    #8b2020;
  --neg-blue:        #2563a8;
  --neg-blue-bg:     rgba(37,99,168,0.09);
  --neg-glass:       rgba(255,255,255,0.48);
  --neg-glass2:      rgba(255,255,255,0.32);
  --neg-b-white:     rgba(255,255,255,0.62);
  --neg-b-soft:      rgba(0,0,0,0.07);
  --neg-green-fill:  rgba(45,122,88,0.11);
  --neg-green-border:rgba(45,122,88,0.35);
  --neg-green-glow:  rgba(45,122,88,0.22);
  --neg-amber-fill:  rgba(201,122,16,0.10);
  --neg-amber-border:rgba(201,122,16,0.38);
  --neg-amber-glow:  rgba(201,122,16,0.18);
  --neg-red-fill:    rgba(201,64,64,0.08);
  --neg-red-border:  rgba(201,64,64,0.35);
  /* ── Sem fundo próprio — herda do app ── */
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* ── Wrapper ── */
#v14-panel-neg .neg-v51-wrap {
  padding: 0;
  font-family: 'Jost', sans-serif;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

/* ── Top bar ── */
#v14-panel-neg .neg-top-bar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 18px 22px 14px;
  border-bottom: 0.5px solid rgba(0,0,0,0.07);
  background: transparent;
}
#v14-panel-neg .neg-top-meta {
  font-size: 10px;
  font-weight: 600;
  color: var(--neg-muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 4px;
}
#v14-panel-neg .neg-top-row {
  display: flex;
  align-items: baseline;
  gap: 14px;
}
#v14-panel-neg .neg-top-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--neg-ink);
}
#v14-panel-neg .neg-top-total {
  font-size: 14px;
  font-weight: 700;
  color: var(--neg-green);
}
#v14-panel-neg .neg-filters {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}
#v14-panel-neg .neg-pill-btn {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  padding: 5px 13px;
  border-radius: 20px;
  border: 0.5px solid rgba(0,0,0,0.10);
  background: rgba(255,255,255,0.52);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 1px 0 rgba(255,255,255,0.7) inset;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--neg-ink2);
  transition: background 0.12s;
  font-family: 'Jost', inherit;
  line-height: 1;
}
#v14-panel-neg .neg-pill-btn:hover { background: rgba(255,255,255,0.65); }
#v14-panel-neg .neg-pill-btn.neg-fil-off { opacity: 0.4; filter: saturate(0); }
#v14-panel-neg .neg-sdot { width: 7px; height: 7px; border-radius: 50%; display: inline-block; flex-shrink: 0; }
#v14-panel-neg .neg-dg { background: var(--neg-green); }
#v14-panel-neg .neg-da { background: var(--neg-amber); }
#v14-panel-neg .neg-dr { background: var(--neg-red); }
#v14-panel-neg .neg-live-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--neg-green);
  animation: neg51pulse 2s infinite;
  display: inline-block; flex-shrink: 0;
}
@keyframes neg51pulse { 0%,100%{opacity:1} 50%{opacity:0.3} }

/* ── Body shell ── */
#v14-panel-neg .neg-v51-body {
  padding: 14px 22px 32px;
  overflow-x: auto;
  overflow-y: auto;
  flex: 1;
  min-width: 0;
}
#v14-panel-neg .neg-v51-body::-webkit-scrollbar { height: 4px; width: 4px; }
#v14-panel-neg .neg-v51-body::-webkit-scrollbar-thumb { background: rgba(0,0,0,.14); border-radius: 99px; }

/* ── 15-col grid (shared by header, cards, totals) ── */
#v14-panel-neg .neg-col-grid {
  display: grid !important;
  grid-template-columns:
    88px 36px 80px 48px 52px 96px 80px 66px 42px 92px 114px 70px 66px 64px 1fr !important;
  gap: 0 !important;
  align-items: center !important;
  min-width: 980px;
}

/* ── Column headers ── */
#v14-panel-neg .neg-col-head {
  padding: 5px 14px 6px;
  margin-bottom: 2px;
}
#v14-panel-neg .neg-ch {
  font-size: 9px;
  font-weight: 600;
  color: var(--neg-muted);
  text-transform: uppercase;
  letter-spacing: 0.07em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#v14-panel-neg .neg-ch-l { text-align: left; }
#v14-panel-neg .neg-ch-c { text-align: center; }

/* ── Card ── */
#v14-panel-neg .neg-card {
  background: var(--neg-glass) !important;
  backdrop-filter: blur(20px) saturate(1.35) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.35) !important;
  border: 0.5px solid var(--neg-b-white) !important;
  border-radius: 12px !important;
  margin-bottom: 5px !important;
  padding: 10px 14px !important;
  cursor: pointer !important;
  transition: all 0.15s !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.55) inset !important;
}
#v14-panel-neg .neg-card:hover {
  background: rgba(255,255,255,0.60) !important;
  border-color: rgba(255,255,255,0.8) !important;
}
#v14-panel-neg .neg-card.open {
  background: rgba(255,255,255,0.65) !important;
  border-color: rgba(255,255,255,0.85) !important;
  box-shadow: 0 2px 16px rgba(0,0,0,0.06), 0 1px 0 rgba(255,255,255,0.8) inset !important;
  border-radius: 12px 12px 0 0 !important;
  margin-bottom: 0 !important;
}

/* ── Card heatmap — cor por status ── */
#v14-panel-neg .neg-card.sg {
  background: var(--neg-green-fill) !important;
  border-color: var(--neg-green-border) !important;
  box-shadow: 0 0 0 1px rgba(45,122,88,0.08), 0 0 16px var(--neg-green-glow), 0 1px 0 rgba(255,255,255,0.5) inset !important;
  animation: neg-green-breathe 3s ease-in-out infinite;
}
@keyframes neg-green-breathe {
  0%,100% { box-shadow: 0 0 0 1px rgba(45,122,88,0.08), 0 0 12px rgba(45,122,88,0.18), 0 1px 0 rgba(255,255,255,0.5) inset; }
  50%     { box-shadow: 0 0 0 1px rgba(45,122,88,0.14), 0 0 28px rgba(45,122,88,0.32), 0 1px 0 rgba(255,255,255,0.5) inset; }
}
#v14-panel-neg .neg-card.sg:hover {
  background: rgba(45,122,88,0.16) !important;
  filter: brightness(1.04);
}
#v14-panel-neg .neg-card.sa {
  background: var(--neg-amber-fill) !important;
  border-color: var(--neg-amber-border) !important;
  box-shadow: 0 0 0 1px rgba(201,122,16,0.08), 0 0 16px var(--neg-amber-glow), 0 1px 0 rgba(255,255,255,0.45) inset !important;
}
#v14-panel-neg .neg-card.sa:hover {
  background: rgba(201,122,16,0.16) !important;
  filter: brightness(1.04);
}
#v14-panel-neg .neg-card.sr {
  background: var(--neg-red-fill) !important;
  border-color: var(--neg-red-border) !important;
  box-shadow: 0 0 0 1px rgba(201,64,64,0.07), 0 1px 0 rgba(255,255,255,0.4) inset !important;
}
#v14-panel-neg .neg-card.sr:hover {
  background: rgba(201,64,64,0.12) !important;
  filter: brightness(1.04);
}

/* ── Card cells ── */
#v14-panel-neg .neg-ce {
  font-size: 11px;
  font-family: 'Jost', sans-serif;
  color: var(--neg-ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
#v14-panel-neg .neg-ce.neg-m  { color: var(--neg-muted); }
#v14-panel-neg .neg-ce.neg-b  { font-weight: 600; }
#v14-panel-neg .neg-ce.neg-g  { color: var(--neg-green); font-weight: 600; }
#v14-panel-neg .neg-ce.neg-xs { font-size: 10px; }
#v14-panel-neg .neg-ce.neg-red { color: var(--neg-red); font-weight: 600; }
#v14-panel-neg .neg-ce-l { text-align: left; padding-right: 6px; }
#v14-panel-neg .neg-ce-c { text-align: center; padding: 0 4px; }

/* ── Inline numeric inputs inside cards — quase invisíveis, como no mockup ── */
#v14-panel-neg .neg-card .neg-num-input,
#v14-panel-neg .neg-card input[data-neg-permm2],
#v14-panel-neg .neg-card input[data-neg-dinheiro],
#v14-panel-neg .neg-card input[data-neg-aluguel],
#v14-panel-neg .neg-card select[data-neg-meses] {
  font-size: 11px !important;
  font-weight: 600 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 0.5px solid transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  text-align: center !important;
  outline: none !important;
  color: var(--neg-ink) !important;
  font-family: 'Jost', inherit !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}
#v14-panel-neg .neg-card input[data-neg-permm2]:hover,
#v14-panel-neg .neg-card input[data-neg-dinheiro]:hover,
#v14-panel-neg .neg-card input[data-neg-aluguel]:hover {
  border-bottom-color: rgba(0,0,0,0.18) !important;
}
#v14-panel-neg .neg-card .neg-num-input:focus,
#v14-panel-neg .neg-card input[data-neg-permm2]:focus,
#v14-panel-neg .neg-card input[data-neg-dinheiro]:focus,
#v14-panel-neg .neg-card input[data-neg-aluguel]:focus {
  border-bottom-color: var(--neg-green) !important;
  background: rgba(255,255,255,0.55) !important;
  border-radius: 4px !important;
  padding: 2px 4px !important;
}

/* ── Status heatmap column ── */
#v14-panel-neg .neg-status-col {
  display: flex; align-items: center; justify-content: center;
}
#v14-panel-neg .neg-status-bar {
  width: 28px; height: 28px; border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
}
#v14-panel-neg .neg-status-bar.sg { background: var(--neg-green-bg); }
#v14-panel-neg .neg-status-bar.sa { background: var(--neg-amber-bg); }
#v14-panel-neg .neg-status-bar.sr { background: var(--neg-red-bg); }
#v14-panel-neg .neg-status-icon { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
#v14-panel-neg .neg-status-icon.sg { background: var(--neg-green); }
#v14-panel-neg .neg-status-icon.sa { background: var(--neg-amber); }
#v14-panel-neg .neg-status-icon.sr { background: var(--neg-red); }

/* ── Owner cell ── */
#v14-panel-neg .neg-owner-cell { display: flex; flex-direction: column; gap: 3px; padding-left: 4px; }
#v14-panel-neg .neg-owner-name { font-size: 11px; font-weight: 600; color: var(--neg-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#v14-panel-neg .neg-owner-input {
  font-size: 11px !important; font-weight: 600 !important; color: var(--neg-ink) !important;
  font-family: 'Jost', inherit !important;
  background: transparent !important; border: none !important; border-bottom: 0.5px solid transparent !important;
  border-radius: 0 !important; padding: 0 !important; outline: none !important;
  width: 100% !important; box-shadow: none !important;
}
#v14-panel-neg .neg-owner-input:hover { border-bottom-color: rgba(0,0,0,0.18) !important; }
#v14-panel-neg .neg-owner-input:focus { border-bottom-color: var(--neg-green) !important; background: rgba(255,255,255,0.55) !important; border-radius: 4px !important; padding: 2px 4px !important; }

/* ── Modal de confirmação glassmorphism ── */
#neg-confirm-modal {
  display: none;
  position: fixed; inset: 0; z-index: 9999;
  align-items: center; justify-content: center;
}
#neg-confirm-modal.neg-cm-open { display: flex; }
#neg-confirm-modal .neg-cm-backdrop {
  position: absolute; inset: 0;
  background: rgba(10,10,10,0.32);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
#neg-confirm-modal .neg-cm-dialog {
  position: relative; z-index: 1;
  background: rgba(255,255,255,0.72);
  backdrop-filter: blur(32px) saturate(1.6);
  -webkit-backdrop-filter: blur(32px) saturate(1.6);
  border: 0.5px solid rgba(255,255,255,0.85);
  border-radius: 18px;
  box-shadow: 0 8px 40px rgba(0,0,0,0.14), 0 1px 0 rgba(255,255,255,0.9) inset;
  padding: 28px 28px 22px;
  width: 340px; max-width: calc(100vw - 40px);
  font-family: 'Jost', sans-serif;
  animation: neg-cm-in 0.18s cubic-bezier(0.34,1.56,0.64,1);
}
@keyframes neg-cm-in {
  from { opacity: 0; transform: scale(0.92) translateY(8px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}
#neg-confirm-modal .neg-cm-title {
  font-size: 15px; font-weight: 700;
  color: #1a1a18; margin-bottom: 10px; line-height: 1.3;
}
#neg-confirm-modal .neg-cm-msg {
  font-size: 13px; font-weight: 400;
  color: #5a5a58; line-height: 1.55; margin-bottom: 22px;
}
#neg-confirm-modal .neg-cm-actions {
  display: flex; gap: 8px; justify-content: flex-end;
}
#neg-confirm-modal .neg-cm-btn {
  font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 600;
  padding: 9px 18px; border-radius: 10px; border: none; cursor: pointer;
  transition: all 0.12s; line-height: 1;
}
#neg-confirm-modal .neg-cm-cancel {
  background: rgba(0,0,0,0.06); color: #3d3d3a;
}
#neg-confirm-modal .neg-cm-cancel:hover { background: rgba(0,0,0,0.10); }
#neg-confirm-modal .neg-cm-confirm {
  background: #1a1a18; color: #fff;
}
#neg-confirm-modal .neg-cm-confirm:hover { background: #2d2d2a; }
#neg-confirm-modal .neg-cm-danger {
  background: #c94040 !important; color: #fff !important;
}
#neg-confirm-modal .neg-cm-danger:hover { background: #b03535 !important; }

/* ── Totals row ── */
#v14-panel-neg .neg-totals {
  background: rgba(255,255,255,0.28) !important;
  backdrop-filter: blur(12px) !important;
  border: 0.5px solid rgba(255,255,255,0.48) !important;
  border-radius: 10px !important;
  padding: 9px 14px !important;
  margin-top: 8px !important;
}
#v14-panel-neg .neg-totals .neg-g { color: var(--neg-green) !important; font-weight: 700 !important; }
#v14-panel-neg .neg-totals .neg-b { font-weight: 700 !important; }

/* ── CRM Panel ── */
#v14-panel-neg .neg-panel {
  display: none;
  background: rgba(255,255,255,0.52);
  backdrop-filter: blur(28px) saturate(1.5);
  -webkit-backdrop-filter: blur(28px) saturate(1.5);
  border: 0.5px solid rgba(255,255,255,0.78);
  border-radius: 0 0 16px 16px;
  margin-bottom: 8px;
  overflow: hidden;
  box-shadow: 0 2px 24px rgba(0,0,0,0.06), 0 1px 0 rgba(255,255,255,0.9) inset;
  min-width: 980px;
}
#v14-panel-neg .neg-panel.neg-panel-open { display: block !important; }

#v14-panel-neg .neg-panel-hdr {
  padding: 14px 20px;
  border-bottom: 0.5px solid rgba(255,255,255,0.5);
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: rgba(255,255,255,0.32);
}
#v14-panel-neg .neg-panel-hdr-name {
  font-size: 14px; font-weight: 700; color: var(--neg-ink);
  display: flex; align-items: center; gap: 9px;
}
#v14-panel-neg .neg-panel-hdr-sub { font-size: 11px; color: var(--neg-muted); margin-top: 3px; }
#v14-panel-neg .neg-panel-hdr-right { display: flex; gap: 8px; align-items: center; }
#v14-panel-neg .neg-rem-btn {
  font-size: 10px; color: var(--neg-red); background: none;
  border: 0.5px solid rgba(201,64,64,0.28); border-radius: 8px;
  padding: 5px 12px; cursor: pointer; font-family: inherit; font-weight: 500;
}
#v14-panel-neg .neg-status-badge {
  font-size: 9px; font-weight: 700; letter-spacing: 0.05em;
  padding: 4px 12px; border-radius: 20px; cursor: pointer;
  appearance: none; -webkit-appearance: none;
  font-family: inherit; border: 0.5px solid transparent;
}
#v14-panel-neg .neg-sb-q { background: var(--neg-green-bg); color: var(--neg-green-text); border-color: rgba(45,122,88,0.2); }
#v14-panel-neg .neg-sb-p { background: var(--neg-amber-bg); color: var(--neg-amber-text); border-color: rgba(212,130,10,0.2); }
#v14-panel-neg .neg-sb-n { background: var(--neg-red-bg); color: var(--neg-red-text); border-color: rgba(201,64,64,0.2); }

/* ── Panel 3-col body ── */
#v14-panel-neg .neg-panel-body {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
}
#v14-panel-neg .neg-pcol {
  padding: 18px 20px;
  border-right: 0.5px solid rgba(255,255,255,0.45);
}
#v14-panel-neg .neg-pcol:last-child { border-right: none; }
#v14-panel-neg .neg-pct {
  font-size: 9px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--neg-muted); margin-bottom: 16px;
}

/* ── CRM inputs ── */
#v14-panel-neg .neg-frow { display: flex; flex-direction: column; gap: 3px; margin-bottom: 12px; }
#v14-panel-neg .neg-fl { font-size: 9px; color: var(--neg-muted); font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }
#v14-panel-neg .neg-finput {
  background: rgba(255,255,255,0.58);
  backdrop-filter: blur(8px);
  border: 0.5px solid rgba(255,255,255,0.72);
  border-radius: 8px; padding: 7px 10px;
  font-size: 12px; color: var(--neg-ink); width: 100%;
  font-family: inherit; outline: none;
  box-shadow: 0 1px 0 rgba(255,255,255,0.55) inset;
  transition: border-color 0.12s, background 0.12s;
  box-sizing: border-box;
}
#v14-panel-neg .neg-finput:focus { background: rgba(255,255,255,0.78); border-color: rgba(45,122,88,0.38); }
#v14-panel-neg .neg-finput::placeholder { color: var(--neg-muted); }
#v14-panel-neg .neg-ftextarea { height: 64px; resize: none; }
#v14-panel-neg .neg-link-row {
  display: flex; align-items: center; gap: 8px;
  padding: 7px 10px;
  background: rgba(255,255,255,0.45);
  border: 0.5px solid rgba(255,255,255,0.65);
  border-radius: 8px; cursor: pointer;
}
#v14-panel-neg .neg-link-icon { width: 13px; height: 13px; flex-shrink: 0; color: var(--neg-muted); }
#v14-panel-neg .neg-link-text { font-size: 11px; color: var(--neg-blue); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ── Avaliação block ── */
#v14-panel-neg .neg-aval-block {
  background: rgba(45,122,88,0.07);
  border: 0.5px solid rgba(45,122,88,0.18);
  border-radius: 12px; padding: 13px 15px; margin-bottom: 14px;
}
#v14-panel-neg .neg-aval-top { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 3px; }
#v14-panel-neg .neg-aval-label { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--neg-green-text); }
#v14-panel-neg .neg-aval-val { font-size: 20px; font-weight: 800; color: var(--neg-green); letter-spacing: -0.02em; }
#v14-panel-neg .neg-aval-base { font-size: 10px; color: var(--neg-muted); }
#v14-panel-neg .neg-aval-edit { display: flex; align-items: center; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 0.5px solid rgba(45,122,88,0.14); }
#v14-panel-neg .neg-aval-edit-label { font-size: 10px; color: var(--neg-ink2); white-space: nowrap; }
#v14-panel-neg .neg-aval-edit-input {
  background: rgba(255,255,255,0.7);
  border: 0.5px solid rgba(45,122,88,0.22);
  border-radius: 7px; padding: 5px 9px;
  font-size: 12px; font-weight: 700; color: var(--neg-green);
  width: 86px; font-family: inherit; text-align: right; outline: none;
}
#v14-panel-neg .neg-aval-edit-sfx { font-size: 10px; color: var(--neg-muted); }

/* ── Value rows ── */
#v14-panel-neg .neg-vrow { display: flex; justify-content: space-between; align-items: baseline; padding: 7px 0; border-bottom: 0.5px solid var(--neg-b-soft); }
#v14-panel-neg .neg-vrow:last-child { border-bottom: none; }
#v14-panel-neg .neg-vrow-sep { border-top: 0.5px solid rgba(0,0,0,0.09); margin-top: 4px; padding-top: 10px; }
#v14-panel-neg .neg-vl { font-size: 11px; color: var(--neg-muted); }
#v14-panel-neg .neg-vv { font-size: 11px; font-weight: 500; color: var(--neg-ink); }
#v14-panel-neg .neg-vv.neg-g { color: var(--neg-green); font-weight: 700; }
#v14-panel-neg .neg-vv.neg-b { font-weight: 700; }
#v14-panel-neg .neg-vv.neg-m { color: var(--neg-muted); }
#v14-panel-neg .neg-vv.neg-xs { font-size: 10px; }
#v14-panel-neg .neg-vv.neg-red { color: var(--neg-red); font-weight: 700; }

/* ── Timeline ── */
#v14-panel-neg .neg-tl-empty { font-size: 11px; color: var(--neg-muted); padding: 4px 0 12px; }

/* ── Movement form ── */
#v14-panel-neg .neg-mov-form { margin-top: 14px; padding-top: 14px; border-top: 0.5px solid var(--neg-b-soft); }
#v14-panel-neg .neg-mov-label { font-size: 9px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--neg-muted); margin-bottom: 9px; }
#v14-panel-neg .neg-mov-sel,
#v14-panel-neg .neg-mov-inp {
  width: 100%;
  background: rgba(255,255,255,0.55);
  border: 0.5px solid rgba(255,255,255,0.7);
  border-radius: 8px; padding: 7px 10px;
  font-size: 12px; color: var(--neg-ink); margin-bottom: 7px;
  font-family: inherit; outline: none;
  box-sizing: border-box;
}
#v14-panel-neg .neg-mov-inp::placeholder { color: var(--neg-muted); }
#v14-panel-neg .neg-mov-btn {
  background: var(--neg-green); color: #fff;
  border: none; border-radius: 8px;
  padding: 9px 16px; font-size: 12px; font-weight: 600;
  cursor: pointer; width: 100%; font-family: inherit;
  transition: background 0.12s;
}
#v14-panel-neg .neg-mov-btn:hover { background: #3d9e72; }

/* ── Remove inline ── */
#v14-panel-neg .neg-rem-inline { margin-top: 12px; padding-top: 11px; border-top: 0.5px solid var(--neg-b-soft); text-align: center; }
#v14-panel-neg .neg-rem-inline button {
  font-size: 10px; color: var(--neg-red); background: none;
  border: 0.5px solid rgba(201,64,64,0.22); border-radius: 8px;
  padding: 6px 14px; cursor: pointer; font-family: inherit; width: 100%;
}
#v14-panel-neg .neg-rem-inline p { font-size: 9px; color: var(--neg-muted); margin-top: 4px; }

/* ── Overrides: remove old table/drawer references that may bleed in ── */
#v14-panel-neg .neg-detail-row { display: none !important; }
#v14-panel-neg .neg-table-shell { display: none !important; }
