/* ==========================================================================
   CSS Variables & Reset
   ========================================================================== */
:root {
  --bg-primary: #0b0f17;
  --bg-secondary: rgba(21, 28, 44, 0.6);
  --bg-sidebar: #0f1422;
  --border-color: rgba(255, 255, 255, 0.08);
  --border-focus: #6366f1;
  
  --text-main: #f3f4f6;
  --text-muted: #9ca3af;
  
  --primary: #4f46e5;
  --primary-hover: #6366f1;
  --primary-glow: rgba(79, 70, 229, 0.35);
  
  --success: #10b981;
  --success-glow: rgba(16, 185, 129, 0.15);
  --danger: #ef4444;
  --danger-glow: rgba(239, 68, 68, 0.15);
  --warning: #f59e0b;
  --info: #06b6d4;
  
  --font-main: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-title: 'Outfit', sans-serif;
  
  --sidebar-width: 260px;
  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  
  --glass-bg: rgba(30, 41, 59, 0.45);
  --glass-border: rgba(255, 255, 255, 0.06);
  --glass-blur: blur(14px);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: var(--font-main);
  -webkit-font-smoothing: antialiased;
}

body {
  background-color: var(--bg-primary);
  color: var(--text-main);
  display: flex;
  min-height: 100vh;
  overflow-x: hidden;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: var(--bg-primary);
}
::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--primary);
}

/* ==========================================================================
   Sidebar Navigation
   ========================================================================== */
.sidebar {
  width: var(--sidebar-width);
  background-color: var(--bg-sidebar);
  border-right: 1px solid var(--border-color);
  display: flex;
  flex-direction: column;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 100;
  padding: 2rem 1.5rem;
}

.logo-container {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 3rem;
}

.logo-icon {
  background: linear-gradient(135deg, var(--primary), var(--primary-hover));
  color: #fff;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.25rem;
  box-shadow: 0 4px 15px var(--primary-glow);
}

.logo-container h1 {
  font-family: var(--font-title);
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: -0.5px;
  background: linear-gradient(to right, #ffffff, #a5b4fc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.nav-menu {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex-grow: 1;
}

.nav-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: none;
  border: none;
  color: var(--text-muted);
  padding: 0.85rem 1rem;
  border-radius: 12px;
  cursor: pointer;
  width: 100%;
  text-align: left;
  font-size: 0.95rem;
  font-weight: 500;
  transition: var(--transition-fast);
}

.nav-item i {
  width: 20px;
  height: 20px;
  stroke-width: 2;
  transition: var(--transition-fast);
}

.nav-item:hover {
  color: var(--text-main);
  background-color: rgba(255, 255, 255, 0.04);
}

.nav-item.active {
  color: #fff;
  background-color: var(--primary);
  box-shadow: 0 4px 20px var(--primary-glow);
}

.nav-item.active i {
  color: #fff;
}

.sidebar-footer {
  margin-top: auto;
  border-top: 1px solid var(--border-color);
  padding-top: 1.5rem;
}

.btn-update-prices {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-weight: 600;
  padding: 0.75rem;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--border-color);
  color: var(--text-main);
  border-radius: 10px;
  cursor: pointer;
  transition: var(--transition-fast);
}

.btn-update-prices:hover {
  background-color: var(--primary);
  border-color: var(--primary);
  box-shadow: 0 4px 15px var(--primary-glow);
}

.update-info {
  font-size: 0.75rem;
  color: var(--text-muted);
  text-align: center;
  margin-top: 0.5rem;
}

.mode-badge.consultation {
  border-color: rgba(99, 102, 241, 0.25);
  background: rgba(99, 102, 241, 0.08);
}

.mode-badge.consultation .badge-dot {
  background: #818cf8;
  box-shadow: 0 0 8px rgba(129, 140, 248, 0.65);
}

/* ==========================================================================
   Main Content Layout
   ========================================================================== */
.main-content {
  margin-left: var(--sidebar-width);
  flex-grow: 1;
  padding: 2.5rem;
  max-width: 1400px;
  width: calc(100% - var(--sidebar-width));
}

.main-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2.5rem;
}

.header-title h2 {
  font-family: var(--font-title);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.5px;
}

.header-title .subtitle {
  color: var(--text-muted);
  font-size: 0.95rem;
  margin-top: 0.25rem;
}

.header-actions {
  display: flex;
  gap: 1rem;
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.65rem 1.25rem;
  border-radius: 10px;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  transition: var(--transition-fast);
  border: none;
}

.btn i {
  width: 18px;
  height: 18px;
}

.btn-primary {
  background-color: var(--primary);
  color: #fff;
  box-shadow: 0 4px 14px var(--primary-glow);
}

.btn-primary:hover {
  background-color: var(--primary-hover);
  transform: translateY(-1px);
}

.btn-outline {
  background-color: transparent;
  border: 1px solid var(--border-color);
  color: var(--text-main);
}

.btn-outline:hover {
  background-color: rgba(255, 255, 255, 0.05);
  border-color: var(--text-muted);
}

.btn-danger {
  background-color: var(--danger);
  color: white;
}
.btn-danger:hover {
  background-color: #f87171;
}

/* Glassmorphism utility card */
.glass {
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.2);
}

/* ==========================================================================
   TAB: Visão Geral (Overview)
   ========================================================================== */
.tab-content {
  display: none;
  animation: fadeIn var(--transition-normal);
}

.tab-content.active {
  display: block;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Metrics Cards */
.metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1.5rem;
  margin-bottom: 2.5rem;
}

.metric-card {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
}

.metric-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: transparent;
}

.metric-card:hover {
  transform: translateY(-2px);
  transition: transform 0.2s ease;
  border-color: rgba(255, 255, 255, 0.12);
}

.metric-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}

.metric-label {
  color: var(--text-muted);
  font-size: 0.9rem;
  font-weight: 500;
}

.metric-icon-wrapper {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.metric-icon-wrapper i {
  width: 18px;
  height: 18px;
}

.metric-icon-wrapper.wallet { background-color: rgba(79, 70, 229, 0.15); color: var(--primary); }
.metric-icon-wrapper.trend { background-color: rgba(16, 185, 129, 0.15); color: var(--success); }
.metric-icon-wrapper.trend.negative { background-color: rgba(239, 68, 68, 0.15); color: var(--danger); }
.metric-icon-wrapper.invested { background-color: rgba(6, 182, 212, 0.15); color: var(--info); }
.metric-icon-wrapper.targets { background-color: rgba(245, 158, 11, 0.15); color: var(--warning); }

.metric-value {
  font-family: var(--font-title);
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: -0.5px;
  margin-bottom: 0.25rem;
}

.metric-subtext {
  font-size: 0.8rem;
  font-weight: 500;
}

.text-muted { color: var(--text-muted); }
.positive { color: var(--success) !important; }
.negative { color: var(--danger) !important; }

/* Dashboard Grid */
.dashboard-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
}

@media (max-width: 1024px) {
  .dashboard-grid {
    grid-template-columns: 1fr;
  }
}

.dashboard-card {
  padding: 1.75rem;
}

.dashboard-card h3 {
  font-family: var(--font-title);
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
  letter-spacing: -0.2px;
}

.chart-container {
  position: relative;
  height: 280px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ==========================================================================
   TAB: Objetivos (Objectives)
   ========================================================================== */
.objectives-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
  gap: 1.5rem;
}

.objective-card {
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  border-top: 4px solid var(--primary);
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.objective-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 40px 0 rgba(0, 0, 0, 0.25);
}

.objective-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.objective-card-header h4 {
  font-family: var(--font-title);
  font-size: 1.3rem;
  font-weight: 700;
}

.objective-card-header .obj-dates {
  font-size: 0.75rem;
  color: var(--text-muted);
  margin-top: 0.25rem;
}

.obj-card-actions {
  display: flex;
  gap: 0.5rem;
}

.btn-icon {
  background: none;
  border: none;
  color: var(--text-muted);
  cursor: pointer;
  padding: 0.25rem;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition-fast);
}

.btn-icon:hover {
  color: var(--text-main);
  background-color: rgba(255, 255, 255, 0.08);
}

.objective-description {
  font-size: 0.85rem;
  color: var(--text-muted);
  line-height: 1.4;
  min-height: 2.8rem;
}

.objective-values {
  display: flex;
  justify-content: space-between;
  font-size: 0.85rem;
  margin-bottom: 0.5rem;
}

.objective-values .current {
  font-weight: 700;
  font-size: 1.15rem;
  font-family: var(--font-title);
}

.objective-values .target {
  color: var(--text-muted);
  text-align: right;
}

/* Progress bar */
.progress-bar-wrapper {
  background-color: rgba(255, 255, 255, 0.06);
  border-radius: 10px;
  height: 8px;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.progress-bar-fill {
  height: 100%;
  border-radius: 10px;
  width: 0%;
  transition: width 0.8s ease-out;
  background: var(--primary);
}

.objective-performance {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.8rem;
  padding-top: 0.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

/* ==========================================================================
   TAB: Meus Ativos & Transações (Tables)
   ========================================================================== */
.table-card {
  padding: 1.75rem;
  margin-bottom: 2rem;
}

.table-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
  gap: 1rem;
  flex-wrap: wrap;
}

.table-header h3 {
  font-family: var(--font-title);
  font-size: 1.25rem;
  font-weight: 600;
}

.table-filters {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}

.form-control {
  background-color: rgba(15, 20, 34, 0.8);
  border: 1px solid var(--border-color);
  color: var(--text-main);
  border-radius: 8px;
  padding: 0.5rem 0.85rem;
  font-size: 0.85rem;
  outline: none;
  transition: var(--transition-fast);
}

.form-control:focus {
  border-color: var(--border-focus);
  box-shadow: 0 0 0 2px var(--primary-glow);
}

.select-filter {
  min-width: 150px;
  cursor: pointer;
}

.search-input {
  width: 220px;
}

.table-responsive {
  width: 100%;
  overflow: visible;
}

.data-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 0.9rem;
}

.data-table th, 
.data-table td {
  padding: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.data-table th {
  color: var(--text-muted);
  font-weight: 600;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.data-table tbody tr {
  transition: var(--transition-fast);
}

.data-table tbody tr:hover {
  background-color: rgba(255, 255, 255, 0.02);
}

.ticker-badge {
  background-color: rgba(255, 255, 255, 0.06);
  padding: 0.25rem 0.5rem;
  border-radius: 6px;
  font-weight: 700;
  font-family: var(--font-title);
  font-size: 0.85rem;
  letter-spacing: 0.2px;
}

.badge-type {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
  display: inline-block;
}

.badge-type.buy { background-color: var(--success-glow); color: var(--success); }
.badge-type.sell { background-color: var(--danger-glow); color: var(--danger); }

/* ==========================================================================
   Modals
   ========================================================================== */
.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.65);
  backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.modal.active {
  opacity: 1;
  pointer-events: auto;
}

.modal-content {
  width: 100%;
  max-width: 580px;
  padding: 2rem;
  position: relative;
  transform: translateY(-20px);
  transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  max-height: 90vh;
  overflow-y: auto;
}

.modal.active .modal-content {
  transform: translateY(0);
}

.modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  padding-bottom: 0.75rem;
}

.modal-header h3 {
  font-family: var(--font-title);
  font-size: 1.35rem;
  font-weight: 700;
}

.btn-close {
  background: none;
  border: none;
  color: var(--text-muted);
  font-size: 1.75rem;
  cursor: pointer;
  line-height: 1;
  transition: var(--transition-fast);
}

.btn-close:hover {
  color: #fff;
}

/* Forms styling inside modal */
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}

@media (max-width: 480px) {
  .form-grid {
    grid-template-columns: 1fr;
  }
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 1.25rem;
}

.form-group.full-width {
  grid-column: 1 / -1;
}

.form-group label {
  font-size: 0.85rem;
  color: var(--text-muted);
  font-weight: 500;
}

.form-group .form-control {
  padding: 0.65rem 0.85rem;
  width: 100%;
}

textarea.form-control {
  resize: vertical;
}

.checkbox-group {
  flex-direction: row;
  align-items: center;
  margin-top: 0.5rem;
}

.checkbox-label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  font-size: 0.85rem;
  color: var(--text-muted);
}

.checkbox-label input {
  width: 16px;
  height: 16px;
  accent-color: var(--primary);
}

/* Color Picker */
.color-picker-grid {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 0.5rem;
  width: 100%;
}

.color-option {
  height: 32px;
  border-radius: 8px;
  cursor: pointer;
  position: relative;
  border: 2px solid transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

.color-option input {
  opacity: 0;
  position: absolute;
  cursor: pointer;
}

.color-option:has(input:checked) {
  border-color: #fff;
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.4);
}

.modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 1rem;
  margin-top: 1.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  padding-top: 1.25rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  body {
    flex-direction: column;
  }
  
  .sidebar {
    width: 100%;
    height: auto;
    position: relative;
    padding: 1.25rem 1.5rem;
    border-right: none;
    border-bottom: 1px solid var(--border-color);
  }
  
  .logo-container {
    margin-bottom: 1.5rem;
  }
  
  .nav-menu {
    flex-direction: row;
    overflow-x: auto;
    padding-bottom: 0.5rem;
  }
  
  .nav-item {
    white-space: nowrap;
    width: auto;
  }
  
  .sidebar-footer {
    display: none;
  }
  
  .main-content {
    margin-left: 0;
    width: 100%;
    padding: 1.5rem;
  }
  
  .main-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  
  .header-actions {
    width: 100%;
    justify-content: space-between;
  }
}

/* Animations */
.spin-animation {
  animation: spin 1.2s linear infinite;
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* Mode Badge Styles */
.mode-badge {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8rem;
  font-weight: 600;
  padding: 0.35rem 0.75rem;
  border-radius: 20px;
  background-color: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--border-color);
  margin-bottom: 0.75rem;
  justify-content: center;
}

.mode-badge.local {
  color: var(--warning);
  border-color: rgba(245, 158, 11, 0.3);
}

.mode-badge.server {
  color: var(--success);
  border-color: rgba(16, 185, 129, 0.3);
}

.badge-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: currentColor;
  display: inline-block;
  box-shadow: 0 0 8px currentColor;
}

.mode-badge.local .badge-dot {
  animation: pulse-warn 2.5s infinite;
}

.mode-badge.server .badge-dot {
  animation: pulse-succ 2.5s infinite;
}

@keyframes pulse-warn {
  0% { opacity: 0.4; box-shadow: 0 0 2px var(--warning); }
  50% { opacity: 1; box-shadow: 0 0 10px var(--warning); }
  100% { opacity: 0.4; box-shadow: 0 0 2px var(--warning); }
}

@keyframes pulse-succ {
  0% { opacity: 0.4; box-shadow: 0 0 2px var(--success); }
  50% { opacity: 1; box-shadow: 0 0 10px var(--success); }
  100% { opacity: 0.4; box-shadow: 0 0 2px var(--success); }
}

/* ==========================================================================
   Sub Tabs e Filtros Avançados de Detalhe de Objetivos
   ========================================================================== */
.sub-tab-bar {
  display: flex;
  gap: 0.5rem;
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}

.sub-tab-item {
  padding: 0.75rem 1.5rem;
  border: none;
  background: none;
  color: var(--text-muted);
  font-weight: 600;
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.2s ease;
  font-size: 0.9rem;
}

.sub-tab-item:hover {
  color: var(--text-color);
  background-color: rgba(255, 255, 255, 0.05);
}

.sub-tab-item.active {
  color: #fff;
  background-color: rgba(59, 130, 246, 0.15) !important;
  box-shadow: 0 0 12px rgba(59, 130, 246, 0.15);
  border: 1px solid rgba(59, 130, 246, 0.25) !important;
}

.strategy-group-header {
  border-bottom: 2px solid var(--border-color);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  margin-top: 2rem;
}

.strategy-delta-card {
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.strategy-delta-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 255, 255, 0.12) !important;
  background-color: rgba(255, 255, 255, 0.06) !important;
}

.strategy-delta-card {
  width: 100%;
  appearance: none;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.strategy-delta-card.active {
  border-color: rgba(245, 158, 11, .88) !important;
  box-shadow: 0 0 0 1px rgba(245, 158, 11, .18), 0 0 16px rgba(245, 158, 11, .08);
  background-color: rgba(245, 158, 11, .045) !important;
}

.class-nav-title { display:inline-flex; align-items:center; gap:.45rem; font-weight:600; color:var(--text-color); }
.class-nav-title svg { width:17px; height:17px; color:#f0bd68; }
.class-target-progress { display:flex; align-items:center; gap:.55rem; margin-top:.25rem; }
.class-target-progress > div { flex:1; height:7px; position:relative; border-radius:99px; background:rgba(255,255,255,.07); overflow:visible; }
.class-target-progress b { display:block; height:100%; border-radius:inherit; }
.class-target-progress i { position:absolute; top:-3px; right:0; width:2px; height:13px; border-radius:2px; background:#f0bd68; box-shadow:0 0 7px rgba(240,189,104,.5); }
.class-target-progress span { min-width:105px; text-align:right; color:#aab6ad; font-size:.64rem; font-weight:700; }

.class-monitor-summary{margin:0 0 1.35rem;border:1px solid rgba(244,114,182,.24);border-radius:12px;background:linear-gradient(100deg,rgba(239,68,68,.045),rgba(245,158,11,.025));padding:1rem 1.2rem}.class-monitor-head{display:flex;justify-content:space-between;align-items:end;gap:1rem}.class-monitor-head span{display:block;color:#f0a0aa;font-size:.62rem;font-weight:800;letter-spacing:.11em}.class-monitor-head h3{margin:.2rem 0 0;color:#f2f5f1;font-size:1rem}.class-monitor-head p{margin:0;color:#8d9a92;font-size:.68rem}.class-monitor-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;margin-top:.8rem}.class-monitor-item{min-width:0;padding:.7rem;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(12,17,15,.64);color:inherit;text-align:left;font:inherit;cursor:pointer;transition:.18s ease}.class-monitor-item:hover{transform:translateY(-2px);border-color:rgba(245,158,11,.5);background:rgba(255,255,255,.045)}.class-monitor-item>div{display:grid;grid-template-columns:1fr auto;column-gap:.35rem;align-items:center}.class-monitor-signal{grid-column:1/-1;display:inline-flex;align-items:center;gap:.3rem;color:#d9a8ad;font-size:.57rem;font-weight:800;letter-spacing:.08em}.class-monitor-signal i{width:6px;height:6px;border-radius:50%;background:#f59e0b}.class-monitor-item.urgent{border-color:rgba(248,113,113,.56);box-shadow:0 0 14px rgba(239,68,68,.09)}.class-monitor-item.urgent .class-monitor-signal{color:#ff9696}.class-monitor-item.urgent .class-monitor-signal i{background:#fb5467;animation:monitorPulse 1.35s infinite}.class-monitor-item strong{color:#eff4ee;font-size:.85rem;margin-top:.27rem}.class-monitor-item small{color:#8d9a92;font-size:.6rem;text-align:right;margin-top:.27rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.class-monitor-item p{min-height:47px;margin:.5rem 0;color:#a9b3ac;font-size:.66rem;line-height:1.42}.class-monitor-item footer{display:flex;justify-content:space-between;gap:.3rem;padding-top:.45rem;border-top:1px solid rgba(255,255,255,.07);font-size:.59rem}.class-monitor-item footer span{color:#f0a0aa}.class-monitor-item footer b{color:#f0bd68;font-weight:700;white-space:nowrap}@keyframes monitorPulse{0%,100%{box-shadow:0 0 0 0 rgba(251,84,103,.55)}50%{box-shadow:0 0 0 6px rgba(251,84,103,0)}}.class-monitor-clear{grid-column:1/-1;display:flex;align-items:center;gap:.65rem;padding:.7rem;color:#aab6ad;font-size:.7rem}.class-monitor-clear svg{width:22px;height:22px;color:#7dd3a6}.class-monitor-clear strong,.class-monitor-clear span{display:block}.class-monitor-clear strong{color:#cfe8d6}.class-monitor-clear span{font-size:.65rem;margin-top:.15rem}@media(max-width:1100px){.class-monitor-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.class-monitor-head{align-items:start;flex-direction:column}.class-monitor-grid{grid-template-columns:1fr}}

/* Tooltip Customizado */
.tooltip {
  position: relative;
  display: inline-block;
  cursor: help;
  z-index: 1;
}

.tooltip:hover {
  z-index: 9999 !important; /* Força o gatilho a ficar no topo */
}

/* Garante que a linha que está com o mouse por cima se sobreponha às outras e ao cabeçalho */
.data-table tbody tr:hover {
  position: relative;
  z-index: 50 !important;
}

/* Evita que o cabeçalho da tabela corte a renderização de elementos com z-index alto */
.data-table thead {
  position: relative;
  z-index: 5;
}

.tooltip .tooltiptext {
  visibility: hidden;
  width: 290px;
  background-color: #151e2c;
  color: #e2e8f0;
  text-align: left;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 6px;
  padding: 0.8rem;
  position: absolute;
  z-index: 99999 !important; /* Altíssimo z-index para sobrepor tudo */
  right: 115%; /* Abre para a esquerda do selo */
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.2s, transform 0.2s;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6);
  font-size: 0.76rem;
  line-height: 1.45;
  pointer-events: none;
  font-weight: normal;
  font-family: inherit;
}

.tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
  transform: translateY(-50%) translateX(-4px);
}

/* Setinha apontando para a direita, em direção ao selo de recomendação */
.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%; /* Lado direito do balão */
  margin-top: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent transparent #151e2c;
}

/* ==========================================================================
   Álgebra 2.0 — direção visual editorial
   ========================================================================== */
:root {
  --bg-primary: #090d0c;
  --bg-secondary: #111715;
  --bg-sidebar: #0d1211;
  --border-color: rgba(224, 230, 223, 0.09);
  --border-focus: #b8e1c7;
  --text-main: #edf1eb;
  --text-muted: #8d9992;
  --primary: #a9d5b8;
  --primary-hover: #c5e8d0;
  --primary-glow: rgba(169, 213, 184, 0.13);
  --success: #7dd3a6;
  --success-glow: rgba(125, 211, 166, 0.11);
  --warning: #e8bd73;
  --danger: #e98d8d;
  --glass-bg: rgba(18, 24, 22, 0.76);
  --glass-border: rgba(224, 230, 223, 0.08);
  --glass-blur: blur(18px);
  --sidebar-width: 224px;
}

body {
  background:
    radial-gradient(circle at 78% -10%, rgba(68, 111, 83, 0.15), transparent 30rem),
    radial-gradient(circle at 35% 105%, rgba(86, 69, 43, 0.08), transparent 32rem),
    var(--bg-primary);
  letter-spacing: -0.01em;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: 0.16;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, black, transparent 75%);
}

.sidebar {
  padding: 0.25rem 1rem 1.4rem;
  border-right: 1px solid rgba(229, 235, 228, 0.07);
  background: rgba(11, 16, 14, 0.92);
  backdrop-filter: blur(24px);
}

.logo-container {
  gap: 0.85rem;
  margin-bottom: 0.8rem;
  padding: 0;
}

.logo-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #dce8df;
  color: #122018;
  font-family: var(--font-title);
  font-size: 1.15rem;
  box-shadow: 0 0 0 5px rgba(220, 232, 223, 0.05);
}

.brand-copy {
  min-width: 0;
}

.brand-copy h1 {
  font-size: 1.35rem;
  line-height: 1;
  background: none;
  -webkit-text-fill-color: var(--text-main);
}

.brand-copy span {
  display: block;
  margin-top: 0.38rem;
  color: #748179;
  font-size: 0.63rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  white-space: nowrap;
}

.nav-menu {
  gap: 0.3rem;
}

.nav-section-label {
  margin: 1rem 0 0.25rem 0.9rem;
  color: #68766d;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.nav-item {
  position: relative;
  gap: 0.85rem;
  padding: 0.8rem 0.9rem;
  border-radius: 9px;
  color: #839087;
  font-size: 0.86rem;
  letter-spacing: 0;
}

.nav-item:hover {
  background: rgba(255, 255, 255, 0.025);
}

.nav-item.active {
  color: #eaf3ec;
  background: rgba(169, 213, 184, 0.08);
  box-shadow: inset 0 0 0 1px rgba(169, 213, 184, 0.09);
}

.nav-item.active::before {
  content: "";
  position: absolute;
  left: -1.25rem;
  width: 3px;
  height: 22px;
  border-radius: 0 3px 3px 0;
  background: #a9d5b8;
  box-shadow: 0 0 18px rgba(169, 213, 184, 0.35);
}

.nav-item.active i { color: #b8dfc5; }

.nav-item i { color: rgba(245, 158, 11, 0.58); }
.nav-item:hover i { color: rgba(245, 158, 11, 0.85); }

.sidebar-footer {
  border-top: 1px solid rgba(255,255,255,.06);
  padding: 1.25rem 0.55rem 0;
}

.mode-badge.consultation {
  justify-content: flex-start;
  border: 0;
  padding: 0;
  background: transparent;
  color: #9aaa9f;
  font-size: 0.72rem;
}

.update-info {
  text-align: left;
  margin-top: 0.4rem;
  color: #5f6b64;
  font-size: 0.67rem;
}

.main-content {
  max-width: 1540px;
  padding: 2.75rem 3.25rem 4rem;
}

.main-header {
  margin-bottom: 2.15rem;
  padding-bottom: 1.7rem;
  border-bottom: 1px solid rgba(229, 235, 228, 0.07);
}

.header-eyebrow {
  display: block;
  margin-bottom: 0.55rem;
  color: #89ad96;
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.header-title h2 {
  font-size: clamp(2rem, 3vw, 2.7rem);
  font-weight: 500;
  letter-spacing: -0.045em;
}

.header-title .subtitle {
  margin-top: 0.45rem;
  color: #77847c;
  font-size: 0.88rem;
}

.header-context {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.72rem 0.9rem;
  border: 1px solid rgba(216, 228, 218, 0.08);
  border-radius: 10px;
  background: rgba(255,255,255,.018);
}

.context-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #90c8a2;
  box-shadow: 0 0 0 5px rgba(144, 200, 162, 0.08);
}

.header-context strong,
.header-context small { display: block; }
.header-context strong { color: #cdd7cf; font-size: 0.75rem; font-weight: 600; }
.header-context small { margin-top: 0.18rem; color: #68746c; font-size: 0.65rem; }

.metrics-grid {
  gap: 0.85rem;
  margin-bottom: 1rem;
}

.metric-card {
  position: relative;
  min-height: 158px;
  padding: 1.25rem 1.3rem;
  overflow: hidden;
}

.metric-card::after {
  content: "";
  position: absolute;
  right: -45px;
  bottom: -70px;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  border: 1px solid rgba(169, 213, 184, 0.055);
}

/* Resumo executivo da carteira */
.objective-title-block {
  display: flex;
  align-items: center;
  gap: .9rem;
}

.objective-title-icon {
  width: 58px;
  min-width: 58px;
  height: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #f59e0b;
  border-radius: 10px;
  background: var(--bg-primary);
  box-shadow: 0 0 15px rgba(245, 158, 11, .12);
}

.objective-title-icon svg {
  width: 29px;
  height: 29px;
  color: #fff;
  stroke-width: 2.3;
}

.objective-summary-card {
  min-height: 278px;
  justify-content: flex-start;
}

.objective-summary-card .metric-header { margin-bottom: .78rem; }
.objective-summary-card .metric-value { font-size: 1.72rem; }
.objective-summary-card .metric-subtext { min-height: 1.2rem; }

.objective-summary-breakdown {
  display: grid;
  gap: .35rem;
  margin-top: .9rem;
  padding-top: .7rem;
  border-top: 1px solid rgba(255, 255, 255, .075);
  position: relative;
  z-index: 1;
}

.objective-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  color: #9ca9a1;
  font-size: .7rem;
  line-height: 1.2;
}

.objective-summary-row > span {
  display: inline-flex;
  align-items: center;
  gap: .38rem;
  min-width: 0;
}

.objective-summary-row i {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
}

.objective-summary-row strong {
  color: #e4ebe5;
  font-size: .71rem;
  font-weight: 700;
  text-align: right;
  white-space: nowrap;
}

.objective-summary-row small { color: #7e8a82; font-size: .62rem; font-weight: 500; }
.objective-summary-breakdown .class-target-nav{width:100%;padding:0;border:0;background:transparent;cursor:pointer}.objective-summary-breakdown .class-target-nav:hover span,.objective-summary-breakdown .class-target-nav:hover strong{color:#f1c77f}.objective-summary-breakdown .class-target-nav.active{background:rgba(255,255,255,.035);border-radius:4px;padding:.22rem .28rem;margin-left:-.28rem;width:calc(100% + .56rem)}
.objective-summary-row.is-positive strong, .objective-summary-row.is-surplus strong { color: #67cba0; }
.objective-summary-row.is-negative strong, .objective-summary-row.is-missing strong { color: #ff7b7b; }

@media (max-width: 640px) {
  .objective-title-icon { width: 48px; min-width: 48px; height: 48px; }
  .objective-title-icon svg { width: 24px; height: 24px; }
  .objective-summary-card { min-height: 250px; }
  .objective-summary-card .metric-value { font-size: 1.3rem; }
}

.glass {
  border-radius: 13px;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.17);
}

.metric-header { margin-bottom: 1.45rem; }
.metric-label {
  color: #7d8981;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.metric-icon-wrapper {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: rgba(255,255,255,.035) !important;
  box-shadow: none !important;
}
.metric-icon-wrapper i { width: 15px; height: 15px; color: #9fc8ac !important; }

.metric-value {
  font-family: var(--font-title);
  font-size: clamp(1.4rem, 2vw, 1.9rem);
  font-weight: 600;
  letter-spacing: -0.045em;
}

.metric-subtext { margin-top: 0.48rem; font-size: 0.69rem; }
.positive { color: #86d0a4 !important; }
.negative { color: #ea9595 !important; }

.dashboard-grid { gap: 0.85rem; }
.dashboard-card { padding: 1.4rem; }
.dashboard-card h3 {
  color: #bdc8c0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.objective-header-card {
  background: linear-gradient(135deg, rgba(25,34,30,.92), rgba(15,21,19,.8)) !important;
  border-radius: 13px !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.2);
}

.sub-tab-bar {
  display: inline-flex;
  width: auto;
  padding: 0.28rem;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 10px;
  background: rgba(255,255,255,.018);
}

.sub-tab-item {
  padding: 0.58rem 1rem;
  border-radius: 7px;
  color: #748079;
  font-size: 0.73rem;
  font-weight: 650;
}

.sub-tab-item.active {
  background: rgba(245, 158, 11, 0.12);
  color: #f59e0b;
  border: 1px solid rgba(245, 158, 11, 0.7);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.12), 0 0 14px rgba(245, 158, 11, 0.1);
}

.monthly-chart-wrap {
  position: relative;
  width: 100%;
  height: 255px;
  min-height: 0;
  max-height: 255px;
}

.monthly-chart-wrap canvas {
  display: block;
  width: 100% !important;
  height: 225px !important;
  max-height: 225px;
}

.monthly-earnings-layout {
  display: grid !important;
  grid-template-columns: minmax(245px, 0.85fr) minmax(390px, 1.35fr);
  align-items: stretch !important;
}

.monthly-earnings-layout > div:first-child,
.monthly-earnings-layout .monthly-class-panel {
  height: 190px;
  min-height: 0;
}

.monthly-earnings-layout .monthly-chart-panel {
  grid-column: 1 / -1;
  min-width: 0 !important;
}

.monthly-earnings-layout .monthly-class-panel {
  height: 190px;
  padding-bottom: 1rem;
}

.monthly-class-caption {
  color: var(--text-muted);
  font-size: 0.68em;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}

.monthly-charts-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}

.monthly-chart-label {
  display: block;
  margin-bottom: 0.3rem;
  color: #75837a;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.monthly-class-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.25rem 0.75rem;
  align-items: center;
  color: #b5c0b8;
  font-size: 0.76rem;
}

.monthly-class-row > span { display: flex; align-items: center; gap: 0.4rem; }
.monthly-class-row i { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
.monthly-class-row strong { color: #d9e2db; font-size: 0.76rem; }
.monthly-class-row small { color: var(--text-muted); font-size: 0.65rem; font-weight: 500; }
.monthly-class-yields { grid-column: 1 / -1; display:flex; gap:.65rem; color:var(--text-muted); font-size:.64rem; margin-top:-.08rem; }
.monthly-class-yields b { color:#d9e2db; font-weight:700; }
.monthly-class-bar { grid-column: 1 / -1; height: 2px; overflow: hidden; border-radius: 4px; background: rgba(255,255,255,.06); }
.monthly-class-bar b { display: block; height: 100%; border-radius: 4px; }

.monthly-breakdown-groups {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  padding-bottom: 0.7rem;
}

.monthly-breakdown-group { display: flex; flex-direction: column; gap: 0.55rem; }
.monthly-breakdown-title {
  padding-bottom: 0.35rem;
  border-bottom: 1px solid rgba(255,255,255,.07);
  color: #c2cec5;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.monthly-breakdown-title small {
  display: block;
  margin-top: 0.18rem;
  color: var(--text-muted);
  font-size: 0.61rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}

.data-table thead th {
  color: #6f7b73;
  font-size: 0.64rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.data-table tbody td { border-color: rgba(255,255,255,.055); }
.data-table tbody tr:hover { background: rgba(169,213,184,.025); }
.ticker-badge { color: #dbe6dd; letter-spacing: 0.025em; }

.asset-identity-line {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.asset-health-tooltip {
  flex: 0 0 auto;
  width: 10px;
  height: 10px;
  cursor: help;
}

.asset-health-led {
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.34);
}

.asset-health-led.green {
  background: #65f39a;
  box-shadow: 0 0 0 4px rgba(101,243,154,.14), 0 0 15px rgba(101,243,154,.95);
}

.asset-health-led.yellow {
  background: #ffd15c;
  box-shadow: 0 0 0 4px rgba(255,209,92,.15), 0 0 15px rgba(255,209,92,.9);
}

.asset-health-led.red {
  background: #ff4f62;
  box-shadow: 0 0 0 4px rgba(255,79,98,.18), 0 0 17px rgba(255,79,98,1);
}

.asset-health-tooltip .tooltiptext {
  right: auto;
  left: 145%;
  top: 50%;
  width: 270px;
  transform: translateY(-50%);
}

.asset-health-tooltip:hover .tooltiptext {
  transform: translateY(-50%) translateX(4px);
}

/* Respiro sutil entre ativos sem fragmentar a leitura da tabela */
.strategy-section .data-table tbody tr + tr td {
  border-top: 5px solid #090d0c !important;
}

.strategy-section .data-table tbody tr + tr td:first-child {
  box-shadow: inset 0 1px 0 rgba(225, 233, 227, 0.045);
}

.strategy-group-header {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.42rem;
  margin-bottom: 1rem;
  padding: 0 0 0.72rem 3.8rem;
  border-bottom: 2px solid var(--border-color);
}

.strategy-group-header h4 {
  display: flex;
  align-items: center;
  gap: 0.58rem;
  margin: 0;
  color: var(--text-color);
  font-size: 1.1rem;
  font-weight: 700;
}

.strategy-icon-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0.72rem;
  width: 42px;
  height: auto;
  border: 2px solid #f59e0b;
  border-radius: 8px;
  background: var(--bg-primary);
  box-shadow: 0 0 12px rgba(245, 158, 11, 0.12);
}

.strategy-icon-badge i {
  width: 24px;
  height: 24px;
  color: #fff;
  stroke-width: 2.4;
}

.strategy-group-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem;
  color: var(--text-muted);
  font-size: 0.78rem;
}

.strategy-meta-summary {
  display: flex;
  align-items: baseline;
  gap: 0.42rem;
  margin-top: -0.05rem;
  color: var(--text-muted);
  font-size: 0.78rem;
}

.strategy-meta-row {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 1rem;
  width: 100%;
}

.strategy-meta-row .strategy-group-summary {
  flex: 1 1 auto;
}

.strategy-meta-summary strong {
  color: #f0bf67;
  font-size: 0.86rem;
}

.strategy-return-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem;
  margin-top: 0.08rem;
  color: var(--text-muted);
  font-size: 0.78rem;
}

.strategy-return-label {
  margin-right: 0.1rem;
  color: #b8c4bc;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.strategy-summary-separator {
  color: rgba(255,255,255,0.15);
}

@media (max-width: 900px) {
  .main-content { padding: 2rem 1.4rem 5rem; }
  .header-context { display: none; }
  .main-header { align-items: flex-start; }
}

@media (max-width: 640px) {
  body::before { display: none; }
  .main-content { padding: 1.35rem 1rem 5.5rem; }
  .main-header { margin-bottom: 1.2rem; padding-bottom: 1.15rem; }
  .header-title h2 { font-size: 2rem; }
  .metrics-grid { grid-template-columns: 1fr 1fr; }
  .metric-card { min-height: 136px; padding: 1rem; }
  .metric-header { margin-bottom: 1rem; }
  .metric-value { font-size: 1.22rem; }
  .sub-tab-bar { display: flex; width: 100%; overflow-x: auto; }
  .sub-tab-item { flex: 0 0 auto; }
  .strategy-group-summary { gap: 0.38rem; }
  .strategy-return-summary { gap: 0.38rem; }
  .strategy-summary-separator { display: none; }
  .strategy-group-summary > span:not(.strategy-summary-separator) { width: 100%; }
  .strategy-meta-row { gap: 0.35rem; }
  .strategy-meta-row .strategy-group-summary { width: 100%; }
  .strategy-return-summary > span:not(.strategy-summary-separator) { width: 100%; }
  .monthly-class-panel, .monthly-chart-panel { min-width: 100% !important; }
  .monthly-chart-wrap { height: 220px; max-height: 220px; }
  .monthly-chart-wrap canvas { height: 190px !important; max-height: 190px; }
  .monthly-earnings-layout { display: flex !important; }
  .monthly-charts-grid { grid-template-columns: 1fr; }
  .monthly-breakdown-groups { grid-template-columns: 1fr; gap: 0.8rem; }
}
.algebra-report-btn,
.algebra-report-tab {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  border: 1px solid rgba(255, 159, 67, .55);
  color: #ffb35c;
  background: rgba(255, 159, 67, .06);
  border-radius: 8px;
  padding: .5rem .75rem;
  font-weight: 700;
  cursor: pointer;
  transition: .18s ease;
}
.brand-logo-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 160px;
  object-fit: contain;
  object-position: left center;
  transform: translateY(-0.8rem) scale(1.25);
  transform-origin: left top;
}
.logo-container { min-height: 190px; align-items: center; }
.algebra-report-btn:hover,
.algebra-report-tab:hover,
.algebra-report-btn.is-ready { background: rgba(255, 159, 67, .16); color: #ffc477; }
.algebra-report-btn { margin-left: auto; align-self: center; }
.algebra-report-btn svg,
.algebra-report-tab svg { width: 15px; height: 15px; }
.algebra-report-tab { margin-left: auto; font-size: .78rem; }
.sub-tab-bar {
  width: 100%;
  display: flex;
  align-items: center;
}
.algebra-report-tab { flex: 0 0 auto; margin-left: auto; }
.objective-header-card .header-right { flex: 1 1 auto; justify-content: flex-start; }
.objective-report-btn { margin-left: auto; }
#algebra-report-overlay { position: fixed; inset: 0; z-index: 1000; display: none; background: rgba(5, 8, 10, .88); padding: 1rem; }
#algebra-report-overlay.visible { display: flex; flex-direction: column; gap: .65rem; }
.report-toolbar { display:flex; gap:.55rem; align-items:center; justify-content:flex-end; flex-wrap:wrap; }
.report-toolbar button { border:1px solid rgba(255,159,67,.6); background:#151c1a; color:#ffb35c; border-radius:7px; padding:.55rem .75rem; cursor:pointer; font-weight:700; }
.report-toolbar label { color:#aab6ad; font-size:.78rem; }
.report-toolbar input { background:#111714; border:1px solid #38433d; color:#f3f4f6; border-radius:6px; padding:.55rem; }
.report-frame { flex:1; width:100%; border:0; border-radius:10px; background:#f5f6f4; }
#algebra-report-overlay.final-review .report-frame { outline: 2px solid rgba(125,211,166,.65); }
.algebra-control-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem}.algebra-control-head h2{font-size:2.1rem;margin:.2rem 0}.algebra-client-pill,.status-chip{border:1px solid rgba(255,159,67,.4);border-radius:999px;padding:.4rem .7rem;font-size:.7rem;color:#ffb35c}.algebra-client-card{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;margin-bottom:1.25rem}.algebra-client-card h3{margin:.3rem 0}.algebra-client-card p{color:var(--text-muted);margin:0}.status-chip.ready{color:#7dd3a6;border-color:rgba(125,211,166,.4)}.status-chip.pending{color:#e8bd73;border-color:rgba(232,189,115,.35)}.algebra-cycle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.algebra-cycle-card{padding:1.25rem;min-height:190px}.cycle-top{display:flex;justify-content:space-between;align-items:center}.cycle-top svg{color:#ff9f43;width:24px}.algebra-cycle-card h3{margin:1rem 0 .5rem}.algebra-cycle-card p{color:var(--text-muted);font-size:.82rem;line-height:1.5;min-height:48px}.algebra-action{border:1px solid rgba(255,159,67,.5);background:rgba(255,159,67,.08);color:#ffb35c;border-radius:7px;padding:.55rem .75rem;cursor:pointer;font-weight:700}.algebra-history{margin-top:1.25rem;padding:1.25rem}.empty-history{color:var(--text-muted);font-size:.82rem;padding:1rem 0}@media(max-width:800px){.algebra-cycle-grid{grid-template-columns:1fr}.algebra-control-head{align-items:start;flex-direction:column}}
.admin-client-overview{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;margin-bottom:1.25rem}.admin-client-overview h3{margin:.3rem 0;color:#eef3ef}.admin-client-overview p{margin:0;color:#8d9a92;font-size:.78rem}.admin-client-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.admin-client-meta>span{color:#aab6ad;font-size:.7rem}.admin-client-meta b{display:block;color:#7f8b83;font-size:.59rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.18rem}.admin-history-head{display:flex;justify-content:space-between;align-items:end;gap:1rem}.admin-history-head h3{margin:.2rem 0 0;color:#e6ece7}.admin-history-head>span{color:#7f8b83;font-size:.67rem}.admin-history-list{margin-top:.8rem}.admin-history-list>div{display:grid;grid-template-columns:150px 1fr 1.2fr;gap:.7rem;padding:.6rem 0;border-top:1px solid rgba(255,255,255,.065);font-size:.7rem}.admin-history-list span{color:#8d9a92}.admin-history-list strong{color:#e5ece6}.admin-history-list small{color:#aab6ad}@media(max-width:800px){.admin-client-overview,.admin-history-head{align-items:start;flex-direction:column}.admin-client-meta{width:100%}.admin-history-list>div{grid-template-columns:1fr}.admin-history-list span{font-size:.62rem}}
@media (max-width: 760px) {
  .algebra-report-btn { padding: .42rem .55rem; }
  .algebra-report-btn span { display: none; }
  .algebra-report-tab { margin-left: 0; }
}
.fii-class-summary{margin:0 0 1.25rem;border:1px solid rgba(245,158,11,.26);border-radius:12px;background:rgba(245,158,11,.035);padding:1rem 1.2rem}.fii-class-summary-head{display:flex;justify-content:space-between;align-items:end;gap:1rem}.fii-class-summary-head span{font-size:.62rem;color:#e8bd73;font-weight:800;letter-spacing:.11em}.fii-class-summary-head h3{font-size:1rem;margin:.22rem 0 0;color:#e8f0e9}.fii-class-summary-head h3 small{font-size:.76rem;color:#8d9a92;font-weight:500}.fii-class-summary-head p{margin:0;color:#829087;font-size:.73rem}.fii-class-summary-groups{display:grid;grid-template-columns:repeat(6,minmax(100px,1fr));gap:.55rem;margin-top:.85rem}.fii-class-summary-groups span{display:flex;justify-content:space-between;gap:.35rem;padding:.5rem .55rem;border-radius:6px;background:rgba(255,255,255,.035);color:#aab6ad;font-size:.7rem}.fii-class-summary-groups b{font-weight:600}.fii-class-summary-groups strong{color:#f2c578}.fii-class-summary-note{margin-top:.6rem;color:#8d9a92;font-size:.67rem}@media(max-width:900px){.fii-class-summary-groups{grid-template-columns:repeat(3,1fr)}}
.fii-class-summary-item{padding:.5rem .55rem;border-radius:6px;background:rgba(255,255,255,.035);color:#aab6ad;font-size:.7rem}.fii-class-summary-item>div{display:flex;justify-content:space-between;gap:.35rem}.fii-class-summary-item b{font-weight:600}.fii-class-summary-item strong{color:#f2c578}.fii-class-summary-item small{display:block;color:#829087;font-size:.61rem;margin-top:.32rem;white-space:nowrap}.fii-class-summary-item i{display:block;height:3px;border-radius:4px;overflow:hidden;background:rgba(255,255,255,.08);margin-top:.42rem}.fii-class-summary-item i em{display:block;height:100%;border-radius:4px;background:#e8bd73}.fii-class-progress-text{display:block;margin-top:.35rem;color:#d5a95d;font-size:.59rem;font-weight:600}.fii-class-summary-check{margin-top:.65rem;color:#829087;font-size:.68rem}.fii-class-summary-check strong{color:#7dd3a6}
.fii-class-summary-item .fii-class-summary-item-head{align-items:center;justify-content:flex-start;gap:.48rem}.fii-class-summary-item-head>b{flex:1;color:#c8d2cb;font-size:.73rem}.fii-class-summary-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border:1.5px solid #f59e0b;border-radius:7px;background:var(--bg-primary);box-shadow:0 0 9px rgba(245,158,11,.1)}.fii-class-summary-item .fii-class-summary-icon>i{display:block;width:17px;height:17px;margin:0;border:0;border-radius:0;background:transparent;color:#fff;overflow:visible}.fii-class-summary-item .fii-class-summary-progress{display:block;height:3px;border-radius:4px;overflow:hidden;background:rgba(255,255,255,.08);margin-top:.42rem}.fii-class-summary-item .fii-class-summary-progress em{display:block;height:100%;border-radius:4px;background:#e8bd73}
.class-plan-summary{margin:0 0 1.25rem;border:1px solid rgba(245,158,11,.26);border-radius:12px;background:rgba(245,158,11,.035);padding:1rem 1.2rem}.class-plan-head{display:flex;justify-content:space-between;align-items:end;gap:1rem}.class-plan-head span{font-size:.62rem;color:#e8bd73;font-weight:800;letter-spacing:.11em}.class-plan-head h3{font-size:1rem;margin:.22rem 0 0;color:#e8f0e9}.class-plan-head h3 small{font-size:.76rem;color:#8d9a92;font-weight:500}.class-plan-head p{margin:0;color:#829087;font-size:.73rem}.class-plan-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:.85rem}.class-plan-values>div{padding:.6rem .7rem;border-radius:7px;background:rgba(255,255,255,.035)}.class-plan-values span{display:block;color:#8d9a92;font-size:.6rem;font-weight:700;letter-spacing:.07em}.class-plan-values strong{display:block;color:#f2c578;font-size:.92rem;margin-top:.22rem}.class-plan-progress{margin-top:.65rem}.class-plan-progress i{display:block;height:4px;border-radius:4px;overflow:hidden;background:rgba(255,255,255,.08)}.class-plan-progress i em{display:block;height:100%;border-radius:4px;background:#e8bd73}.class-plan-progress span{display:block;color:#d5a95d;font-size:.62rem;font-weight:600;margin-top:.35rem}.empty-class-assets{margin:0 0 1.8rem;padding:1rem;border:1px dashed rgba(255,255,255,.15);border-radius:9px;color:#829087;font-size:.78rem;text-align:center}
.class-performance-summary{margin:-.25rem 0 1.25rem;border:1px solid rgba(125,211,166,.22);border-radius:12px;background:rgba(125,211,166,.025);padding:1rem 1.2rem}.class-performance-head{display:flex;justify-content:space-between;align-items:end;gap:1rem}.class-performance-head span{font-size:.62rem;color:#8fd2aa;font-weight:800;letter-spacing:.11em}.class-performance-head h3{font-size:1rem;margin:.22rem 0 0;color:#e8f0e9}.class-performance-head h3 small{font-size:.76rem;color:#8d9a92;font-weight:500}.class-performance-head p{margin:0;color:#829087;font-size:.73rem}.class-performance-head p strong{color:#94d9b1}.class-performance-yields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.85rem}.class-performance-yields>div{padding:.65rem .75rem;border-radius:7px;background:rgba(255,255,255,.035);border-left:3px solid rgba(125,211,166,.65)}.class-performance-yields span{display:block;color:#8d9a92;font-size:.61rem;letter-spacing:.08em;font-weight:700}.class-performance-yields strong{display:block;color:#d4f5df;font-size:1.08rem;margin-top:.22rem}.class-performance-yields strong small{font-size:.68rem;color:#93c8a5}.class-performance-yields p{margin:.25rem 0 0;color:#829087;font-size:.64rem}@media(max-width:650px){.class-performance-head,.class-plan-head{align-items:start;flex-direction:column}.class-performance-yields,.class-plan-values{grid-template-columns:1fr}}
.portfolio-purpose-card{display:grid;grid-template-columns:minmax(300px,1.35fr) minmax(270px,1fr) minmax(150px,.55fr);align-items:center;gap:1.35rem;margin:-.65rem 0 1.35rem;padding:1.1rem 1.3rem;border:1px solid rgba(245,158,11,.3);background:linear-gradient(100deg,rgba(245,158,11,.07),rgba(255,255,255,.018));position:relative;overflow:hidden}.portfolio-purpose-card:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-110px;top:-160px;border:1px solid rgba(245,158,11,.12)}.portfolio-purpose-copy,.portfolio-purpose-progress,.portfolio-purpose-rate{position:relative;z-index:1}.portfolio-purpose-eyebrow{display:block;color:#e8bd73;font-size:.62rem;font-weight:800;letter-spacing:.11em}.portfolio-purpose-copy h3{margin:.26rem 0;color:#f4f7f3;font-size:1.1rem}.portfolio-purpose-copy p{margin:0;color:#9ca9a1;font-size:.76rem;line-height:1.5;max-width:610px}.portfolio-purpose-stage{margin-top:.55rem;color:#d3a757;font-size:.68rem;font-weight:600}.portfolio-purpose-numbers{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.portfolio-purpose-numbers span,.portfolio-purpose-rate span{color:#8d9a92;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.portfolio-purpose-numbers strong{color:#f2c578;font-size:1rem}.portfolio-purpose-track{height:7px;border-radius:7px;background:rgba(255,255,255,.09);overflow:hidden;margin:.55rem 0}.portfolio-purpose-track i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#e8bd73,#ff9f43);box-shadow:0 0 12px rgba(245,158,11,.42);transition:width .45s ease}.portfolio-purpose-footer{display:flex;justify-content:space-between;gap:.5rem;color:#8d9a92;font-size:.66rem}.portfolio-purpose-footer strong{color:#ff9696;font-size:.67rem}.portfolio-purpose-rate{display:flex;flex-direction:column;gap:.28rem;padding-left:1.1rem;border-left:1px solid rgba(255,255,255,.1)}.portfolio-purpose-rate strong{color:#a7dfbb;font-size:1.2rem}.portfolio-purpose-rate small{color:#8d9a92;font-size:.66rem}@media(max-width:980px){.portfolio-purpose-card{grid-template-columns:1fr 1fr}.portfolio-purpose-copy{grid-column:1/-1}.portfolio-purpose-rate{padding-left:0;border-left:0}}@media(max-width:620px){.portfolio-purpose-card{grid-template-columns:1fr;margin-top:0}.portfolio-purpose-copy{grid-column:auto}.portfolio-purpose-rate{border-top:1px solid rgba(255,255,255,.1);padding-top:.75rem}}
.objective-view-nav{display:flex;align-items:center;gap:.45rem;margin:-.35rem 0 1.1rem;padding:.35rem;border:1px solid var(--border-color);border-radius:10px;background:rgba(255,255,255,.018)}.objective-view-tab{display:inline-flex;align-items:center;gap:.42rem;padding:.55rem .75rem;border:1px solid transparent;border-radius:7px;background:transparent;color:#849188;font-size:.76rem;font-weight:700;cursor:pointer}.objective-view-tab svg{width:15px;height:15px}.objective-view-tab:hover{color:#e5ece6;background:rgba(255,255,255,.035)}.objective-view-tab.active{color:#ffb35c;background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.35)}.objective-view-tab-algebra{margin-left:auto;color:#ffb35c;border-color:rgba(245,158,11,.32)}.dividends-view{margin:0 0 1.5rem;padding:1.35rem}.dividends-view[hidden]{display:none}.dividend-view-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;padding-bottom:.9rem;border-bottom:1px solid rgba(255,255,255,.08)}.dividend-view-head h3{margin:.2rem 0 0;color:#f1f4f0;font-size:1.2rem}.dividend-view-head p{margin:.35rem 0 0;color:#8d9a92;font-size:.75rem}.dividend-source-chip{color:#9ed6b0;border:1px solid rgba(125,211,166,.35);padding:.36rem .55rem;border-radius:999px;font-size:.65rem;white-space:nowrap}.dividend-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1rem 0}.dividend-summary-card{padding:.78rem;border-radius:8px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.dividend-summary-card span{display:block;color:#8d9a92;font-size:.61rem;font-weight:700;letter-spacing:.06em}.dividend-summary-card strong{display:block;color:#e7eee8;font-size:1.05rem;margin-top:.3rem}.dividend-summary-card.is-income strong{color:#82d8ad}.dividend-summary-card.is-other strong{color:#d8bc7d}.dividend-reconciliation{display:grid;grid-template-columns:1.15fr .85fr;gap:1rem;margin-top:.8rem}.dividend-table-wrap{border:1px solid rgba(255,255,255,.07);border-radius:9px;overflow:hidden}.dividend-table-wrap h4,.dividend-reconcile-note h4{margin:0;padding:.75rem .85rem;font-size:.72rem;color:#cbd5ce;border-bottom:1px solid rgba(255,255,255,.07)}.dividend-table{width:100%;border-collapse:collapse;font-size:.73rem}.dividend-table th{text-align:left;padding:.6rem .75rem;color:#819087;font-size:.59rem;letter-spacing:.06em}.dividend-table td{padding:.6rem .75rem;border-top:1px solid rgba(255,255,255,.055);color:#cdd6cf}.dividend-table td:not(:first-child),.dividend-table th:not(:first-child){text-align:right}.dividend-table .received{color:#82d8ad;font-weight:700}.dividend-reconcile-note{border:1px solid rgba(245,158,11,.22);border-radius:9px;background:rgba(245,158,11,.04)}.dividend-reconcile-note p{margin:.8rem .85rem;color:#99a69e;font-size:.74rem;line-height:1.55}.dividend-reconcile-note strong{color:#f0bd68}.dividend-other-credits{margin-top:1rem;color:#829087;font-size:.7rem}.dividend-other-credits strong{color:#d8bc7d}@media(max-width:800px){.objective-view-nav{flex-wrap:wrap}.objective-view-tab-algebra{margin-left:0}.dividend-summary-grid{grid-template-columns:1fr 1fr}.dividend-reconciliation{grid-template-columns:1fr}.dividend-view-head{align-items:start;flex-direction:column}}@media(max-width:500px){.dividend-summary-grid{grid-template-columns:1fr}}
.objective-view-nav{flex-wrap:wrap;padding:.45rem;gap:.5rem}.portfolio-nav-item{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.18rem;min-width:125px;padding:.5rem .75rem;border:1px solid var(--border-color);border-left:3px solid var(--class-nav-color,#3b82f6);border-radius:8px;background:rgba(255,255,255,.025);color:#aab6ad;text-align:right;cursor:pointer}.portfolio-nav-item>span{font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.portfolio-nav-item>span small{font-size:.56rem;color:#78867d}.portfolio-nav-item>strong{font-size:.9rem;color:#edf2ee}.portfolio-nav-item:hover{border-color:var(--class-nav-color,#5f90dc);color:#edf2ee}.portfolio-nav-item.active{background:rgba(59,130,246,.1);border-color:var(--class-nav-color,#3b82f6);box-shadow:inset 0 0 0 1px rgba(59,130,246,.18)}.portfolio-nav-item.active>strong{color:#64a0ff}.portfolio-class-targets{display:flex;gap:.5rem;flex-wrap:wrap}.portfolio-class-targets .portfolio-nav-item{--class-nav-color:#8fa8d8}.portfolio-nav-spacer{flex:1 1 1rem}.portfolio-nav-utility{display:inline-flex;align-items:center;gap:.42rem;min-width:auto;flex-direction:row;padding:.58rem .7rem;text-align:left}.portfolio-nav-utility.active{color:#ffb35c}.objective-view-tab-algebra{margin-left:0}.legacy-class-subtabs{display:none!important}@media(max-width:900px){.portfolio-nav-spacer{display:none}.portfolio-nav-utility{margin-left:0}}@media(max-width:620px){.portfolio-nav-item{min-width:calc(50% - .3rem)}.portfolio-class-targets{width:100%}.portfolio-class-targets .portfolio-nav-item{flex:1 1 calc(50% - .3rem)}.portfolio-nav-utility{min-width:auto}}
.objective-algebra-view{margin:0 0 1.5rem;padding:1.4rem}.objective-algebra-view[hidden]{display:none}.objective-algebra-view h3{margin:.25rem 0;color:#f2f6f2;font-size:1.25rem}.objective-algebra-view>p{margin:0;color:#93a097;font-size:.78rem}.objective-algebra-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem}.objective-algebra-actions article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.85rem;border:1px solid rgba(245,158,11,.2);border-radius:9px;background:rgba(245,158,11,.035)}.objective-algebra-actions article>svg{width:22px;height:22px;color:#ffb35c}.objective-algebra-actions strong,.objective-algebra-actions span{display:block}.objective-algebra-actions strong{color:#e9efe9;font-size:.8rem}.objective-algebra-actions span{color:#8d9a92;font-size:.67rem;line-height:1.4;margin-top:.18rem}.objective-algebra-actions .algebra-action{font-size:.68rem;white-space:nowrap}@media(max-width:720px){.objective-algebra-actions{grid-template-columns:1fr}.objective-algebra-actions article{grid-template-columns:auto 1fr}.objective-algebra-actions .algebra-action{grid-column:2}}
.portfolio-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.objective-header-card .portfolio-header-actions{justify-content:flex-end}.portfolio-header-actions .objective-view-tab{display:inline-flex;align-items:center;gap:.42rem;padding:.55rem .75rem;border:1px solid var(--border-color);border-radius:7px;background:rgba(255,255,255,.02);color:#aab6ad;font-size:.74rem;font-weight:700;cursor:pointer}.portfolio-header-actions .objective-view-tab svg{width:15px;height:15px}.portfolio-header-actions .objective-view-tab.active{color:#ffb35c;background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.4)}.portfolio-header-actions .objective-view-tab-algebra{color:#ffb35c;border-color:rgba(245,158,11,.4)}.class-allocation-nav{padding:.55rem;margin:-.35rem 0 1.1rem}.class-allocation-nav .portfolio-class-targets{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.55rem}.class-allocation-nav .portfolio-nav-item{width:100%;min-width:0;align-items:center;text-align:center;padding:.62rem .8rem}.class-allocation-nav .portfolio-nav-item>strong{font-size:1rem}.class-allocation-nav .portfolio-nav-item.active{background:rgba(255,255,255,.055);box-shadow:none}.class-allocation-nav .portfolio-nav-item.active>strong{color:#edf2ee}@media(max-width:760px){.portfolio-header-actions{justify-content:flex-start;width:100%}.class-allocation-nav .portfolio-class-targets{grid-template-columns:repeat(2,1fr)}}
#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="performance"],#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="risk"],#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="insights"],#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="dividends"],#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="dividend-map"],#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="algebra"]{display:none!important}
.fii-class-summary-item{width:100%;border:0;text-align:left;cursor:pointer;font-family:inherit}.fii-class-summary-item:hover{background:rgba(245,158,11,.09);outline:1px solid rgba(245,158,11,.28)}.strategy-section{scroll-margin-top:1rem}.class-performance-yields{grid-template-columns:repeat(3,minmax(0,1fr))}.class-performance-yields .class-performance-rhythm{border-left-color:rgba(245,158,11,.75);background:rgba(245,158,11,.045)}.class-performance-rhythm i{display:block;height:5px;border-radius:5px;overflow:hidden;background:rgba(255,255,255,.09);margin:.5rem 0 .25rem}.class-performance-rhythm i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e8bd73,#ff9f43)}@media(max-width:760px){.class-performance-yields{grid-template-columns:1fr}.class-performance-yields .class-performance-rhythm{order:-1}}
.algebra-intelligence-head{display:flex;align-items:end;justify-content:space-between;gap:1rem}.algebra-intelligence-head h3{margin:.22rem 0;color:#ece8f8;font-size:1.35rem}.algebra-intelligence-head p{margin:0;color:#9791a7;font-size:.78rem}.algebra-scope-pill{color:#c4b5fd;border:1px solid rgba(167,139,250,.38);background:rgba(124,58,237,.1);border-radius:999px;padding:.4rem .65rem;font-size:.67rem;white-space:nowrap}.algebra-intelligence-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}.algebra-intelligence-metrics article{padding:.8rem;border-radius:8px;border:1px solid rgba(167,139,250,.18);background:linear-gradient(135deg,rgba(124,58,237,.09),rgba(255,255,255,.018))}.algebra-intelligence-metrics span{display:block;color:#a9a1bc;font-size:.6rem;font-weight:700;letter-spacing:.07em}.algebra-intelligence-metrics strong{display:block;color:#eee9ff;font-size:1rem;margin-top:.28rem}.algebra-intelligence-metrics small{display:block;color:#b7add0;font-size:.65rem;margin-top:.18rem}.algebra-intelligence-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:.8rem}.algebra-brief,.algebra-message{border:1px solid rgba(167,139,250,.2);border-radius:9px;background:rgba(124,58,237,.04);padding:1rem}.algebra-brief h4,.algebra-message h4{display:flex;align-items:center;gap:.4rem;margin:0 0 .7rem;color:#ded7f2;font-size:.82rem}.algebra-brief h4 svg,.algebra-message h4 svg{width:16px;height:16px;color:#a78bfa}.algebra-brief p{margin:.5rem 0;color:#aaa5b5;font-size:.74rem;line-height:1.45}.algebra-brief p strong{color:#d9d1ef}.algebra-brief ul{margin:.75rem 0 0;padding:0;list-style:none}.algebra-brief li{display:flex;justify-content:space-between;gap:.5rem;padding:.45rem 0;border-top:1px solid rgba(255,255,255,.06);color:#b3adbf;font-size:.7rem}.algebra-brief li strong{color:#f0a0aa}.algebra-brief li span{color:#f08b98}.algebra-message-head{display:flex;justify-content:space-between;gap:.6rem}.algebra-message-head span{color:#a9a1bc;font-size:.64rem}.algebra-message input,.algebra-message textarea{width:100%;border:1px solid rgba(167,139,250,.2);border-radius:6px;background:#101014;color:#ddd8e8;font:inherit;font-size:.73rem;padding:.55rem;margin-top:.5rem}.algebra-message textarea{height:165px;resize:vertical;line-height:1.45}.algebra-message-actions{display:flex;gap:.55rem;margin-top:.65rem}.algebra-message .algebra-action{background:rgba(124,58,237,.13);color:#c4b5fd;border-color:rgba(167,139,250,.48)}.algebra-message .algebra-email-action{background:rgba(124,58,237,.28);color:#f1edff}.algebra-message>small{display:block;margin-top:.65rem;color:#928ba0;font-size:.62rem;line-height:1.4}.algebra-flow{display:flex;align-items:center;gap:.55rem;margin-top:1rem;color:#a9a1bc;font-size:.68rem}.algebra-flow span{display:flex;align-items:center;gap:.35rem}.algebra-flow b{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#6d28d9;color:#fff;font-size:.6rem}.algebra-flow i{height:1px;flex:1;max-width:70px;background:rgba(167,139,250,.3)}@media(max-width:800px){.algebra-intelligence-grid{grid-template-columns:1fr}.algebra-intelligence-metrics{grid-template-columns:1fr}.algebra-intelligence-head{align-items:start;flex-direction:column}}
.portfolio-header-actions .objective-view-tab-algebra{color:#c4b5fd!important;border-color:rgba(167,139,250,.45)!important;background:rgba(124,58,237,.06)}.portfolio-header-actions .objective-view-tab-algebra.active{color:#eee9ff!important;border-color:rgba(167,139,250,.82)!important;background:rgba(124,58,237,.24)!important}
.brand-logo-image{transform:translateY(-1.65rem) scale(1.25)}.logo-container{align-items:flex-start}
.gains-filter-bar{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:1rem 0 .8rem}.gains-filter-bar>span{color:#8e9b93;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;margin-right:.18rem}.gains-period-filter{border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.025);color:#aab6ad;padding:.38rem .62rem;font:inherit;font-size:.67rem;cursor:pointer}.gains-period-filter:hover,.gains-period-filter.active{border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.09);color:#f0bd68}.gains-summary-grid .dividend-summary-card small{display:block;color:#8d9a92;font-size:.59rem;margin-top:.25rem}.gains-visual-grid{display:grid;grid-template-columns:1.1fr .85fr .85fr;gap:.8rem;margin:1rem 0}.gains-chart-card,.gains-capital-card{min-height:220px;padding:.85rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.018)}.gains-chart-card>div span,.gains-capital-card>span{display:block;color:#8d9a92;font-size:.61rem;font-weight:800;letter-spacing:.07em}.gains-chart-card>div strong{display:block;color:#e9f0ea;font-size:.9rem;margin:.2rem 0}.gains-chart-card canvas{height:165px!important;max-height:165px}.gains-capital-card{display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,rgba(96,165,250,.08),rgba(255,255,255,.018))}.gains-capital-card>strong{font-size:1.35rem;margin:.5rem 0}.gains-capital-card>strong.positive{color:#7dd3a6}.gains-capital-card>strong.negative{color:#ff9797}.gains-capital-card p{color:#aab6ad;font-size:.67rem;margin:.1rem 0 .75rem}.gains-capital-card p i{display:inline-block;height:1px;width:13px;vertical-align:middle;background:#89968d;margin:0 .3rem}.gains-capital-card>div{height:7px;border-radius:8px;background:rgba(255,255,255,.09);overflow:hidden}.gains-capital-card>div b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#60a5fa,#9bc4f6)}.gains-detail-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:.8rem}.pending{color:#e7bd70!important}.reconcile-status{display:inline-block;padding:.22rem .38rem;border:1px solid rgba(231,189,112,.35);border-radius:999px;font-size:.56rem;color:#e7bd70;white-space:nowrap}.gains-note{margin-top:.9rem;color:#8e9b93;font-size:.68rem;line-height:1.5}.gains-note strong{color:#dcbf7b}.gains-note span{color:#727e76}@media(max-width:900px){.gains-visual-grid,.gains-detail-grid{grid-template-columns:1fr}.gains-chart-card canvas{height:190px!important;max-height:190px}}
.dividend-map-view{margin:0 0 1.5rem;padding:1.35rem}.dividend-map-view[hidden]{display:none}.dividend-map-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}.dividend-map-kpis article{padding:.82rem;border:1px solid rgba(125,211,166,.18);border-radius:8px;background:rgba(125,211,166,.035)}.dividend-map-kpis span{display:block;color:#8d9a92;font-size:.6rem;font-weight:800;letter-spacing:.07em}.dividend-map-kpis strong{display:block;color:#9ce0b9;font-size:1.08rem;margin-top:.25rem}.dividend-map-kpis small{display:block;color:#8d9a92;font-size:.63rem;margin-top:.17rem}.dividend-map-grid{display:grid;grid-template-columns:1.25fr .8fr .9fr;gap:.8rem}.dividend-map-chart,.dividend-map-classes{min-height:280px;padding:.9rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.018)}.dividend-map-chart h4,.dividend-map-classes h4{margin:0;color:#dfe8e0;font-size:.78rem}.dividend-map-chart canvas{height:230px!important;max-height:230px}.dividend-map-class-row{display:flex;justify-content:space-between;gap:.5rem;padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.065);color:#aab6ad;font-size:.7rem}.dividend-map-class-row span{display:inline-flex;align-items:center;gap:.35rem}.dividend-map-class-row i{width:7px;height:7px;border-radius:50%}.dividend-map-class-row strong{color:#e3ece4}.dividend-map-classes p{margin:.75rem 0 0;color:#7f8b83;font-size:.63rem;line-height:1.45}@media(max-width:1000px){.dividend-map-grid{grid-template-columns:1fr 1fr}.dividend-map-classes{grid-column:1/-1}}@media(max-width:650px){.dividend-map-kpis,.dividend-map-grid{grid-template-columns:1fr}.dividend-map-classes{grid-column:auto}}
.dividend-map-head{align-items:flex-start}.dividend-map-legend{display:flex;gap:.65rem;flex-wrap:wrap;font-size:.65rem;font-weight:700;white-space:nowrap}.dividend-map-legend .is-confirmed{color:#61d8a0}.dividend-map-legend .is-estimated{color:#e5b75f}.dividend-map-months,.dividend-map-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0;margin-top:.2rem;border-bottom:1px solid rgba(255,255,255,.075)}.dividend-map-months>span,.dividend-map-filter-bar strong{font-size:.68rem;color:#cdd8d0;text-transform:uppercase;letter-spacing:.07em}.dividend-map-months>div,.dividend-map-filter-bar>div:last-child{display:flex;gap:.35rem;flex-wrap:wrap}.dividend-map-month,.dividend-map-filter{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.02);color:#8d9a92;border-radius:7px;padding:.42rem .6rem;cursor:pointer;font:inherit}.dividend-map-month{display:flex;align-items:baseline;gap:.25rem}.dividend-map-month strong{font-size:.74rem;text-transform:capitalize}.dividend-map-month small{font-size:.59rem}.dividend-map-month:hover,.dividend-map-filter:hover{color:#e5ece6;border-color:rgba(229,183,95,.45)}.dividend-map-month.active,.dividend-map-filter.active{color:#ffe1a0;border-color:rgba(229,183,95,.7);background:rgba(229,183,95,.1)}.dividend-map-kpis article.is-current{border-color:rgba(66,211,146,.4);background:rgba(66,211,146,.06)}.dividend-map-kpis article.is-current strong{color:#5add9e}.dividend-map-filter-bar small{display:block;color:#7d8a82;font-size:.62rem;margin-top:.15rem}.dividend-map-calendar-layout{display:grid;grid-template-columns:.8fr 1.4fr;gap:.8rem;margin:1rem 0}.dividend-calendar-card,.dividend-agenda-card{border:1px solid rgba(255,255,255,.085);border-radius:10px;background:rgba(255,255,255,.018);padding:.9rem}.dividend-calendar-title{display:flex;align-items:start;justify-content:space-between;gap:.6rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.075)}.dividend-calendar-title span{display:block;color:#849188;font-size:.59rem;letter-spacing:.08em;font-weight:800}.dividend-calendar-title h4{margin:.14rem 0 0;color:#e7eee8;font-size:.95rem;text-transform:capitalize}.dividend-calendar-title>strong{color:#f0c46e;font-size:.92rem}.dividend-calendar-title>small{color:#9ba89f;font-size:.63rem}.dividend-calendar-week,.dividend-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.22rem}.dividend-calendar-week{margin:.65rem 0 .3rem}.dividend-calendar-week span{font-size:.52rem;text-align:center;color:#68766d}.dividend-calendar-day{position:relative;min-height:24px;display:grid;place-items:center;border-radius:5px;color:#8f9c94;font-size:.6rem;background:rgba(255,255,255,.022)}.dividend-calendar-day.is-confirmed{background:rgba(66,211,146,.16);color:#a6f1c6;font-weight:800;border:1px solid rgba(66,211,146,.45)}.dividend-calendar-day i{position:absolute;right:3px;top:3px;width:4px;height:4px;background:#59d997;border-radius:50%}.dividend-calendar-card p{margin:.7rem 0 0;color:#849188;font-size:.63rem;line-height:1.45}.dividend-calendar-card p b{color:#cdd8d0}.dividend-agenda-card{padding-bottom:.25rem}.dividend-agenda-row{display:grid;grid-template-columns:80px 86px 1fr auto;align-items:center;gap:.65rem;padding:.68rem 0;border-bottom:1px solid rgba(255,255,255,.065)}.dividend-agenda-date b,.dividend-agenda-date small,.dividend-agenda-name strong,.dividend-agenda-name small{display:block}.dividend-agenda-date b{font-size:.64rem;color:#cbd6ce}.dividend-agenda-date small,.dividend-agenda-name small{font-size:.57rem;color:#758279;margin-top:.12rem}.dividend-agenda-status{font-size:.6rem;font-weight:700}.dividend-agenda-row.is-confirmed .dividend-agenda-status{color:#62dca0}.dividend-agenda-row.is-estimated .dividend-agenda-status{color:#e4bb68}.dividend-agenda-name strong{color:#dce6de;font-size:.71rem}.dividend-agenda-value{font-size:.74rem;color:#eaf1eb;white-space:nowrap}.dividend-agenda-row.is-confirmed .dividend-agenda-value{color:#62dca0}.dividend-empty-state{padding:1.5rem .2rem;color:#7d8a82;font-size:.7rem;text-align:center}.dividend-map-visuals{margin-top:.8rem}.dividend-map-class-row small{margin-left:auto;color:#7f8b83;font-size:.58rem}.dividend-map-class-row strong{order:2}.dividend-coverage{margin-top:.75rem}.dividend-coverage span,.dividend-coverage strong{display:block;font-size:.62rem;color:#94a198}.dividend-coverage b{display:block;height:7px;margin:.38rem 0;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.dividend-coverage b i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e6b75e,#ff9e45)}.dividend-map-intelligence{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;margin-top:.85rem;padding:1rem;border:1px solid rgba(167,139,250,.25);background:linear-gradient(100deg,rgba(124,58,237,.1),rgba(167,139,250,.025));border-radius:10px}.dividend-map-intelligence span{color:#c4b5fd;font-size:.58rem;font-weight:800;letter-spacing:.08em}.dividend-map-intelligence h4{margin:.24rem 0;color:#eee9ff;font-size:.86rem}.dividend-map-intelligence p{margin:0;color:#aab4ae;font-size:.68rem;line-height:1.5;max-width:800px}.dividend-map-intelligence-stat{text-align:right;white-space:nowrap}.dividend-map-intelligence-stat strong{display:block;color:#e6d8ff;font-size:1rem;margin-top:.25rem}.dividend-map-intelligence-stat small{color:#9f9aaa;font-size:.61rem}@media(max-width:900px){.dividend-map-calendar-layout{grid-template-columns:1fr}.dividend-map-months,.dividend-map-filter-bar{align-items:flex-start;flex-direction:column}.dividend-map-intelligence{align-items:flex-start;flex-direction:column}.dividend-map-intelligence-stat{text-align:left}}@media(max-width:600px){.dividend-agenda-row{grid-template-columns:1fr auto;gap:.35rem}.dividend-agenda-status{grid-row:2}.dividend-agenda-name{grid-row:2}.dividend-agenda-value{grid-column:2;grid-row:1 / span 2}.dividend-map-months>div{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.dividend-map-month{justify-content:center}}
.dividend-date-radar{margin:-.7rem 0 2rem;padding:1.2rem;border:1px solid rgba(92,194,156,.28);border-radius:11px;background:linear-gradient(110deg,rgba(65,177,135,.075),rgba(255,255,255,.015))}.dividend-date-radar-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding-bottom:.85rem;border-bottom:1px solid rgba(255,255,255,.08)}.dividend-date-radar-head h3{margin:.2rem 0;color:#edf3ee;font-size:1.05rem}.dividend-date-radar-head p{margin:.3rem 0 0;color:#91a097;font-size:.7rem}.dividend-date-source{color:#7fe0aa;border:1px solid rgba(95,214,154,.4);background:rgba(66,211,146,.07);padding:.38rem .55rem;border-radius:999px;font-size:.62rem;font-weight:700;white-space:nowrap}.dividend-date-source.is-pending{color:#e5bb6b;border-color:rgba(229,187,107,.4);background:rgba(229,187,107,.06)}.dividend-date-event-list{display:grid;gap:0}.dividend-date-event{display:grid;grid-template-columns:82px 1.45fr .7fr .8fr .9fr;align-items:center;gap:.7rem;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.065)}.dividend-date-event-status{display:flex;flex-direction:column;gap:.12rem}.dividend-date-event-status i{width:7px;height:7px;border-radius:50%;background:#e6bb68;box-shadow:0 0 10px rgba(230,187,104,.4)}.dividend-date-event.is-urgent .dividend-date-event-status i{background:#fb5c73;box-shadow:0 0 12px rgba(251,92,115,.7)}.dividend-date-event.is-upcoming .dividend-date-event-status i{background:#f2bd68}.dividend-date-event.is-passed .dividend-date-event-status i{background:#6d7a72;box-shadow:none}.dividend-date-event-status strong,.dividend-date-event-main strong,.dividend-date-event div>strong{display:block;color:#dfe8e0;font-size:.7rem}.dividend-date-event-status small,.dividend-date-event-main span,.dividend-date-event div>span{display:block;color:#7f8d84;font-size:.58rem;margin-top:.12rem}.dividend-date-event-main strong{color:#f2f6f3;font-size:.78rem}.dividend-date-event.is-urgent .dividend-date-event-main span{color:#ff9aaa;font-weight:700}.dividend-date-event.is-upcoming .dividend-date-event-main span{color:#f1c474}.dividend-date-radar-note{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;color:#95a39a;font-size:.65rem}.dividend-date-radar-note svg{width:15px;color:#7fe0aa}.dividend-date-radar-note strong{color:#c8d6cb}.dividend-date-empty{display:flex;align-items:center;gap:.8rem;padding:1rem 0 .1rem}.dividend-date-empty>svg{width:27px;height:27px;color:#e5bb6b}.dividend-date-empty strong{display:block;color:#dfe8e0;font-size:.76rem}.dividend-date-empty p{margin:.2rem 0 0;color:#849188;font-size:.66rem;line-height:1.45}.dividend-date-empty>span{margin-left:auto;color:#bfb186;font-size:.62rem;white-space:nowrap}@media(max-width:800px){.dividend-date-event{grid-template-columns:72px 1fr 1fr}.dividend-date-event>div:nth-last-child(-n+2){display:none}.dividend-date-radar-head{flex-direction:column}.dividend-date-empty>span{display:none}}@media(max-width:520px){.dividend-date-event{grid-template-columns:65px 1fr}.dividend-date-event>div:nth-last-child(-n+3){display:none}.dividend-date-empty{align-items:flex-start}}
.objective-header-card{align-items:stretch!important;padding:1rem 1.2rem!important}.objective-header-card .objective-title-block{align-self:center}.objective-header-card .portfolio-header-actions{flex:1 1 680px;align-self:stretch;display:grid;grid-template-columns:repeat(10,minmax(58px,1fr));gap:.38rem}.objective-header-card .portfolio-header-actions .objective-view-tab{min-width:0;height:76px;padding:.45rem .3rem;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.42rem;text-align:center;line-height:1.12;font-size:.61rem;white-space:normal}.objective-header-card .portfolio-header-actions .objective-view-tab svg{width:20px;height:20px;stroke-width:2.15}.objective-header-card .portfolio-header-actions .objective-view-tab:hover{transform:translateY(-1px);background:rgba(255,255,255,.045)}.objective-header-card .portfolio-header-actions .objective-view-tab.active{box-shadow:inset 0 0 0 1px currentColor,0 5px 14px rgba(0,0,0,.16)}.objective-header-card .portfolio-header-actions .objective-view-tab-opportunity{color:#ffae72;border-color:rgba(251,146,60,.38);background:rgba(234,88,12,.045)}.objective-header-card .portfolio-header-actions .objective-view-tab-opportunity.active{color:#ffe0c3;border-color:rgba(251,146,60,.8);background:rgba(234,88,12,.18)}.objective-header-card .portfolio-header-actions .objective-view-tab-radar{color:#71d7e6;border-color:rgba(82,205,222,.36);background:rgba(6,182,212,.045)}.objective-header-card .portfolio-header-actions .objective-view-tab-radar.active{color:#d2f7fb;border-color:rgba(82,205,222,.8);background:rgba(6,182,212,.17)}@media(max-width:1250px){.objective-header-card .portfolio-header-actions{flex-basis:100%}}@media(max-width:760px){.objective-header-card .portfolio-header-actions{grid-template-columns:repeat(5,1fr)}.objective-header-card .portfolio-header-actions .objective-view-tab{height:68px;font-size:.58rem}}@media(max-width:460px){.objective-header-card .portfolio-header-actions{grid-template-columns:repeat(3,1fr)}}
#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="opportunities"]{display:none!important}
#tab-detalhe-objetivo.is-class-detail .portfolio-header-actions [data-objective-view="radar"]{display:none!important}
.nav-item-algebra{color:#c4b5fd!important}.nav-item-algebra:hover,.nav-item-algebra.active{color:#eee9ff!important}
.objective-header-card{gap:.75rem!important;padding:.8rem 1rem!important}.objective-header-card .objective-title-block{min-width:220px!important}.objective-header-card .portfolio-header-actions{flex-basis:760px!important;grid-template-columns:repeat(11,minmax(52px,1fr))!important;gap:.25rem!important}.objective-header-card .portfolio-header-actions .objective-view-tab{height:72px;padding:.35rem .2rem;gap:.32rem;font-size:.57rem}
.objective-title-kicker{display:block;margin-bottom:.12rem;color:#87948b;font-size:.58rem;font-weight:500;letter-spacing:.12em;line-height:1}
.meta-view{margin:0 0 1.5rem;padding:1.35rem}.meta-view[hidden]{display:none}.meta-status-chip{color:#83d8ad;border:1px solid rgba(131,216,173,.38);padding:.36rem .55rem;border-radius:999px;font-size:.62rem;white-space:nowrap}.meta-main-goal{display:grid;grid-template-columns:.8fr 1.2fr .9fr;gap:1rem;margin:1rem 0;padding:1rem;border:1px solid rgba(245,158,11,.25);border-radius:10px;background:linear-gradient(110deg,rgba(245,158,11,.08),rgba(255,255,255,.015))}.meta-main-goal>div>span,.meta-section-title>span{display:block;color:#9a8d73;font-size:.59rem;font-weight:800;letter-spacing:.08em}.meta-main-goal strong{display:block;color:#f3c26d;font-size:1.25rem;margin-top:.28rem}.meta-main-goal small{display:block;color:#849188;font-size:.62rem;margin-top:.18rem}.meta-progress{display:flex;flex-direction:column;justify-content:center}.meta-progress>div{display:flex;justify-content:space-between;gap:.5rem}.meta-progress>div b{color:#dce8df;font-size:.75rem}.meta-progress>i{display:block;height:8px;margin:.55rem 0 .25rem;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.meta-progress>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e4af54,#7ed7aa)}.meta-section-title{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1.15rem 0 .65rem}.meta-section-title small{color:#77847b;font-size:.62rem}.meta-allocation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.meta-allocation-row{padding:.78rem;border:1px solid rgba(255,255,255,.075);border-radius:9px;background:rgba(255,255,255,.018)}.meta-allocation-row>div{display:flex;justify-content:space-between;gap:.5rem;align-items:start}.meta-allocation-row>div span{color:#dce6df;font-size:.73rem}.meta-allocation-row>div span i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:.35rem}.meta-allocation-row>div small,.meta-allocation-row>small{color:#7e8b82;font-size:.58rem}.meta-allocation-row>strong{display:block;color:#e5eee7;font-size:.9rem;margin:.45rem 0}.meta-allocation-row>em{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.meta-allocation-row>em b{display:block;height:100%;border-radius:inherit;background:#8ed2b7}.meta-next-step{display:flex;align-items:center;gap:.65rem;margin-top:.85rem;padding:.85rem;border:1px solid rgba(167,139,250,.22);border-radius:9px;background:rgba(124,58,237,.06)}.meta-next-step>svg{width:20px;color:#c4b5fd}.meta-next-step span{display:block;color:#aa9fca;font-size:.57rem;letter-spacing:.08em;font-weight:800}.meta-next-step strong{display:block;color:#e4ddf7;font-size:.7rem;margin-top:.16rem}.meta-empty{grid-column:1/-1;padding:1.5rem;color:#849188;text-align:center;border:1px dashed rgba(255,255,255,.12);border-radius:9px;font-size:.7rem}@media(max-width:780px){.meta-main-goal{grid-template-columns:1fr}.meta-allocation-grid{grid-template-columns:1fr}}
.broker-cash-panel{margin:0 0 1.5rem;padding:1.1rem 1.25rem}.broker-cash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.broker-cash-head h3{margin:.2rem 0 0;color:#e9f0eb;font-size:1rem}.broker-cash-head p{margin:.25rem 0 0;color:#849188;font-size:.68rem}.broker-cash-chip{color:#9fcead;border:1px solid rgba(131,216,173,.28);border-radius:999px;padding:.34rem .5rem;font-size:.59rem;white-space:nowrap}.broker-cash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.broker-cash-card{display:flex;align-items:center;gap:.65rem;padding:.75rem;border:1px solid rgba(255,255,255,.075);border-left:3px solid #8fa8d8;border-radius:9px;background:rgba(255,255,255,.018)}.broker-cash-card.btg{border-left-color:#d2b77f}.broker-cash-card.xp{border-left-color:#8fa8d8}.broker-cash-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.045);color:#a7bee8}.broker-cash-card.btg .broker-cash-icon{color:#e2c983}.broker-cash-icon svg{width:17px}.broker-cash-card>div:nth-child(2){min-width:0}.broker-cash-card span,.broker-cash-card strong,.broker-cash-card small{display:block}.broker-cash-card span{color:#aebbb2;font-size:.65rem}.broker-cash-card strong{color:#edf3ee;font-size:.95rem;margin:.12rem 0}.broker-cash-card small{color:#758279;font-size:.56rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.broker-cash-status{margin-left:auto;font-size:.56rem;white-space:nowrap}.broker-cash-status.ready{color:#76d6a2}.broker-cash-status.pending{color:#e4bb68}.broker-cash-total{grid-column:1/-1;display:flex;align-items:center;gap:.7rem;padding:.65rem .75rem;border-top:1px solid rgba(255,255,255,.065);color:#87958c;font-size:.62rem}.broker-cash-total strong{margin-left:auto;color:#e6c477;font-size:.85rem}.broker-cash-total small{color:#68766e;font-size:.56rem}@media(max-width:700px){.broker-cash-grid{grid-template-columns:1fr}.broker-cash-total{flex-wrap:wrap}.broker-cash-total strong{margin-left:0}.broker-cash-head{flex-direction:column}}
.global-portfolios-panel{margin:0 0 1.5rem;padding:1.1rem 1.25rem}.global-portfolios-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.global-portfolios-head h3{margin:.2rem 0 0;color:#e9f0eb;font-size:1rem}.global-portfolios-head p{margin:.25rem 0 0;color:#849188;font-size:.68rem}.global-portfolios-chip{color:#aabde4;border:1px solid rgba(143,168,216,.3);border-radius:999px;padding:.34rem .5rem;font-size:.59rem;white-space:nowrap}.global-portfolios-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.global-portfolio-card{padding:.9rem;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.018)}.global-portfolio-card header{display:flex;align-items:center;gap:.6rem}.global-portfolio-card header>div:nth-child(2){min-width:0}.global-portfolio-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;color:#9ed1b8;background:rgba(125,211,166,.08)}.global-portfolio-card:nth-child(2) .global-portfolio-icon{color:#9db4e1;background:rgba(143,168,216,.08)}.global-portfolio-card:nth-child(3) .global-portfolio-icon{color:#e0c784;background:rgba(210,183,127,.08)}.global-portfolio-icon svg{width:17px}.global-portfolio-card h4{margin:0;color:#e8f0ea;font-size:.78rem}.global-portfolio-card header span{display:block;color:#7f8c83;font-size:.58rem;margin-top:.12rem}.global-portfolio-card header>b{margin-left:auto;color:#e5bd69;font-size:.57rem;text-align:right}.global-portfolio-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;margin:.85rem 0 .65rem;padding:.65rem 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.global-portfolio-metrics span,.global-portfolio-metrics strong{display:block}.global-portfolio-metrics span{color:#7d8b82;font-size:.54rem}.global-portfolio-metrics strong{color:#e5eee7;font-size:.72rem;margin-top:.14rem}.global-portfolio-footer{display:flex;justify-content:space-between;gap:.5rem;color:#8d9a92;font-size:.57rem}.global-portfolio-footer small{color:#6f7c73;text-align:right}.global-portfolio-empty{grid-column:1/-1;padding:1.5rem;text-align:center;color:#849188;font-size:.7rem}@media(max-width:800px){.global-portfolios-grid{grid-template-columns:1fr}.global-portfolios-head{flex-direction:column}}@media(max-width:520px){.global-portfolio-metrics{grid-template-columns:repeat(2,1fr)}.global-portfolio-footer{flex-direction:column}.global-portfolio-footer small{text-align:left}}
.broker-cash-card.ibkr{border-left-color:#a99dca}.broker-cash-card.agora{border-left-color:#8bc4b0}.broker-cash-card.ibkr .broker-cash-icon{color:#c1b5e6}.broker-cash-card.agora .broker-cash-icon{color:#9ed8c0}
.broker-cash-reconciliation{grid-column:1/-1;display:flex;align-items:center;gap:.55rem;padding:.58rem .7rem;border:1px solid rgba(228,187,104,.2);border-radius:8px;background:rgba(228,187,104,.055);color:#9f9a82;font-size:.59rem;line-height:1.35}.broker-cash-reconciliation svg{width:15px;height:15px;flex:0 0 auto;color:#e4bb68}.broker-cash-reconciliation strong{color:#e2c77f}
.objective-header-card .portfolio-header-actions .objective-view-tab-algebra,.objective-header-card .portfolio-header-actions .objective-view-tab-radar,.objective-header-card .portfolio-header-actions .objective-view-tab-opportunity{color:#aab6ad!important;border-color:var(--border-color)!important;background:rgba(255,255,255,.02)!important}.objective-header-card .portfolio-header-actions .objective-view-tab-algebra.active,.objective-header-card .portfolio-header-actions .objective-view-tab-radar.active,.objective-header-card .portfolio-header-actions .objective-view-tab-opportunity.active{color:#ffb35c!important;border-color:rgba(245,158,11,.4)!important;background:rgba(245,158,11,.08)!important}
.table-responsive{max-width:100%;overflow-x:auto!important;overflow-y:visible;-webkit-overflow-scrolling:touch}.table-responsive .data-table{min-width:1100px}@media(max-width:760px){.objective-header-card .portfolio-header-actions{grid-template-columns:repeat(5,1fr)!important}}@media(max-width:460px){.objective-header-card .portfolio-header-actions{grid-template-columns:repeat(3,1fr)!important}}
.opportunity-view{margin:0 0 1.5rem;padding:1.35rem}.opportunity-view[hidden]{display:none}.opportunity-safety-chip{color:#ffb77f;border:1px solid rgba(251,146,60,.4);padding:.36rem .55rem;border-radius:999px;font-size:.62rem;white-space:nowrap}.opportunity-brief{display:flex;align-items:center;gap:.75rem;margin:1rem 0;padding:1rem;border:1px solid rgba(251,146,60,.25);border-radius:10px;background:linear-gradient(110deg,rgba(234,88,12,.12),rgba(255,255,255,.02))}.opportunity-brief>svg{width:28px;height:28px;color:#ff9b58}.opportunity-brief span{display:block;color:#ffa86a;font-size:.58rem;font-weight:800;letter-spacing:.08em}.opportunity-brief strong{display:block;color:#fff0e5;font-size:.9rem;margin-top:.16rem}.opportunity-brief p{margin:.2rem 0 0;color:#a6afa9;font-size:.66rem}.opportunity-brief>b{margin-left:auto;color:#ffd1ad;font-size:.68rem;white-space:nowrap}.opportunity-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.opportunity-card{padding:.82rem;border:1px solid rgba(255,255,255,.085);border-radius:10px;background:rgba(255,255,255,.018)}.opportunity-card.hot{border-color:rgba(251,92,115,.47);background:linear-gradient(145deg,rgba(251,92,115,.11),rgba(255,255,255,.018))}.opportunity-card.warm{border-color:rgba(251,146,60,.36)}.opportunity-card header{display:flex;justify-content:space-between;gap:.3rem}.opportunity-card header span{display:inline-flex;align-items:center;gap:.25rem;color:#9ca9a0;font-size:.55rem;font-weight:800}.opportunity-card.hot header span{color:#ffa0ae}.opportunity-card.warm header span{color:#ffc070}.opportunity-card header svg{width:12px}.opportunity-card header b{color:#89968e;font-size:.55rem}.opportunity-title{margin:.7rem 0 .55rem}.opportunity-title strong,.opportunity-title small{display:block}.opportunity-title strong{color:#eff4f0;font-size:.95rem}.opportunity-title small{height:28px;overflow:hidden;margin-top:.13rem;color:#849188;font-size:.58rem;line-height:1.25}.opportunity-score{position:relative;height:6px;margin:.5rem 0 .7rem;border-radius:99px;background:rgba(255,255,255,.075);overflow:hidden}.opportunity-score i{display:block;height:100%;border-radius:inherit;background:#d5ad5c}.opportunity-card.hot .opportunity-score i{background:#f46f82}.opportunity-card p{margin:.28rem 0;color:#98a59d;font-size:.62rem;line-height:1.4}.opportunity-card p strong{color:#c8d3cb}.opportunity-card footer{display:flex;justify-content:space-between;align-items:end;gap:.3rem;margin-top:.72rem;padding-top:.55rem;border-top:1px solid rgba(255,255,255,.06)}.opportunity-card footer span{color:#e6ece7;font-size:.75rem;font-weight:700}.opportunity-card footer small{color:#6f7d74;font-size:.52rem;text-align:right}.opportunity-empty{grid-column:1/-1;padding:2rem;color:#849188;text-align:center;border:1px dashed rgba(255,255,255,.12);border-radius:9px;font-size:.72rem}.opportunity-method{margin-top:.85rem;padding:.85rem;border:1px solid rgba(255,255,255,.075);border-radius:9px;background:rgba(255,255,255,.014)}.opportunity-method h4{margin:0;color:#dfe7e0;font-size:.73rem}.opportunity-method>div{display:flex;gap:.45rem;flex-wrap:wrap;margin:.65rem 0}.opportunity-method span{display:inline-flex;align-items:center;gap:.3rem;color:#9aa69e;font-size:.61rem}.opportunity-method b{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:rgba(251,146,60,.15);color:#ffbd85;font-size:.56rem}.opportunity-method p{margin:0;color:#7d8b82;font-size:.62rem;line-height:1.45}@media(max-width:1200px){.opportunity-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.opportunity-grid{grid-template-columns:repeat(2,1fr)}.opportunity-brief{align-items:flex-start;flex-wrap:wrap}.opportunity-brief>b{margin-left:0}}@media(max-width:480px){.opportunity-grid{grid-template-columns:1fr}.opportunity-safety-chip{white-space:normal}}

.opportunity-cash-context{display:flex;align-items:center;gap:.7rem;margin:-.35rem 0 .9rem;padding:.78rem .9rem;border:1px solid rgba(132,204,22,.22);border-radius:10px;background:linear-gradient(100deg,rgba(132,204,22,.09),rgba(255,255,255,.018))}.opportunity-cash-context>svg{width:24px;height:24px;color:#a7e163}.opportunity-cash-context span{display:block;color:#afdb88;font-size:.56rem;font-weight:800;letter-spacing:.08em}.opportunity-cash-context strong{display:block;color:#e8ffd7;font-size:.98rem;margin:.1rem 0}.opportunity-cash-context small{display:block;color:#98a59b;font-size:.62rem}
.performance-view{margin:0 0 1.5rem;padding:1.35rem}.performance-view[hidden]{display:none}.performance-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}.performance-kpis article{padding:.82rem;border:1px solid rgba(96,165,250,.2);border-radius:8px;background:rgba(96,165,250,.04)}.performance-kpis span{display:block;color:#8d9a92;font-size:.6rem;font-weight:800;letter-spacing:.07em}.performance-kpis strong{display:block;color:#dbeafe;font-size:1.05rem;margin-top:.25rem}.performance-kpis strong.positive{color:#7dd3a6}.performance-kpis strong.negative{color:#ff9797}.performance-kpis small{display:block;color:#8d9a92;font-size:.63rem;margin-top:.18rem}.performance-grid{display:grid;grid-template-columns:1fr 1fr .8fr;gap:.8rem}.performance-chart-card,.performance-benchmark{min-height:270px;padding:.9rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.018)}.performance-chart-card h4,.performance-benchmark h4,.performance-class-table h4{margin:0;color:#dfe8e0;font-size:.78rem}.performance-chart-card canvas{height:225px!important;max-height:225px}.performance-benchmark{background:linear-gradient(145deg,rgba(96,165,250,.07),rgba(255,255,255,.015))}.performance-benchmark>div{display:flex;justify-content:space-between;gap:.4rem;padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.065);font-size:.7rem}.performance-benchmark>div span{color:#cbd5e1;font-weight:700}.performance-benchmark>div b{color:#8fa0b8;font-size:.62rem}.performance-benchmark p{margin:.8rem 0 0;color:#7f8b83;font-size:.64rem;line-height:1.45}.performance-class-table{display:grid;grid-template-columns:1.1fr repeat(4,1fr);gap:.55rem;margin-top:.8rem;padding:.85rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.018)}.performance-class-table h4{grid-column:1/-1}.performance-class-table>div{padding:.55rem;border-radius:6px;background:rgba(255,255,255,.025)}.performance-class-table span,.performance-class-table strong,.performance-class-table small{display:block}.performance-class-table span{color:#aab6ad;font-size:.68rem}.performance-class-table span i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:.35rem}.performance-class-table strong{font-size:.78rem;margin-top:.25rem}.performance-class-table strong.positive{color:#7dd3a6}.performance-class-table strong.negative{color:#ff9797}.performance-class-table small{color:#8d9a92;font-size:.59rem;margin-top:.2rem}@media(max-width:1000px){.performance-grid{grid-template-columns:1fr 1fr}.performance-benchmark{grid-column:1/-1}.performance-class-table{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.performance-kpis,.performance-grid,.performance-class-table{grid-template-columns:1fr}.performance-benchmark{grid-column:auto}}
.risk-view{margin:0 0 1.5rem;padding:1.35rem}.risk-view[hidden]{display:none}.risk-score{padding:.4rem .65rem;border-radius:999px;font-size:.67rem;font-weight:800}.risk-score.controlado{color:#9ce0b9;border:1px solid rgba(125,211,166,.4);background:rgba(125,211,166,.08)}.risk-score.moderado{color:#f0bd68;border:1px solid rgba(240,189,104,.4);background:rgba(240,189,104,.08)}.risk-score.elevado{color:#ff9ba6;border:1px solid rgba(255,139,150,.4);background:rgba(255,139,150,.08)}.risk-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}.risk-kpis article{padding:.82rem;border:1px solid rgba(255,139,150,.18);border-radius:8px;background:rgba(255,139,150,.035)}.risk-kpis span{display:block;color:#8d9a92;font-size:.6rem;font-weight:800;letter-spacing:.07em}.risk-kpis strong{display:block;color:#f2dce0;font-size:1rem;margin-top:.25rem}.risk-kpis small{display:block;color:#8d9a92;font-size:.63rem;margin-top:.18rem}.risk-grid{display:grid;grid-template-columns:1.3fr .75fr .85fr;gap:.8rem}.risk-chart-card,.risk-exposure,.risk-alerts{min-height:290px;padding:.9rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.018)}.risk-chart-card h4,.risk-exposure h4,.risk-alerts h4,.risk-watchlist h4{margin:0;color:#dfe8e0;font-size:.78rem}.risk-chart-card canvas{height:215px!important;max-height:215px;margin-top:.45rem}.risk-chart-card p{margin:.25rem 0 0;color:#7f8b83;font-size:.62rem}.risk-exposure>div{display:grid;grid-template-columns:1fr auto;gap:.35rem;padding:.62rem 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.7rem}.risk-exposure span{color:#ccd5cf}.risk-exposure span small{display:block;color:#7f8b83;font-size:.58rem;margin-top:.12rem}.risk-exposure strong{color:#e5ece6}.risk-exposure i{grid-column:1/-1;height:4px;border-radius:6px;overflow:hidden;background:rgba(255,255,255,.08)}.risk-exposure i em{display:block;height:100%;border-radius:inherit;background:#dcbf7b}.risk-alerts{background:linear-gradient(145deg,rgba(255,139,150,.055),rgba(255,255,255,.018))}.risk-alerts p{margin:.75rem 0;color:#9ca7a0;font-size:.68rem;line-height:1.48}.risk-alerts strong{color:#f0c0c7}.risk-watchlist{display:grid;grid-template-columns:1.15fr repeat(5,1fr);gap:.55rem;margin-top:.8rem;padding:.85rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.018)}.risk-watchlist h4{grid-column:1/-1}.risk-watchlist>div{padding:.55rem;border-radius:6px;background:rgba(255,255,255,.025)}.risk-watchlist span,.risk-watchlist strong,.risk-watchlist small{display:block}.risk-watchlist span{color:#e5ece6;font-size:.7rem}.risk-watchlist strong{font-size:.7rem;margin:.25rem 0}.risk-watchlist strong.negative{color:#ff9797}.risk-watchlist strong.positive{color:#7dd3a6}.risk-watchlist small{color:#7f8b83;font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1050px){.risk-grid{grid-template-columns:1fr 1fr}.risk-alerts{grid-column:1/-1}.risk-watchlist{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.risk-kpis,.risk-grid,.risk-watchlist{grid-template-columns:1fr}.risk-alerts{grid-column:auto}}
.insights-view{margin:0 0 1.5rem;padding:1.35rem}.insights-view[hidden]{display:none}.insights-chip{color:#f0bd68;border:1px solid rgba(240,189,104,.4);border-radius:999px;padding:.4rem .65rem;font-size:.64rem}.insights-priority{display:flex;align-items:center;gap:.75rem;margin:1rem 0;padding:.85rem;border:1px solid rgba(245,158,11,.25);border-radius:9px;background:linear-gradient(100deg,rgba(245,158,11,.09),rgba(255,255,255,.018))}.insights-priority>svg{width:24px;height:24px;color:#f0bd68}.insights-priority span,.insights-priority strong{display:block}.insights-priority span{color:#d1aa62;font-size:.6rem;font-weight:800;letter-spacing:.08em}.insights-priority strong{color:#f0f2ed;font-size:.8rem;margin-top:.2rem}.insights-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.insight-card{min-height:210px;padding:.85rem;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.018);display:flex;flex-direction:column}.insight-card>div{display:flex;justify-content:space-between;gap:.45rem}.insight-card>div span{display:inline-flex;align-items:center;gap:.3rem;color:#aab6ad;font-size:.57rem;font-weight:800;letter-spacing:.05em}.insight-card>div span svg{width:14px;height:14px}.insight-card>div b{color:#9ca7a0;font-size:.57rem;padding:.2rem .35rem;border-radius:999px;background:rgba(255,255,255,.05)}.insight-card h4{margin:.75rem 0 .4rem;color:#e6ece6;font-size:.86rem;line-height:1.3}.insight-card p{margin:0;color:#9ca7a0;font-size:.67rem;line-height:1.5}.insight-card footer{margin-top:auto;padding-top:.55rem;border-top:1px solid rgba(255,255,255,.065);color:#8d9a92;font-size:.61rem}.insight-card.urgent{border-color:rgba(255,139,150,.42);background:rgba(255,139,150,.045)}.insight-card.urgent>div span,.insight-card.urgent footer{color:#ff9ba6}.insight-card.attention{border-color:rgba(240,189,104,.34);background:rgba(240,189,104,.035)}.insight-card.attention>div span,.insight-card.attention footer{color:#f0bd68}.insight-card.positive{border-color:rgba(125,211,166,.3);background:rgba(125,211,166,.03)}.insight-card.positive>div span,.insight-card.positive footer{color:#9ce0b9}.insights-method{margin-top:.8rem;padding:.85rem;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.018)}.insights-method h4{margin:0;color:#dfe8e0;font-size:.75rem}.insights-method>div{display:flex;gap:.5rem;flex-wrap:wrap;margin:.65rem 0}.insights-method span{display:inline-flex;align-items:center;gap:.3rem;color:#aab6ad;font-size:.65rem}.insights-method b{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:rgba(245,158,11,.14);color:#f0bd68;font-size:.57rem}.insights-method p{margin:0;color:#7f8b83;font-size:.63rem;line-height:1.45}@media(max-width:1050px){.insights-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.insights-grid{grid-template-columns:1fr}}

/* Padrão compartilhado de navegação e cartões para todas as carteiras. */
@media (min-width: 1280px) {
  .objective-header-card .portfolio-header-actions {
    grid-template-columns: repeat(11, minmax(52px, 1fr)) !important;
  }
}

@media (min-width: 900px) and (max-width: 1279px) {
  .objective-header-card .objective-title-block {
    flex: 1 1 100%;
  }
  .objective-header-card .portfolio-header-actions {
    flex: 1 1 100% !important;
    grid-template-columns: repeat(11, minmax(68px, 1fr)) !important;
    overflow-x: auto;
    padding-bottom: .22rem;
  }
}

@media (max-width: 899px) {
  .objective-header-card .portfolio-header-actions {
    display: flex !important;
    width: 100%;
    flex: 1 1 100% !important;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: .28rem;
    scroll-snap-type: x proximity;
  }
  .objective-header-card .portfolio-header-actions .objective-view-tab {
    flex: 0 0 88px;
    height: 68px;
    scroll-snap-align: start;
  }
  .metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .fii-class-summary-groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 599px) {
  .metrics-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .fii-class-summary-groups {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Ícones limpos no plano de FIIs: sem moldura e 20% maiores. */
.fii-class-summary-icon {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.fii-class-summary-item .fii-class-summary-icon > i,
.fii-class-summary-item .fii-class-summary-icon > svg {
  display: block;
  width: 26px !important;
  height: 26px !important;
  margin: 0;
  color: #fff;
}
