/*
 Theme Name: Blocksy Child
 Theme URI: https://deepcap.ai/wp-content/themes/blocksy-child
 Description: Child theme for Blocksy
 Author: DeepCap Oy
 Author URI: https://deepcap.ai/
 Template: blocksy
 Version: 1.0.0
 Text Domain: blocksy-child
*/

.section-scroll-anchor{display:block !important;height:1px !important;margin:0 !important;padding:0 !important;}
/**
 * DeepCap Dashboard - Apple-Inspired Light Theme
 * Clean, minimal design with progressive disclosure UX
 * Following Apple's design philosophy: sleek, functional, and intuitive
 */

/* ===== CSS Variables & Apple-Inspired Colors ===== */
:root {
  /* Apple-Inspired Color Palette */
  --dc-bg: #F5F5F7;           /* Light gray background */
  --dc-surface: #FFFFFF;      /* Pure white surfaces */
  --dc-surface-secondary: #F8F8F8; /* Slightly off-white */
  --dc-border: #E5E5E7;       /* Subtle borders */
  --dc-border-active: #FFD011; /* DeepCap yellow for active states */
  
  /* Text Colors */
  --dc-text-primary: #1D1D1F;   /* Apple's primary text color */
  --dc-text-secondary: #86868B; /* Apple's secondary text color */
  --dc-text-tertiary: #A1A1A6;  /* Apple's tertiary text color */
  
  /* Interactive Colors */
  --dc-link: #007AFF;         /* Apple's blue */
  --dc-link-hover: #0056CC;   /* Darker blue for hover */
  --dc-accent: #FFD011;       /* DeepCap yellow */
  --dc-accent-hover: #E6BB0F; /* Darker yellow for hover */
  
  /* Performance Colors - Muted for better readability */
  --dc-positive: #137333;     /* Muted green text */
  --dc-negative: #a50e0e;     /* Muted red text */
  --dc-positive-bg: #e6f4ea;  /* Subtle green background */
  --dc-negative-bg: #fce8e6;  /* Subtle red background */
  
  /* Spacing */
  --dc-spacing-xs: 0.5rem;
  --dc-spacing-sm: 1rem;
  --dc-spacing-md: 1.5rem;
  --dc-spacing-lg: 2rem;
  --dc-spacing-xl: 3rem;
  
  /* Border Radius */
  --dc-radius-sm: 8px;
  --dc-radius-md: 12px;
  --dc-radius-lg: 16px;
  /* Sticky header measured offset for mobile */
  --dc-sticky-offset: 100px;
  
  /* Shadows */
  --dc-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04);
  --dc-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.08);
  --dc-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.12);
  
  /* Transitions */
  --dc-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ===== Scrolling Stability ===== */
/* Disable browser scroll anchoring inside the dashboard to prevent upward "nudges" when content above changes height */
.deepcap-dashboard,
.deepcap-dashboard .market-section,
.deepcap-dashboard .section-selection,
.deepcap-dashboard .section-content {
  overflow-anchor: none !important;
}

/* Reduce browser overscroll effects that can interfere with scripted scroll positioning */
html, body {
  overscroll-behavior-y: contain;
}

/* ===== Base Styles ===== */
* {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: var(--dc-bg);
  color: var(--dc-text-primary);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'kern' 1, 'liga' 1;
}

/* ===== Dashboard Container ===== */
.deepcap-dashboard {
  min-height: 100vh;
  background: var(--dc-bg);
  padding: 0;
  margin: 0;
}

/* ===== Header ===== */
.dashboard-header {
  background: var(--dc-surface);
  border-bottom: 1px solid var(--dc-border);
  padding: var(--dc-spacing-lg) 0;
  position: sticky;
  top: 0;
  z-index: 100;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.header-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--dc-spacing-md);
  text-align: center;
}

.dashboard-title {
  font-size: 2.5rem;
  font-weight: 700;
  margin: 0 0 var(--dc-spacing-xs) 0;
  color: var(--dc-text-primary);
  letter-spacing: -0.025em;
}

.dashboard-subtitle {
  font-size: 1.1rem;
  color: var(--dc-text-secondary);
  margin: 0;
  font-weight: 400;
}

/* ===== Market Navigation ===== */
.market-nav {
  background: var(--dc-surface);
  border-bottom: 1px solid var(--dc-border);
  padding: var(--dc-spacing-sm) 0;
}

.nav-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--dc-spacing-md);
  display: flex;
  gap: var(--dc-spacing-lg);
  justify-content: center;
}

.market-tab {
  background: transparent;
  border: none;
  color: var(--dc-text-secondary);
  padding: var(--dc-spacing-sm) 0;
  cursor: pointer;
  font-family: inherit;
  font-size: 1.1rem;
  font-weight: 500;
  transition: var(--dc-transition);
  position: relative;
  border-bottom: 2px solid transparent;
}

.market-tab:hover {
  color: var(--dc-text-primary);
}

.market-tab.active {
  color: var(--dc-text-primary);
  border-bottom-color: var(--dc-accent);
}

/* ===== Market Content ===== */
.market-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: var(--dc-spacing-lg) var(--dc-spacing-md);
}

.market-section {
  display: none;
}

.market-section.active {
  display: block;
}

/* ===== Section Selection ===== */
.section-selection {
  text-align: center;
  margin-bottom: var(--dc-spacing-xl);
  animation: fadeInUp 0.4s ease-out;
}

.section-options {
  display: flex;
  gap: var(--dc-spacing-lg);
  justify-content: center;
  flex-wrap: wrap;
}

.section-option {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius-md);
  padding: var(--dc-spacing-md) var(--dc-spacing-lg);
  cursor: pointer;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 500;
  color: var(--dc-text-primary);
  transition: var(--dc-transition);
  min-width: 140px;
  text-align: center;
  box-shadow: var(--dc-shadow-sm);
}

.section-option:hover {
  border-color: var(--dc-accent);
  box-shadow: var(--dc-shadow-md);
  transform: translateY(-1px);
}

.section-option.active {
  border-color: var(--dc-accent);
  background: var(--dc-accent);
  color: var(--dc-text-primary);
  box-shadow: var(--dc-shadow-md);
}

/* ===== Section Content ===== */
.section-content {
  display: none;
  animation: fadeInUp 0.4s ease-out;
}

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

/* ===== Section Headers ===== */
.section-header {
  margin-bottom: var(--dc-spacing-xl);
  text-align: center;
}

.section-title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 var(--dc-spacing-xs) 0;
  color: var(--dc-text-primary);
  letter-spacing: -0.025em;
}

.section-description {
  font-size: 1.1rem;
  color: var(--dc-text-secondary);
  margin: 0;
  font-weight: 400;
}

/* ===== DeepList Options ===== */
.deeplist-options {
  margin-bottom: var(--dc-spacing-xl);
  animation: fadeInUp 0.4s ease-out;
}

.options-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--dc-spacing-lg);
  max-width: 900px;
  margin: 0 auto;
}

.deeplist-option {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius-lg);
  padding: var(--dc-spacing-lg);
  cursor: pointer;
  font-family: inherit;
  text-align: left;
  transition: var(--dc-transition);
  box-shadow: var(--dc-shadow-sm);
}

.deeplist-option:hover {
  border-color: var(--dc-accent);
  box-shadow: var(--dc-shadow-md);
  transform: translateY(-2px);
}

.deeplist-option.active {
  border-color: var(--dc-accent);
  background: var(--dc-accent);
  box-shadow: var(--dc-shadow-md);
}

.deeplist-option h3 {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0 0 var(--dc-spacing-xs) 0;
  color: var(--dc-text-primary);
}

.deeplist-option p {
  font-size: 0.95rem;
  color: var(--dc-text-secondary);
  margin: 0;
  line-height: 1.5;
}

/* ===== DeepList Content ===== */
.deeplist-content {
  animation: fadeInUp 0.4s ease-out;
}

.dc-scoreboard-card {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: 12px;
  box-shadow: var(--dc-shadow-sm);
  padding: var(--dc-spacing-sm);
}

.dc-scoreboard-card .card-content {
  min-height: 320px;
}

.dc-scoreboard-card .dc-lwchart {
  width: 100%;
  height: 100%;
}

.category-content {
  display: none;
  animation: fadeInUp 0.4s ease-out;
}

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

.content-header {
  margin-bottom: var(--dc-spacing-lg);
  text-align: center;
}

.content-header h3 {
  font-size: 1.75rem;
  font-weight: 600;
  margin: 0 0 var(--dc-spacing-xs) 0;
  color: var(--dc-text-primary);
  letter-spacing: -0.025em;
}

.content-header p {
  font-size: 1rem;
  color: var(--dc-text-secondary);
  margin: 0;
}

/* ===== Table Styles ===== */
.table-container {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius-lg);
  overflow: hidden;
  box-shadow: var(--dc-shadow-sm);
}

.data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.95rem;
}

.data-table thead th {
  background: var(--dc-surface-secondary);
  color: var(--dc-text-primary);
  font-weight: 600;
  text-align: left;
  padding: var(--dc-spacing-md);
  border-bottom: 1px solid var(--dc-border);
  position: sticky;
  top: 0;
  z-index: 10;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.data-table tbody td {
  padding: var(--dc-spacing-md);
  border-bottom: 1px solid var(--dc-border);
  vertical-align: middle;
}

.data-table tbody tr:nth-child(even) {
  background: var(--dc-surface-secondary);
}

.data-table tbody tr:hover {
  background: rgba(0, 122, 255, 0.04);
}

/* ===== Chart Grids (Advanced + Lightweight) ===== */
.dc-advgrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--dc-spacing-sm);
}

.dc-advchart,
.dc-lwwrap {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius-lg);
  box-shadow: var(--dc-shadow-sm);
  padding: var(--dc-spacing-sm);
  margin-bottom: var(--dc-spacing-lg);
}

/* Ensure LC tiles include their x-axis within the rounded border */
.dc-lwchart {
  display: block;
  padding-bottom: 10px; /* space to ensure time axis is inside card */
}

/* Slightly tighter inner padding for LC cards to match AC look */
.dc-lwwrap { padding: var(--dc-spacing-xs) var(--dc-spacing-sm); }

/* Extra spacing between consecutive .dc-advgrid containers */
.dc-advgrid + .dc-advgrid {
  margin-top: var(--dc-spacing-xl);
}

/* Embed ports: avoid CLS and provide a stable container */
.dc-port { min-height: 520px; }
/* Optional shimmer for ports */
.dc-port.loading { position: relative; overflow: hidden; }
.dc-port.loading::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(240,240,242,0.0) 0%, rgba(240,240,242,0.8) 50%, rgba(240,240,242,0.0) 100%); animation: shimmer 1.4s infinite; }
@keyframes shimmer { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } }

/* ===== Table Elements ===== */
.stock-link {
  color: var(--dc-link);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s ease;
}

.stock-link:hover {
  color: var(--dc-link-hover);
  text-decoration: underline;
}

.industry-tag {
  background: var(--dc-surface-secondary);
  color: var(--dc-text-secondary);
  padding: 0.25rem 0.75rem;
  border-radius: var(--dc-radius-sm);
  font-size: 0.8rem;
  font-weight: 500;
  border: 1px solid var(--dc-border);
}

.performance {
  font-weight: 600;
  font-family: 'SF Mono', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
}

.performance.positive {
  color: var(--dc-positive);
}

.performance.negative {
  color: var(--dc-negative);
}

.perf-pos {
  color: var(--dc-positive) !important;
  background: var(--dc-positive-bg) !important;
}

.perf-neg {
  color: var(--dc-negative) !important;
  background: var(--dc-negative-bg) !important;
}

/* ===== Scoreboard Tabs ===== */
.deepcap-dashboard .dc-scoreboard-tabs {
  display: flex;
  gap: 0.5rem;
  margin: 16px 0 8px;
  border-bottom: 1px solid #e5e7eb;
}

.deepcap-dashboard .dc-scoreboard-tab {
  flex: 1 1 0;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  border: none;
  background: transparent;
  color: #6b7280;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.deepcap-dashboard .dc-scoreboard-tab:hover {
  color: #111827;
}

.deepcap-dashboard .dc-scoreboard-tab.active {
  color: #111827;
  border-bottom-color: #2563eb;
}

.deepcap-dashboard .dc-scoreboard-panels {
  margin-top: 0.25rem;
}

/* Scrollable tables */
.deepcap-dashboard .table-scroll {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Mobile adjustments for scoreboard */
@media (max-width: 768px) {
  .deepcap-dashboard .dc-scoreboard-portfolio {
    margin-bottom: 24px;
  }

  .deepcap-dashboard .dc-scoreboard-tab {
    font-size: 0.8rem;
    padding: 0.4rem 0.5rem;
  }

  .deepcap-dashboard .dc-scoreboard-card .dc-lwchart {
    min-height: 220px;
    max-height: 260px;
  }

  .deepcap-dashboard .data-table th,
  .deepcap-dashboard .data-table td {
    white-space: nowrap;
    padding: 0.75rem 0.5rem;
    font-size: 0.75rem;
  }
}

.price {
  font-weight: 600;
  font-family: 'SF Mono', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  color: var(--dc-text-primary);
}

/* ===== Charts Container ===== */
.charts-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: var(--dc-spacing-lg);
  margin-bottom: var(--dc-spacing-xl);
}

.chart-card {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius-lg);
  overflow: hidden;
  box-shadow: var(--dc-shadow-sm);
  transition: var(--dc-transition);
}

.chart-card:hover {
  box-shadow: var(--dc-shadow-md);
  transform: translateY(-2px);
}

/* ===== Overview Grid ===== */
.overview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: var(--dc-spacing-lg);
  margin-bottom: var(--dc-spacing-xl);
}

.overview-card {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius-lg);
  overflow: hidden;
  box-shadow: var(--dc-shadow-sm);
  transition: var(--dc-transition);
}

.overview-card:hover {
  box-shadow: var(--dc-shadow-md);
  transform: translateY(-2px);
}

.overview-card.full-width {
  grid-column: 1 / -1;
}

/* ===== News Container ===== */
.news-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: var(--dc-spacing-lg);
  margin-bottom: var(--dc-spacing-xl);
}

.news-card {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius-lg);
  overflow: hidden;
  box-shadow: var(--dc-shadow-sm);
  transition: var(--dc-transition);
}

.news-card:hover {
  box-shadow: var(--dc-shadow-md);
  transform: translateY(-2px);
}

/* ===== Card Headers ===== */
.card-header {
  background: var(--dc-surface-secondary);
  padding: var(--dc-spacing-md);
  border-bottom: 1px solid var(--dc-border);
}

.card-title {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0 0 var(--dc-spacing-xs) 0;
  color: var(--dc-text-primary);
}

.card-description {
  font-size: 0.9rem;
  color: var(--dc-text-secondary);
  margin: 0;
  line-height: 1.5;
}

/* ===== Card Content ===== */
.card-content {
  padding: var(--dc-spacing-md);
}

/* ===== Placeholder Styles ===== */
.chart-placeholder,
.news-placeholder {
  background: var(--dc-surface-secondary);
  border: 2px dashed var(--dc-border);
  border-radius: var(--dc-radius-md);
  padding: var(--dc-spacing-xl);
  text-align: center;
}

.placeholder-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--dc-spacing-sm);
}

.placeholder-icon {
  font-size: 3rem;
  opacity: 0.3;
}

.placeholder-content p {
  color: var(--dc-text-secondary);
  margin: 0;
  font-size: 1.1rem;
}

/* ===== Empty State ===== */
.empty-state {
  text-align: center;
  padding: var(--dc-spacing-xl) !important;
}

.empty-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--dc-spacing-sm);
}

.empty-icon {
  font-size: 2rem;
  opacity: 0.3;
}

.empty-content p {
  color: var(--dc-text-secondary);
  margin: 0;
}

/* ===== TradingView Widget Container ===== */
.tradingview-widget-container {
  border-radius: var(--dc-radius-sm);
  overflow: hidden;
  background: var(--dc-surface);
}

/* ===== Animations ===== */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ===== Responsive Design ===== */
@media (max-width: 768px) {
  .dashboard-title {
    font-size: 2rem;
  }
  
  .dashboard-subtitle {
    font-size: 1rem;
  }
  
  .nav-container {
    flex-direction: column;
    gap: var(--dc-spacing-sm);
  }
  
  .market-tab {
    text-align: center;
    padding: var(--dc-spacing-sm);
  }
  
  .section-options {
    flex-direction: column;
    gap: var(--dc-spacing-sm);
  }
  
  .section-option {
    min-width: auto;
  }
  
  .options-grid {
    grid-template-columns: 1fr;
    gap: var(--dc-spacing-md);
  }
  
  .market-content {
    padding: var(--dc-spacing-md) var(--dc-spacing-sm);
  }
  
  .card-header,
  .card-content {
    padding: var(--dc-spacing-sm);
  }
  
  .data-table {
    font-size: 0.85rem;
  }
  
  .data-table thead {
    display: none;
  }
  
  .data-table tbody,
  .data-table tr,
  .data-table td {
    display: block;
    width: 100%;
  }
  
  .data-table tbody tr {
    padding: var(--dc-spacing-sm);
    border-bottom: 1px solid var(--dc-border);
    margin-bottom: var(--dc-spacing-xs);
  }
  
  .data-table tbody td {
    padding: 0.25rem 0;
    border: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  
  .data-table tbody td::before {
    content: attr(data-label);
    font-weight: 600;
    color: var(--dc-text-secondary);
    margin-right: var(--dc-spacing-sm);
  }
  
  .charts-container,
  .overview-grid,
  .news-container {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .dashboard-title {
    font-size: 1.75rem;
  }
  
  .market-tab,
  .section-option {
    font-size: 0.9rem;
  }
  
  .card-title {
    font-size: 1.1rem;
  }
  
  .data-table tbody td {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }
  
  .data-table tbody td::before {
    margin-right: 0;
    margin-bottom: 0.25rem;
  }
}

/* ===== Accessibility ===== */
.market-tab:focus-visible,
.section-option:focus-visible,
.deeplist-option:focus-visible,
.stock-link:focus-visible {
  outline: 2px solid var(--dc-accent);
  outline-offset: 2px;
  border-radius: var(--dc-radius-sm);
}

/* ===== Print Styles ===== */
@media print {
  .deepcap-dashboard {
    background: white;
    color: black;
  }
  
  .market-tab,
  .section-option,
  .deeplist-option,
  .card-header {
    background: #f5f5f5 !important;
    color: black !important;
  }
  
  .chart-card,
  .overview-card,
  .news-card {
    break-inside: avoid;
    box-shadow: none;
    border: 1px solid #ccc;
  }
}

/* ===== Legacy Modal Styles (Preserved) ===== */
.lc-headwrap {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.lc-logo {
  width: 42px;
  height: 42px;
  object-fit: contain;
  flex-shrink: 0;
}

.lc-titles {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.lc-name {
  font-size: 1rem;
  font-weight: 600;
  display: flex;
  align-items: baseline;
  gap: 6px;
  line-height: 1.2;
}

.lc-company {
  font-weight: 600;
  color: #2e3a44;
}

.lc-ticker {
  font-weight: 500;
  font-size: 0.9rem;
  color: #888;
}

.lc-quote {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.lc-price {
  font-size: 1.8rem !important;
  font-weight: 700 !important;
  color: #2e3a44;
}

.lc-change.up {
  color: #26a69a;
  font-weight: 600;
  font-size: 0.95rem;
}

.lc-change.down {
  color: #ef5350;
  font-weight: 600;
  font-size: 0.95rem;
}

.lc-btn.active {
  background: #b4b4b4;
  color: #000;
  border-color: #b4b4b4;
}

.lc-btn {
  border: 1px solid #ccc;
  background: #f7f7f7;
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 0.85rem;
  cursor: pointer;
}

.lc-btn:hover {
  background: #e9e9e9;
}

.lc-overview-wrap {
  border: 1px solid #e3e7ee;
  border-radius: 6px;
}

.lc-overview-wrap #lc-overview {
  width: 100%;
  height: 200px;
  display: block;
  box-sizing: border-box;
  padding-bottom: 6px;
}

.lc-toolbar button.active {
  border-bottom: none;
}

/* ===== DeepCap Dashboard – Refinement Overrides (underline nav, compact, wide tables) ===== */
/* Level 1 nav – compact underline-only */
.market-tab { padding: 10px 0; font-size: 14px; font-weight: 700; color: #5a5a5f; border-bottom: 2px solid transparent; }
.market-tab.active { color: var(--dc-text-primary); border-bottom-color: var(--dc-accent); }

/* Level 2 nav – text only with underline */
.section-selection { margin: 12px auto 6px; }
.section-options { gap: 18px; }
.section-option { background: transparent !important; border: none !important; box-shadow: none !important; padding: 6px 0 !important; min-width: unset !important; font-size: 14px !important; font-weight: 700 !important; color: #5a5a5f !important; border-bottom: 2px solid transparent !important; }
.section-option:hover { color: var(--dc-text-primary) !important; }
.section-option.active { color: var(--dc-text-primary) !important; border-bottom-color: var(--dc-accent) !important; }

/* Level 3 nav – text only with underline */
.deeplist-options { margin: 6px auto 8px !important; }
.deeplist-nav { gap: 14px !important; }
.deeplist-option { background: transparent !important; border: none !important; box-shadow: none !important; padding: 6px 0 !important; font-size: 13px !important; font-weight: 700 !important; color: #5a5a5f !important; border-bottom: 2px solid transparent !important; }
.deeplist-option:hover { color: var(--dc-text-primary) !important; }
.deeplist-option.active { color: var(--dc-text-primary) !important; border-bottom-color: var(--dc-accent) !important; }

/* Section header – compact */
.section-header { margin: 10px 0 8px !important; text-align: left !important; }
.section-title { font-size: 18px !important; margin: 0 0 4px !important; }
.section-header h1.section-title { font-size: 26px !important; }
.section-description { font-size: 13px !important; }

/* Tables – increase width, reduce font, enable horizontal scroll */
.table-container { overflow: auto !important; -webkit-overflow-scrolling: touch; }
.data-table { font-size: 12.5px !important; min-width: 980px !important; }
.data-table.wide { min-width: 1200px !important; }
.data-table thead th { text-transform: none !important; letter-spacing: 0 !important; }

/* Mobile – prefer horizontal scrolling over stacking for these financial tables */
@media (max-width: 768px) {
  .data-table { min-width: 1000px !important; font-size: 12px !important; }
  .data-table.wide { min-width: 1100px !important; }
  .data-table thead { display: table-header-group !important; }
  .data-table tbody { display: table-row-group !important; }
  .data-table tr { display: table-row !important; }
  .data-table td { display: table-cell !important; width: auto !important; padding: 8px 10px !important; }
}

@media (max-width: 480px) {
  .market-tab, .section-option, .deeplist-option { font-size: 12.5px !important; }
  .data-table { min-width: 920px !important; font-size: 11.5px !important; }
  .data-table.wide { min-width: 1000px !important; }
}

/* ===== New menu designs ===== */
/* L1: Europe / US — largest font, generous spacing, underline active, arrow beside */
.nav-container { gap: 56px !important; }
.market-tab { display: inline-flex; align-items: center; gap: 8px; padding: 12px 0; }
.market-tab .label-l1 { font-size: 20px; font-weight: 800; letter-spacing: -0.01em; }
.market-tab .arrow { font-size: 16px; color: #8a8a90; }
.market-tab.active .label-l1 { color: var(--dc-text-primary); }

/* L2: Apple-like cards as links */
.section-cards { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(240px, 1fr); gap: 16px; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 4px 0 8px; }
.section-card { display: grid; grid-template-columns: 1fr auto; align-items: start; gap: 8px; background: var(--dc-surface); border: 1px solid var(--dc-border); border-radius: 12px; padding: 12px; min-width: 260px; cursor: pointer; transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease; }
.section-card:hover { box-shadow: 0 10px 24px rgba(0,0,0,.08); transform: translateY(-2px); border-color: #d9d9dc; }
.section-card .card-head { margin: 0 0 4px; font-size: 16px; font-weight: 800; letter-spacing: -0.01em; }
.section-card .card-sub { margin: 0; font-size: 12.5px; color: var(--dc-text-secondary); line-height: 1.4; }
.section-card .card-arrow { align-self: end; color: #8a8a90; font-size: 14px; }
.section-card.active .card-head, .section-card.active .card-sub { color: var(--dc-accent); }

/* L3: TradingView-like options — generous spacing, active pill */
.deeplist-nav { display: flex; gap: 24px; flex-wrap: wrap; padding: 6px 0; }
.deeplist-option { padding: 8px 10px; border-radius: 999px; font-size: 13px; font-weight: 700; color: #5a5a5f; background: transparent; border: 1px solid transparent; cursor: pointer; }
.deeplist-option.active { background: var(--dc-accent); color: #1D1D1F; border-color: var(--dc-accent); }

/* Bloomberg-like table polish */
.table-container { background: var(--dc-surface); border: 1px solid var(--dc-border); border-radius: 10px; overflow: auto; }
.data-table { font-size: 12.5px; line-height: 1.45; min-width: 1200px; }
.data-table thead th { background: #F2F3F4; color: #222; font-weight: 800; padding: 10px 12px; border-bottom: 1px solid #e6e6e8; }
.data-table tbody td { padding: 10px 12px; border-top: 1px solid #ededf0; }
.data-table tbody tr:nth-child(even) { background: #FBFBFC; }
.data-table tbody tr:hover { background: #F6F7F8; }
.data-table .price { font-weight: 800; }

/* DeepScore column visual weight */
.data-table td:nth-child(2), .data-table th:nth-child(2) { font-weight: 800; color: #1D1D1F; }

/* Industry plain text */
.industry-tag { padding: 0; border: 0; background: transparent; color: #444; font-size: 12.5px; border-radius: 0; }

/* Mobile side scrolling for L2 cards */
@media (max-width: 840px) {
  .section-cards { grid-auto-columns: 78%; }
}

/* ===== Spec refinements (2025-08-16) ===== */
/* 8) White background, 7) remove top line above L1 */
body { background: #FFFFFF !important; }
.market-nav { background: #FFFFFF !important; border-bottom: none !important; }

/* 1) Larger chevrons and L1 fonts with generous spacing */
.nav-container { gap: 72px !important; }
.market-tab .label-l1 { font-size: 24px !important; font-weight: 800 !important; }
.market-tab .arrow, .card-arrow { display: inline-flex; width: 16px; height: 16px; }
.market-tab .arrow svg, .card-arrow svg { width: 100%; height: 100%; stroke: #8a8a90; stroke-width: 2; fill: none; }

/* 2) L2 cards: active yellow background, inactive light gray */
.section-card { background: #F5F5F7 !important; }
.section-card.active { background: var(--dc-accent) !important; border-color: var(--dc-accent) !important; }
.section-card.active .card-head, .section-card.active .card-sub { color: #1D1D1F !important; }

/* 4) Remove repeated header between L2 and L3 for DeepList */
#section-deeplist > .section-header { display: none !important; }

/* 5) L3 options: larger fonts, spacing, full yellow rounded rectangle */
.deeplist-nav { gap: 12px !important; }
.deeplist-option { font-size: 16px !important; padding: 10px 14px !important; border-radius: 999px !important; border-width: 0 !important; }
.deeplist-option.active { background: var(--dc-accent) !important; color: #1D1D1F !important; box-shadow: 0 0 0 1px var(--dc-accent) inset; }

/* 9) Sticky mini-nav for level-3 */
.deeplist-options { position: static !important; top: auto !important; z-index: auto !important; background: #FFFFFF; padding-top: 6px; padding-bottom: 6px; border-bottom: 1px solid #F1F1F3; }

/* 6) Table: descriptions, ticker plus, perf backgrounds */
/* unified below */
.ticker-cell { display: inline-flex; align-items: center; gap: 8px; }
.ticker-plus { display: inline-flex; width: 18px; height: 18px; border-radius: 50%; border: 1.5px solid #aab; align-items: center; justify-content: center; }
.ticker-plus svg { width: 12px; height: 12px; stroke: #556; stroke-width: 2; }

/* merged below (keep single definition) */

/* 9) Shimmer loader for table containers */
.table-container.loading { position: relative; overflow: hidden; }
.table-container.loading::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(240,240,242,0.0) 0%, rgba(240,240,242,0.8) 50%, rgba(240,240,242,0.0) 100%); animation: shimmer 1.4s infinite; }
@keyframes shimmer { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } }

/* 3) Ensure L2 mobile side scroll retains padding */
.section-cards { padding-bottom: 10px !important; }

/* 5) Ensure pill not cut off */
.deeplist-nav { overflow: visible; }

/* ===== 2025-08-16 – UI refinements ===== */
/* Remove line below main title; white backgrounds */
.dashboard-header { border-bottom: none !important; background: #FFFFFF !important; }
.market-nav { background: #FFFFFF !important; border-bottom: none !important; }
body { background: #FFFFFF !important; }

/* Larger L1 labels and chevrons + subtle motion */
.nav-container { gap: 72px !important; }
.market-tab .label-l1 { font-size: 30px !important; font-weight: 800 !important; }
.market-tab .arrow svg { width: 18px; height: 18px; transition: transform .15s ease; }
.market-tab:hover .arrow svg { transform: translateY(1px); }

/* L2 cards: inactive slightly darker gray, active yellow */
.section-card { background: #F0F1F3 !important; }
.section-card.active { background: var(--dc-accent) !important; border-color: var(--dc-accent) !important; }
.section-card.active .card-head, .section-card.active .card-sub { color: #1D1D1F !important; }

/* L3 options: rectangular pill, inactive gray background */
.deeplist-options { background: #FFFFFF !important; }
.deeplist-nav { gap: 12px !important; }
.deeplist-option { font-size: 16px !important; padding: 10px 14px !important; background: #F0F1F3 !important; border-radius: 10px !important; border: none !important; color: #333 !important; }
.deeplist-option.active { background: var(--dc-accent) !important; color: #1D1D1F !important; }

/* Sticky mini-breadcrumb */
.deepcap-dashboard .mini-breadcrumb { position: sticky !important; top: var(--dc-sticky-offset) !important; z-index: 25 !important; background: #FFFFFF !important; padding: 6px 16px !important; border-bottom: 1px solid #F1F1F3 !important; font-size: 12.5px !important; color: #666 !important; margin-top: 0 !important; }
.mini-breadcrumb strong { color: #1D1D1F; }

/* Table header -2px; perf and price columns narrower and wrap */
.data-table thead th { font-size: 11px !important; }
/* columns: 1 Ticker, 2 DeepScore, 3 Exchange, 4 Company, 5 Industry, 6 Perf-M, 7 Perf-YTD, 8 Price */
.data-table th:nth-child(6), .data-table td:nth-child(6),
.data-table th:nth-child(7), .data-table td:nth-child(7) { max-width: 100px; width: 100px; white-space: normal; line-height: 1.2; }
.data-table th:nth-child(8), .data-table td:nth-child(8) { max-width: 100px; width: 100px; }

/* Overall table width – widen to avoid scroll on desktop */
@media (min-width: 1200px) {
  .data-table.wide { min-width: 1280px !important; }
}

/* Ticker link + plus inside <a> */
.ticker-link { display: inline-flex; align-items: center; gap: 8px; color: var(--dc-link); text-decoration: none; font-weight: 700; }
.ticker-link:hover { text-decoration: underline; }
.ticker-link .ticker-plus { display: inline-flex; width: 18px; height: 18px; border-radius: 50%; border: 1.5px solid currentColor; align-items: center; justify-content: center; }
.ticker-link .ticker-plus svg { width: 12px; height: 12px; }

/* Performance backgrounds */
/* merged below (keep single definition) */

/* Shimmer loader already defined earlier; ensure visible above content */
.table-container.loading::after { pointer-events: none; }

/* Ensure main content and inner are white */
.market-content { background: #FFFFFF !important; }
.market-section, .section-selection, .deeplist-options, .section-content { background: #FFFFFF !important; }

/* Breadcrumb typography */
.mini-breadcrumb { font-size: 12px !important; color: #6b7280 !important; }
.mini-breadcrumb strong { font-weight: 700 !important; color: #1f2937 !important; }

/* column widths: superseded by later tighter rules */

/* Remove right-side empty space under wide desktop */
.table-container { padding-right: 0 !important; margin-right: 0 !important; }

/* White background for entire dashboard container */
.deepcap-dashboard { background: #FFFFFF !important; }

/* Collapse hidden section-content so it cannot reserve vertical space */
.deepcap-dashboard .section-content[style*="display: none"] {
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Defensive: when US news is not explicitly display:block, collapse it */
.deepcap-dashboard #section-us-news:not([style*="display: block"]) {
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Ensure section headers/anchors are hidden when their parent section is hidden */
.deepcap-dashboard .section-content[style*="display: none"] .section-header,
.deepcap-dashboard .section-content[style*="display: none"] #us-news-anchor,
.deepcap-dashboard .section-content[style*="display: none"] #us-overview-anchor,
.deepcap-dashboard .section-content[style*="display: none"] #us-charts-anchor {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Breadcrumb: left aligned, smaller, bold active, no border line */
.mini-breadcrumb { font-size: 11px !important; color: #6b7280 !important; padding: 6px 0 !important; border-bottom: none !important; }
.mini-breadcrumb strong { font-weight: 700 !important; color: #1f2937 !important; }

/* Remove faint line above level-3 buttons */
.deeplist-options { border-bottom: none !important; }

/* Narrower description and more spacing below (authoritative) */
.dl-description { max-width: 52ch !important; margin: 6px 0 16px !important; font-size: 13px !important; }

/* superseded by later column-tightening rules */

/* Reduce wide min-width to avoid unnecessary horizontal scroll on desktop */
.data-table.wide { min-width: 1180px !important; }

/* Remove right empty space */
.table-container { padding-right: 0 !important; margin-right: 0 !important; width: 100% !important; }

/* superseded by later column-tightening rules */


/* More space between description and table (removed to keep uniform spacing) */
/* .dl-description { margin-bottom: 40px !important; } */

/* 5) Inactive section-card text darker */
.section-card .card-head, .section-card .card-sub { color: #1D1D1F !important; }

/* Column overrides: tighter Company/Industry, slightly wider Perf columns, avoid splitting 'Performance' */
.data-table th:nth-child(3), .data-table td:nth-child(3) { width: 100px !important; }
.data-table th:nth-child(4), .data-table td:nth-child(4) { width: 100px !important; }
.data-table th:nth-child(5), .data-table td:nth-child(5) { width: 100px !important; }
.data-table th:nth-child(6), .data-table td:nth-child(6) { width: 120px !important; word-break: normal !important; white-space: normal !important; }
.data-table th:nth-child(7), .data-table td:nth-child(7) { width: 120px !important; word-break: normal !important; white-space: normal !important; }

/* ===== Column tightening to fit container (desktop) ===== */
.data-table { width: 100% !important; table-layout: fixed !important; }
.data-table th, .data-table td { white-space: normal; word-break: break-word; }
/* 1 Ticker, 2 DeepScore, 3 Exchange, 4 Company, 5 Industry, 6 Perf-M, 7 Perf-YTD, 8 Price */
.data-table th:nth-child(1), .data-table td:nth-child(1) { width: 90px !important; }
.data-table th:nth-child(2), .data-table td:nth-child(2) { width: 90px !important; }
.data-table th:nth-child(3), .data-table td:nth-child(3) { width: 90px !important; }
.data-table th:nth-child(4), .data-table td:nth-child(4) { width: 90px !important; }
.data-table th:nth-child(5), .data-table td:nth-child(5) { width: 90px !important; }
.data-table th:nth-child(6), .data-table td:nth-child(6) { width: 130px !important; word-break: keep-all !important; }
.data-table th:nth-child(7), .data-table td:nth-child(7) { width: 130px !important; word-break: keep-all !important; }
.data-table th:nth-child(8), .data-table td:nth-child(8) { width: 100px !important; }

/* Ensure full-width table on desktop to avoid horizontal scroll */
@media (min-width: 1024px) {
  .data-table.wide { min-width: 100% !important; }
  .table-container { overflow-x: hidden; }
}

/* ==========================================================================
 * PMPro – DeepCap Membership Pages (scoped)
 * ========================================================================== */
.dc-membership { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif; color: #1D1D1F; }
.dc-membership .pmpro_login_wrap { background:#fff; border:1px solid #E5E5E7; border-radius: 14px; padding: 20px; }
.dc-membership .pmpro_login_wrap label { font-weight: 700; color:#374151; }
.dc-membership .pmpro_login_wrap input[type="text"],
.dc-membership .pmpro_login_wrap input[type="password"] { width:100%; padding:10px 12px; border:1px solid #E5E5E7; border-radius:8px; font-size:14px; }
.dc-membership .pmpro_login_wrap .pmpro_submit { margin-top: 8px; }
.dc-membership .pmpro_login_wrap .pmpro_btn { background:#FFD011; color:#1D1D1F; border-radius:10px; padding:10px 14px; font-weight:800; }
.dc-membership .container { max-width: 1080px; margin: 0 auto; padding: 0 16px; box-sizing: border-box; }
.dc-membership .grid { display: grid; grid-template-columns: 1.4fr 0.8fr; gap: 32px; }
@media (max-width: 960px) { .dc-membership .grid { grid-template-columns: 1fr; } }
@media (max-width: 960px) { .dc-membership .grid { justify-items: stretch; } }

/* Ensure the main column has breathing room on mobile (right padding) */
.dc-membership .main { padding-right: 0; box-sizing: border-box; min-width: 0; }
.dc-membership .plan, .dc-membership .card, .dc-membership .dc-hero { min-width: 0; }
@media (min-width: 961px) { .dc-membership .main { padding: 16px 16px; } }

/* Mobile-only: ensure visible right gutter for hero, plan and cards */
@media (max-width: 600px) {
  .dc-membership .container { padding-left: 16px !important; padding-right: 16px !important; }
  .dc-membership .dc-hero { padding-left: 0 !important; padding-right: 0 !important; box-sizing: border-box; }
  /* Prevent page-level overflow from nested elements */
  main.site-main { overflow-x: hidden !important; }
}

/* Increase breakpoint and force right gutter by shrinking the grid track */
@media (max-width: 840px) {
  .dc-membership .grid { padding-left: 0 !important; padding-right: 0 !important; width: 100% !important; }
  .dc-membership .main { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 8px !important; padding-right: 1px !important; max-width: 100% !important; overflow-x: hidden; }
}

/* Fallback centering: shrink entire membership shell so it cannot touch edges */
@media (max-width: 840px) {
  .dc-membership { width: 100% !important; }
  .dc-membership .container { padding-left: 16px !important; padding-right: 16px !important; }
}

/* Hero */
.dc-membership .dc-hero { background: #0A0F12; border: 0; border-radius: 0; padding: 40px 0; box-shadow: none; }
.dc-membership .dc-hero h1 { font-weight: 900; font-size: 50px; line-height: 1.2em; margin: 0 0 8px; color: #fff; }
@media (max-width: 840px) { .dc-membership .dc-hero h1 { font-size: 50px; } }
.dc-membership .dc-hero p.lead { font-size: 20px; color: #fff; margin: 0 0 10px; }
.dc-membership .dc-hero .meta { color: #6b7280; font-size: 13px; }

/* Included strip */
.dc-membership .dc-included { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 10px; }
.dc-membership .dc-chip { background: #F5F5F7; border: 1px solid #E5E5E7; padding: 6px 10px; border-radius: 999px; font-weight: 600; font-size: 12px; color: #374151; }

/* Plan card */
.dc-membership .plan { background: #fff; border: 1px solid #E5E5E7; border-radius: 14px; padding: 24px; box-shadow: 0 6px 22px rgba(0,0,0,0.08); position: relative; top: 0; color: #111827; }
.dc-membership .plan h3, .dc-membership .plan .price, .dc-membership .plan li { color: #111827; }
.dc-membership .plan .bullets { margin: 12px 0 16px; padding-left: 18px; }
.dc-membership .plan-consents { margin: 16px 0 16px; color: #374151; }
.dc-membership .plan-consents .pmpro_form_field { margin: 10px 0 10px; }
.dc-membership .plan .sub { margin-top: 10px; }

/* Best value badge - small dark pill above the Annual tab */
.dc-membership .plan .toggle { position: relative; display: inline-flex; gap: 6px; align-items: center; overflow: visible; }
/* badge-best removed */
.dc-membership .plan .toggle.js-plan-toggle { margin-top: 30px; padding-top: 0; }
.dc-membership .plan h3 { margin: 0 0 4px; font-size: 22px; font-weight: 800; }
.dc-membership .plan .toggle { display: inline-flex; border: 1px solid #E5E5E7; border-radius: 10px; overflow: visible; }
.dc-membership .plan .toggle button { appearance: none; border: 0; background: transparent; padding: 8px 12px; font-weight: 700; font-size: 13px; color: #374151; cursor: pointer; }
.dc-membership .plan .toggle button.is-active { background: #FFD011; color: #1D1D1F; }
.dc-membership .plan .price { margin: 12px 0; font-weight: 900; font-size: 28px; }
.dc-membership .plan .email { margin: 10px 0 6px; }
.dc-membership .plan .email label { display:block; font-weight:700; font-size:13px; margin-bottom:4px; color:#374151; }
.dc-membership .plan .email input.dc-email { width:100%; padding:10px 12px; border:1px solid #E5E5E7; border-radius:8px; font-size:14px; }

/* Username field */
.dc-membership .plan .username { margin: 10px 0 6px; }
.dc-membership .plan .username label { display:block; font-weight:700; font-size:13px; margin-bottom:4px; color:#374151; }
.dc-membership .plan .username input.dc-username { width:100%; padding:10px 12px; border:1px solid #E5E5E7; border-radius:8px; font-size:14px; }

/* Password field */
.dc-membership .plan .password { margin: 10px 0 6px; position: relative; }
.dc-membership .plan .password label { display:block; font-weight:700; font-size:13px; margin-bottom:4px; color:#374151; }
.dc-membership .plan .password input.dc-password { width:100%; padding:10px 12px; border:1px solid #E5E5E7; border-radius:8px; font-size:14px; padding-right: 60px; }
.dc-membership .plan .password .dc-show-password { position: absolute; right: 8px; top: 28px; background: transparent; border: none; color: #6B7280; font-size: 13px; font-weight: 600; cursor: pointer; padding: 4px 8px; }
.dc-membership .plan .password .dc-show-password:hover { color: #374151; }
.dc-membership .plan .bullets { margin: 8px 0 12px; padding-left: 18px; }
.dc-membership .plan .bullets li { margin: 6px 0; }
.dc-membership .plan .cta { display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: #FFD011; color: #1D1D1F; border-radius: 10px; padding: 10px 14px; text-decoration: none; font-weight: 800; }
.dc-membership .plan .cta:hover { filter: brightness(0.96); }
.dc-membership .plan .sub { margin-top: 8px; color: #6b7280; font-size: 12.5px; }

/* Spacing for checkbox labels inside plan card */
.dc-membership .plan .pmpro_form_field .pmpro_form_label { display:inline-block; margin-top:10px; margin-bottom:10px; }
.dc-membership .plan-consents { margin-top: 40px; }
.dc-membership .plan .pmpro_akismet_privacy_notice { color: #111827; }

/* Sticky CTA */
.dc-sticky-cta { position: fixed; left: 0; right: 0; bottom: -80px; z-index: 999; display: flex; justify-content: center; transition: transform .25s ease, bottom .25s ease; pointer-events: none; }
.dc-sticky-cta .inner { background: #111827; color: #fff; border-radius: 999px; padding: 12px 18px; display: inline-flex; align-items: center; gap: 10px; box-shadow: 0 8px 24px rgba(0,0,0,0.25); pointer-events: auto; }
.dc-sticky-cta a { color: #fff; text-decoration: none; font-weight: 800; }
.dc-sticky-cta.visible { bottom: 18px; }

/* Content cards */
.dc-membership .card { background: #0F1B22; border: 1px solid rgba(255,255,255,0.06); border-radius: 12px; padding: 16px; box-shadow: none; margin-top: 24px; margin-bottom: 50px; }
.dc-membership .card + .card { margin-top: 24px; }
.dc-membership .plan { margin-top: 24px; margin-bottom: 50px; }

/* Ensure site footer is visible on PMPro pages */
.deepcap-pmpro footer#footer, .deepcap-pmpro #footer { display:block !important; visibility:visible !important; opacity:1 !important; height:auto !important; position:static !important; z-index:1 !important; }
/* revert footer enforcement */

/* Checkbox spacing */
.dc-membership .plan input[type="checkbox"] { margin-right: 8px; }
.dc-membership #privacy_policy_checked_div .pmpro_asterisk,
.dc-membership #terms_of_use_checked_div .pmpro_asterisk,
.dc-membership .pmpro_form_field-hide-required .pmpro_asterisk { display: none !important; }
.dc-membership h2 { font-size: 20px; margin: 0 0 8px; font-weight: 800; color: #F9FAFB; }
.dc-membership p { margin: 0 0 10px; color: #E5E7EB; }
.dc-membership a { color: #0C71C3; text-decoration: underline; }

/* FAQ accordion (plain details/summary) */
.dc-membership details { border-top: 1px solid #E5E5E7; padding: 10px 0; }
.dc-membership details:first-of-type { border-top: 0; }
.dc-membership summary { cursor: pointer; font-weight: 700; }

/* Forms within PMPro (light normalisation without touching PMPro logic) */
.dc-membership form.pmpro_form label { font-weight: 600; color: #374151; }
.dc-membership form.pmpro_form input[type="text"],
.dc-membership form.pmpro_form input[type="email"],
.dc-membership form.pmpro_form input[type="password"],
.dc-membership form.pmpro_form select { width: 100%; padding: 10px 12px; border: 1px solid #E5E5E7; border-radius: 8px; font-size: 14px; }
.dc-membership form.pmpro_form .pmpro_submit { margin-top: 8px; }
.dc-membership form.pmpro_form .pmpro_btn { background: #111827; color: #fff; border-radius: 10px; padding: 10px 14px; font-weight: 800; }
.dc-membership .pmpro_message { background: #F5F5F7; border: 1px solid #E5E5E7; border-radius: 8px; padding: 10px 12px; }

/* Keep mobile horizontal scroll */
@media (max-width: 1023.98px) {
  .table-container { overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

/* Header and nav spacing tighter */
.dashboard-header { padding: 10px 0 !important; }
.market-nav { padding: 6px 0 !important; margin-bottom: 6px !important; }

/* Space between Market tabs and breadcrumb */
.mini-breadcrumb { margin-top: 4px !important; }

/* L2 cards: wrap grid, no horizontal scroll; arrow at lower right */
.section-cards { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important; gap: 14px !important; overflow: visible !important; }
.section-card { position: relative !important; padding-bottom: 24px !important; }
.section-card .card-arrow { position: absolute !important; right: 12px !important; bottom: 8px !important; }

/* Normalize spacing between L3 options and description */
.deeplist-options { margin-bottom: 6px !important; }

/* Ticker + Exchange width tweaks */
.data-table th:nth-child(1), .data-table td:nth-child(1) { width: 100px !important; }
.data-table th:nth-child(3), .data-table td:nth-child(3) { width: 80px !important; }

/* Active state helpers */
.market-section, .section-content, .category-content { display: none; }
.market-section.is-active, .section-content.is-active, .category-content.is-active { display: block; }

/* Remove persistent header behavior and tighten spacing */
.dashboard-header { position: static !important; top: auto !important; padding: 8px 0 !important; border-bottom: none !important; }
.market-nav { padding: 4px 0 !important; margin-bottom: 2px !important; }
.mini-breadcrumb { margin-top: 2px !important; margin-bottom: 6px !important; }

/* 2nd-level cards: wrap, tighter gaps, shorter height */
.section-cards { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important; gap: 10px !important; overflow: visible !important; }
.section-card { position: relative !important; padding: 8px 10px 20px !important; min-height: 0 !important; }
.section-card .card-head { font-size: 14px !important; margin-bottom: 2px !important; }
.section-card .card-sub { font-size: 11.5px !important; line-height: 1.35 !important; }
.section-card .card-arrow { position: absolute !important; right: 10px !important; bottom: 6px !important; }

/* 3rd-level spacing tightened (kept consistent) */
.deeplist-options { margin-bottom: 6px !important; }

/* Spacing tighten (higher specificity) */
.deepcap-dashboard .market-nav { padding: 4px 0 !important; margin-bottom: 2px !important; }
.deepcap-dashboard .mini-breadcrumb { margin: 2px 0 6px !important; }

/* 2nd-level cards: wrap, narrower gap, shorter height; container width aligned with tables */
.deepcap-dashboard .section-cards {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 8px !important;
  max-width: 100% !important;
}
.deepcap-dashboard .section-card { padding: 8px 10px 18px !important; min-height: 0 !important; position: relative !important; }
.deepcap-dashboard .section-card .card-head { font-size: 14px !important; margin-bottom: 2px !important; }
.deepcap-dashboard .section-card .card-sub { font-size: 11.5px !important; line-height: 1.35 !important; }
.deepcap-dashboard .section-card .card-arrow { position: absolute !important; right: 10px !important; bottom: 6px !important; }

/* 3rd-level buttons to description spacing (single authoritative rule) */
.deepcap-dashboard .deeplist-options { margin-bottom: 6px !important; }

/* ===== 2025-08-20 – Table ticker and L3 spacing hardening ===== */
/* Keep ticker text and plus icon on one line; suppress stray <p> inside table cells */
.deepcap-dashboard .data-table a.ticker-link { white-space: nowrap !important; }
.deepcap-dashboard .data-table td p { margin: 0 !important; display: inline !important; }

/* Normalize category panel spacing regardless of which L3 is active */
.deepcap-dashboard .deeplist-content .category-content { margin-top: 0 !important; padding-top: 0 !important; }
.deepcap-dashboard .deeplist-content .category-content > .dl-description { margin-top: 6px !important; }

/* ===== Final spacing and card restoration (2025-08-18) ===== */
/* 1) Increase breathing room around header and L1 */
.deepcap-dashboard .dashboard-header { padding-top: 16px !important; padding-bottom: 14px !important; }
.deepcap-dashboard .market-nav { padding-top: 8px !important; padding-bottom: 6px !important; margin-bottom: 4px !important; }

/* 1) and 3) Breadcrumb spacing above and below */
.deepcap-dashboard .mini-breadcrumb { margin: 8px 0 !important; }

/* 2) Restore L2 cards look, halve visual height, keep arrow */
.deepcap-dashboard .section-cards { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important; gap: 8px !important; overflow: visible !important; }
.deepcap-dashboard .section-card, .deepcap-dashboard .card-body { display: grid !important; grid-template-columns: 1fr auto !important; align-items: start !important; background: var(--dc-surface-secondary) !important; border: 1px solid var(--dc-border) !important; border-radius: 12px !important; padding: 8px 10px 16px !important; position: relative !important; cursor: pointer !important; }
.deepcap-dashboard .section-card .card-head { font-size: 14px !important; margin: 0 0 2px !important; line-height: 1.2 !important; }
.deepcap-dashboard .section-card .card-sub { font-size: 11.5px !important; line-height: 1.3 !important; }
.deepcap-dashboard .section-card .card-arrow, .deepcap-dashboard .card-body .card-arrow { position: absolute !important; right: 10px !important; bottom: 6px !important; display: inline-flex !important; }
.deepcap-dashboard .section-card.active, .deepcap-dashboard .card-body.active { background: var(--dc-accent) !important; border-color: var(--dc-accent) !important; }
.deepcap-dashboard .section-card.active .card-head, .deepcap-dashboard .section-card.active .card-sub, .deepcap-dashboard .card-body.active .card-head, .deepcap-dashboard .card-body.active .card-sub { color: #1D1D1F !important; }

/* Render an arrow if missing by layout (pseudo-element fallback) */
.deepcap-dashboard .card-body::after { content: '' !important; position: absolute !important; right: 10px !important; bottom: 6px !important; width: 16px !important; height: 16px !important; border-right: 2px solid #8a8a90 !important; border-bottom: 2px solid #8a8a90 !important; transform: rotate(45deg) !important; opacity: 0.8 !important; }

/* 5) Reduce space below table and overall content bottom */
.deepcap-dashboard .table-container { margin-bottom: 8px !important; }
.deepcap-dashboard .market-content { padding-bottom: 12px !important; }

/* 6) Ensure ticker plus icon is visible */
.deepcap-dashboard .ticker-link { display: inline-flex !important; align-items: center !important; gap: 8px !important; }
.deepcap-dashboard .ticker-link .ticker-plus { display: inline-flex !important; width: 18px !important; height: 18px !important; border-radius: 50% !important; border: 1.5px solid currentColor !important; align-items: center !important; justify-content: center !important; }
.deepcap-dashboard .ticker-link .ticker-plus svg { width: 12px !important; height: 12px !important; stroke: currentColor !important; stroke-width: 2 !important; fill: none !important; }
 
 /* ===== 2025-08-19 – Spacing and layout fixes per review ===== */
 /* 1) Extra space between site top nav and main header title */
 .deepcap-dashboard .dashboard-header { margin-top: 50px !important; }
 
 /* 2) Fallback chevrons for L1 (Europe / US) when missing */
 .deepcap-dashboard .market-tab:not(:has(.arrow))::after {
   content: '' !important;
   display: inline-block !important;
   width: 16px !important;
   height: 16px !important;
   border-right: 2px solid #8a8a90 !important;
   border-bottom: 2px solid #8a8a90 !important;
   transform: rotate(45deg) !important;
   margin-left: 8px !important;
   opacity: 0.8 !important;
 }
 
 /* 3) Ensure L2 card descriptions sit below their headers */
 .deepcap-dashboard .card-body { display: block !important; grid-template-columns: none !important; }
 
 /* 4) Reduce whitespace below tables while keeping natural flow for future growth */
 .deepcap-dashboard .table-container { margin-bottom: 4px !important; }
 .deepcap-dashboard .market-content { padding-bottom: 6px !important; }

/* ===== 2025-08-19 – Screenshot-based refinements (post-screenshot) ===== */
/* 1) Increase space between top site nav and the dashboard container */
.deepcap-dashboard { margin-top: 80px !important; }
.deepcap-dashboard .dashboard-header { margin-top: 50px !important; }

/* 2) Decrease size of chevrons/arrows for L1 and L2 */
.deepcap-dashboard .market-tab .arrow { width: 14px !important; height: 14px !important; }
.deepcap-dashboard .market-tab .arrow svg { width: 14px !important; height: 14px !important; }
.deepcap-dashboard .market-tab:not(:has(.arrow))::after { width: 14px !important; height: 14px !important; }
.deepcap-dashboard .section-card .card-arrow { width: 12px !important; height: 12px !important; }
.deepcap-dashboard .section-card .card-arrow svg { width: 12px !important; height: 12px !important; }
.deepcap-dashboard .card-body::after { width: 12px !important; height: 12px !important; }

/* 3) L2 cards: smaller than L1 (fonts and dimensions) */
.deepcap-dashboard .section-cards { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important; gap: 20px !important; }
.deepcap-dashboard .section-card, .deepcap-dashboard .card-body { padding: 6px 8px 12px !important; border-radius: 10px !important; }
.deepcap-dashboard .section-card .card-head, .deepcap-dashboard .card-body .card-head { font-size: 22px !important; }
.deepcap-dashboard .section-card .card-sub, .deepcap-dashboard .card-body .card-sub { font-size: 10.5px !important; line-height: 1.35 !important; }

/* 4) Ensure DeepList card appears yellow when active on load (even if .card-body has its own background) */
.deepcap-dashboard .section-card.active .card-body { background: var(--dc-accent) !important; border-color: var(--dc-accent) !important; }

/* ===== Mobile Tree Navigation Structure ===== */
@media (max-width: 768px) {
  /* ===== Tree Navigation Container ===== */
  .market-nav {
    background: #FFFFFF !important;
    border-bottom: 1px solid #F1F1F3 !important;
    padding: 0 !important;
  }
  
  .nav-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 0 !important;
  }
  
  /* ===== Level 1: Market Selection - Tree Root (LARGEST FONT) ===== */
  .market-tab {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 20px 24px !important;
    background: #F8F9FA !important;
    border-bottom: 1px solid #E9ECEF !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #495057 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    position: relative !important;
  }
  
  .market-tab:last-child {
    border-bottom: none !important;
  }
  
  .market-tab .label-l1 {
    font-size: 22px !important;
    font-weight: 700 !important;
  }
  
  .market-tab .arrow {
    width: 24px !important;
    height: 24px !important;
    color: #6C757D !important;
    transition: transform 0.2s ease !important;
  }
  
  .market-tab.active {
    background: var(--dc-accent) !important;
    color: #1D1D1F !important;
  }
  
  .market-tab.active .label-l1 {
    color: #1D1D1F !important;
  }
  
  .market-tab.active .arrow {
    color: #1D1D1F !important;
    transform: rotate(180deg) !important;
  }
  
  /* ===== Level 2: Section Cards - Tree Branches (MEDIUM FONT) ===== */
  .section-selection {
    background: #FFFFFF !important;
    border-bottom: 1px solid #F1F1F3 !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  
  .section-cards {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    overflow: visible !important;
    max-height: none !important;
    width: 100% !important;
    padding: 8px !important;
  }
  
  .section-card, .card-body {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    padding: 16px 20px !important;
    background: #FFFFFF !important;
    border: 1px solid #F1F1F3 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    min-height: 80px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    border-radius: 8px !important;
  }
  
  .section-card:hover, .card-body:hover {
    background: #F8F9FA !important;
  }
  
  .section-card.active, .card-body.active {
    background: #F8F9FA !important;
    border-left: 4px solid var(--dc-accent) !important;
  }
  
  .section-card .card-head, .card-body .card-head {
    font-size: 16px !important;
    font-weight: 600 !important;
    margin: 0 0 4px 0 !important;
    color: #495057 !important;
    text-align: left !important;
    width: 100% !important;
  }
  
  .section-card .card-sub, .card-body .card-sub {
    font-size: 12px !important;
    color: #6C757D !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    text-align: left !important;
    width: 100% !important;
  }
  
  .section-card.active .card-head, .section-card.active .card-sub,
  .card-body.active .card-head, .card-body.active .card-sub {
    color: #1D1D1F !important;
  }
  
  /* Hide arrows for 2nd level cards on mobile */
  .section-card .card-arrow, 
  .card-body .card-arrow,
  .section-card .card-arrow svg,
  .card-body .card-arrow svg {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
  
  /* Ensure card content is properly structured */
  .section-card > div, .card-body > div {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  
  /* ===== Level 3: Filter Options - Tree Leaves (SMALLEST FONT) ===== */
  .deeplist-options {
    background: #FFFFFF !important;
    border-bottom: 1px solid #F1F1F3 !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
  }
  
  .deeplist-nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }
  
  .deeplist-option {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 24px 14px 72px !important;
    background: #FFFFFF !important;
    border-bottom: 1px solid #F1F1F3 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #495057 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    position: relative !important;
  }
  
  .deeplist-option:last-child {
    border-bottom: none !important;
  }
  
  .deeplist-option:hover {
    background: #F8F9FA !important;
  }
  
  .deeplist-option.active {
    background: #F8F9FA !important;
    border-left: 4px solid var(--dc-accent) !important;
    color: #1D1D1F !important;
  }
  
  /* ===== Content Areas ===== */
  .section-content {
    padding: 16px 24px !important;
    background: #FFFFFF !important;
  }
  
  .dl-description {
    font-size: 14px !important;
    color: #6C757D !important;
    margin: 0 0 16px 0 !important;
    line-height: 1.5 !important;
  }
  
  /* ===== Table Mobile Optimization - Show All Columns ===== */
  .table-container {
    border-radius: 8px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border: 1px solid #E9ECEF !important;
    background: #FFFFFF !important;
  }
  
  .data-table {
    min-width: 800px !important;
    font-size: 11px !important;
    width: 100% !important;
  }
  
  .data-table thead th {
    font-size: 10px !important;
    padding: 6px 4px !important;
    white-space: nowrap !important;
    background: #F8F9FA !important;
    border-bottom: 1px solid #E9ECEF !important;
    font-weight: 600 !important;
  }
  
  .data-table tbody td {
    padding: 6px 4px !important;
    white-space: nowrap !important;
    border-bottom: 1px solid #F1F1F3 !important;
  }
  
  .data-table tbody tr:nth-child(even) {
    background: #FAFAFA !important;
  }
  
  .data-table tbody tr:hover {
    background: #F8F9FA !important;
  }
  
  /* ===== Breadcrumb Mobile ===== */
  .mini-breadcrumb {
    padding: 16px 24px !important;
    font-size: 10px !important;
    color: #6C757D !important;
    background: #F8F9FA !important;
    border-bottom: 1px solid #E9ECEF !important;
  }
  
  .mini-breadcrumb strong {
    color: #495057 !important;
    font-weight: 600 !important;
  }
  
  /* ===== Header Mobile ===== */
  .dashboard-header {
    padding: 16px 24px !important;
    text-align: center !important;
    background: #FFFFFF !important;
  }
  
  .dashboard-title {
    font-size: 24px !important;
    margin-bottom: 8px !important;
  }
  
  .dashboard-subtitle {
    font-size: 14px !important;
  }
  
  /* ===== General Mobile Spacing ===== */
  .deepcap-dashboard {
    margin-top: 0 !important;
  }
  
  .market-content {
    padding: 0 !important;
  }
  
  /* ===== Tree Navigation Visual Indicators ===== */
  .market-tab::before,
  .section-card::before, .card-body::before,
  .deeplist-option::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 4px !important;
    background: transparent !important;
    transition: background-color 0.2s ease !important;
  }
  
  .market-tab.active::before {
    background: var(--dc-accent) !important;
  }
  
  .section-card.active::before, .card-body.active::before,
  .deeplist-option.active::before {
    background: var(--dc-accent) !important;
  }
  
  /* ===== Touch Interactions ===== */
  .market-tab, .section-card, .card-body, .deeplist-option {
    min-height: 44px !important;
  }
  
  /* ===== Focus States for Accessibility ===== */
  .market-tab:focus-visible,
  .section-card:focus-visible,
  .card-body:focus-visible,
  .deeplist-option:focus-visible {
    outline: 2px solid var(--dc-accent) !important;
    outline-offset: -2px !important;
  }
}

/* ===== Global Ticker Plus Icons - Ensure Visible Everywhere ===== */
.ticker-plus {
  display: inline-flex !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  border: 1.5px solid currentColor !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  margin-left: 8px !important;
}

.ticker-plus svg {
  width: 12px !important;
  height: 12px !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  fill: none !important;
}

.ticker-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: var(--dc-link) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

.ticker-link:hover {
  text-decoration: underline !important;
}

/* ===== Tablet Breakpoint ===== */
@media (min-width: 769px) and (max-width: 1024px) {
  /* Keep existing tablet styles */
  .market-nav {
    padding: 12px 24px !important;
  }
  
  .nav-container {
    gap: 40px !important;
  }
  
  .market-tab .label-l1 {
    font-size: 20px !important;
  }
  
  .section-cards {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 16px !important;
  }
  
  .section-card, .card-body {
    padding: 12px 14px 20px !important;
  }
  
  .section-card .card-head, .card-body .card-head {
    font-size: 16px !important;
  }
  
  .section-card .card-sub, .card-body .card-sub {
    font-size: 12px !important;
  }
  
  .deeplist-nav {
    gap: 20px !important;
  }
  
  .deeplist-option {
    font-size: 14px !important;
    padding: 8px 12px !important;
  }
}

/* ===== Desktop Preserved (min-width: 1025px) ===== */
@media (min-width: 1025px) {
  /* Keep all existing desktop styles unchanged */
  .market-nav {
    background: #FFFFFF !important;
    border-bottom: none !important;
  }
  
  .nav-container {
    gap: 72px !important;
  }
  
  .market-tab .label-l1 {
    font-size: 30px !important;
    font-weight: 800 !important;
  }
  
  .section-cards {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
    gap: 8px !important;
  }
  
  .section-card, .card-body {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: start !important;
    background: var(--dc-surface-secondary) !important;
    border: 1px solid var(--dc-border) !important;
    border-radius: 12px !important;
    padding: 8px 10px 16px !important;
    position: relative !important;
    cursor: pointer !important;
  }
  
  .section-card .card-head, .card-body .card-head {
    font-size: 14px !important;
    margin: 0 0 2px !important;
    line-height: 1.2 !important;
  }
  
  .section-card .card-sub, .card-body .card-sub {
    font-size: 11.5px !important;
    line-height: 1.3 !important;
  }

  .card-sub {
    padding-bottom: 10px !important;
  }
  
  .deeplist-nav {
    display: flex !important;
    gap: 28px !important;
    flex-wrap: wrap !important;
    padding: 6px 0 !important;
  }
  
  .deeplist-option {
    padding: 10px 14px !important;
    border-radius: 10px !important;
    background: #F0F1F3 !important;
    border: none !important;
    color: #333 !important;
    font-size: 16px !important;
  }
  
  .deeplist-option.active {
    background: var(--dc-accent) !important;
    color: #1D1D1F !important;
  }
}

/* =====================================================================
 * PERFORMANCE PAGE — Scoped overrides (presence of .dc-performance)
 * Keeps Blocksy/Greenshift chrome hidden and ensures full-bleed hero.
 * ===================================================================== */
/* Hide default WP/Blocksy page title/header when performance page block present */
body:has(.dc-performance) .entry-header,
body:has(.dc-performance) .entry-header .page-title,
body:has(.dc-performance) .entry-title,
body:has(.dc-performance) .page-title,
body:has(.dc-performance) .ct-page-title { display: none !important; }

/* Match HOW page: remove white bar and allow full-width background under performance */
body:has(.dc-performance) .ct-container-full { background:#0a0f12 !important; }
/* Remove theme bottom spacing to avoid a black bar above footer on Performance page */
/* Global: remove theme-provided bottom spacing that causes a visible bar above footer */
.ct-container-full[data-vertical-spacing] { padding-bottom: 0 !important; }
body:has(.dc-performance) .dc-performance { max-width: 100% !important; width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
body:has(.dc-performance) .dc-performance > .alignfull,
body:has(.dc-performance) .dc-performance > .is-layout-constrained,
body:has(.dc-performance) .dc-performance > *:where(:not(.alignleft):not(.alignright):not(.alignfull)) { max-width: 100% !important; width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }

/* Container clamp for performance sections */
.dc-performance .dc-performance-container { max-width: 1200px; margin: 0 auto; padding: 24px 16px; }

/* Full-bleed dark hero */
.dc-perf-hero { position: relative; background:#0a0f12 !important; color: #ffffff; overflow:hidden; padding: 40px 0 20px; min-height: 500px; }
.dc-perf-hero h1 { font-weight: 900; font-size: 50px; line-height: 1.2; letter-spacing: -0.02em; margin: 0 0 10px; color:#ffffff !important; }
.dc-perf-hero p { color: #ffffff; opacity: .92; }
.dc-hero-figure img { display:block; width:100%; height:auto; max-width:360px; margin:10px auto 0; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.25); }
.dc-hero-figure figcaption { font-size:11px; color:#e5e7eb; padding-bottom:20px; text-align:center; }
@media (max-width: 768px){
  .dc-perf-hero { min-height: 520px; }
  .dc-perf-hero h1{ font-size: 42px !important; }
  /* On small screens, allow image to grow a bit more for legibility */
  .dc-hero-figure img { max-width: 85%; }
}

/* Section base styles reused from HOW page grammar */
.dc-performance .dc-section { background: #ffffff; padding-top: 24px; padding-bottom: 20px; }
.dc-performance .dc-section-head { margin: 0 0 12px 0; }
.dc-performance .dc-section-head h2 { margin: 0 0 6px; font-size: 28px; font-weight: 900; color: #080c0e; letter-spacing: -0.01em; }
.dc-performance .dc-section-head p { margin: 0; color: #4a4f55; }

/* Snapshot inline figure scaling */
.dc-snap-figure img { display:block; width:100%; height:auto; border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.06); margin-top:8px; }

/* KPI row: prevent wrap for large monetary values while keeping look */
.dc-kpi { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; }
.dc-kpi .dc-card { padding:12px; }
.dc-nowrap { white-space: nowrap; }

/* Cards and layout helpers */
.dc-performance .dc-card { background: #ffffff; border: 1px solid #e5e7eb; border-radius: 14px; padding: 18px; box-shadow: 0 8px 24px rgba(0,0,0,.06); }
.dc-performance .dc-two-col { display: grid; gap: 18px; grid-template-columns: 1.2fr 1fr; align-items: start; }
@media (max-width: 900px){ .dc-performance .dc-two-col { grid-template-columns: 1fr; } }
.dc-performance .dc-figure img { display: block; width: 100%; height: auto; border-radius: 12px; box-shadow: 0 6px 18px rgba(0,0,0,.08); }

/* CTA button (reuse tokens) */
.dc-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 18px; background: var(--dc-accent); color: #1D1D1F; border-radius: 999px; font-weight: 800; text-decoration: none; }
.dc-cta:hover { filter: brightness(0.97); }
.dc-cta:focus-visible { outline: 2px solid var(--dc-accent); outline-offset: 2px; }

/* Table reuse */
.dc-performance .table-container { overflow: auto; -webkit-overflow-scrolling: touch; background: var(--dc-surface); border: 1px solid var(--dc-border); border-radius: 10px; }
.dc-performance .data-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 14px; }
.dc-performance .data-table thead th { position: sticky; top: 0; background: #F2F3F4; z-index: 1; text-align: left; padding: 10px 12px; border-bottom: 1px solid #e6e6e8; font-weight: 800; }
.dc-performance .data-table tbody td { padding: 10px 12px; border-top: 1px solid #ededf0; }

/* Placeholder for charts */
.dc-performance .chart-placeholder { background: #F8F9FA; border: 2px dashed #E5E5E7; border-radius: 12px; padding: 24px; text-align: center; }
.dc-performance .placeholder-content { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.dc-performance .placeholder-icon { font-size: 2rem; opacity: .35; }


/* Comprehensive fix for section cards visibility */
@media (max-width: 768px) {
  .section-selection {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
  
  .section-cards {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    position: static !important;
    transform: none !important;
    width: 100% !important;
    padding: 8px !important;
  }
  
  .section-card, .card-body {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 80px !important;
    max-height: none !important;
    position: static !important;
    transform: none !important;
    clip: auto !important;
    clip-path: none !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    padding: 16px 20px !important;
    background: #FFFFFF !important;
    border: 1px solid #F1F1F3 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    border-radius: 8px !important;
  }
  
  /* Override any grid or flexbox issues */
  .section-cards {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: none !important;
    grid-auto-flow: unset !important;
    grid-auto-columns: unset !important;
    grid-auto-rows: unset !important;
  }
  
  /* Ensure no overflow hiding */
  .market-section {
    overflow: visible !important;
  }
  
  .deepcap-dashboard {
    overflow: visible !important;
  }
  
  /* Force all cards to be visible */
  .section-cards .section-card,
  .section-cards .card-body {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* ===== A+ Design Enhancements ===== */
@media (max-width: 768px) {
  /* ===== Enhanced Visual Depth ===== */
  .market-tab {
    box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
    border-radius: 6px !important;
    margin: 4px 8px !important;
    border: 1px solid #E9ECEF !important;
  }
  
  .market-tab:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.12) !important;
    transform: translateY(-1px) !important;
  }
  
  .market-tab.active {
    box-shadow: 0 2px 12px rgba(255, 208, 17, 0.3) !important;
  }
  
  /* ===== Enhanced Section Cards ===== */
  .section-card, .card-body {
    box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
    border-radius: 4px !important;
    margin: 2px 8px !important;
    border: 1px solid #F1F1F3 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  }
  
  .section-card:hover, .card-body:hover {
    box-shadow: 0 3px 12px rgba(0,0,0,0.1) !important;
    transform: translateY(-1px) !important;
    background: #F8F9FA !important;
  }
  
  .section-card.active, .card-body.active {
    box-shadow: 0 3px 16px rgba(255, 208, 17, 0.25) !important;
    border-color: var(--dc-accent) !important;
    background: #FFFBF0 !important;
  }
  
  /* ===== Enhanced Filter Options ===== */
  .deeplist-option {
    box-shadow: 0 1px 2px rgba(0,0,0,0.04) !important;
    border-radius: 4px !important;
    margin: 2px 8px !important;
    border: 1px solid #F1F1F3 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  }
  
  .deeplist-option:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
    transform: translateY(-1px) !important;
    background: #F8F9FA !important;
  }
  
  .deeplist-option.active {
    box-shadow: 0 3px 16px rgba(255, 208, 17, 0.25) !important;
    border-color: var(--dc-accent) !important;
    background: #FFFBF0 !important;
  }
  
  /* ===== Enhanced Typography ===== */
  .mini-breadcrumb {
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.7 !important;
  }
  
  .market-tab .label-l1 {
    letter-spacing: -0.01em !important;
  }
  
  .section-card .card-head, .card-body .card-head {
    letter-spacing: -0.005em !important;
    font-weight: 700 !important;
  }
  
  .deeplist-option {
    letter-spacing: 0.01em !important;
    font-weight: 600 !important;
  }
  
  /* ===== Enhanced Active State Indicators ===== */
  .market-tab.active::before,
  .section-card.active::before, .card-body.active::before,
  .deeplist-option.active::before {
    width: 5px !important;
    background: linear-gradient(180deg, var(--dc-accent) 0%, #E6BB0F 100%) !important;
    box-shadow: 0 0 8px rgba(255, 208, 17, 0.4) !important;
  }
  
  /* ===== Enhanced Content Areas ===== */
  .section-content {
    background: linear-gradient(180deg, #FFFFFF 0%, #FAFAFA 100%) !important;
    border-radius: 8px !important;
    margin: 8px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
  }
  
  .dl-description {
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #4A5568 !important;
    font-weight: 400 !important;
    padding: 0 4px !important;
  }
  
  /* ===== Enhanced Table Container ===== */
  .table-container {
    border-radius: 8px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
    border: 1px solid #E2E8F0 !important;
    background: #FFFFFF !important;
  }
  
  /* ===== Enhanced Breadcrumb ===== */
  .mini-breadcrumb {
    background: linear-gradient(135deg, #F8F9FA 0%, #F1F3F4 100%) !important;
    border-bottom: 1px solid #E2E8F0 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
  }
  
  .mini-breadcrumb strong {
    color: #2D3748 !important;
    font-weight: 700 !important;
  }
  
  /* ===== Enhanced Header ===== */
  .dashboard-header {
    background: linear-gradient(135deg, #FFFFFF 0%, #FAFAFA 100%) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
  }
  
  .dashboard-title {
    background: linear-gradient(135deg, #1D1D1F 0%, #2D3748 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
  }
  
  /* ===== Enhanced Navigation Container ===== */
  .market-nav {
    background: linear-gradient(135deg, #FFFFFF 0%, #F8F9FA 100%) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
  }
  
  /* ===== Enhanced Section Selection ===== */
  .section-selection {
    background: linear-gradient(135deg, #FFFFFF 0%, #FAFAFA 100%) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
  }
  
  /* ===== Enhanced Filter Options Container ===== */
  .deeplist-options {
    background: linear-gradient(135deg, #FFFFFF 0%, #FAFAFA 100%) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
  }
  
  /* ===== Enhanced Touch Feedback ===== */
  .market-tab:active,
  .section-card:active, .card-body:active,
  .deeplist-option:active {
    transform: scale(0.98) !important;
    transition: transform 0.1s ease !important;
  }
  
  /* ===== Enhanced Focus States ===== */
  .market-tab:focus-visible,
  .section-card:focus-visible, .card-body:focus-visible,
  .deeplist-option:focus-visible {
    outline: 2px solid var(--dc-accent) !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 4px rgba(255, 208, 17, 0.2) !important;
  }
  
  /* ===== Enhanced Loading States ===== */
  .table-container.loading {
    background: linear-gradient(90deg, #F7FAFC 25%, #EDF2F7 50%, #F7FAFC 75%) !important;
    background-size: 200% 100% !important;
    animation: shimmer 1.5s infinite !important;
  }
  
  @keyframes shimmer {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
  }
  
  /* ===== Enhanced Scroll Indicators ===== */
  .section-cards::after {
    content: '' !important;
    display: block !important;
    height: 12px !important;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(248,249,250,0.8) 50%, rgba(255,255,255,0.9) 100%) !important;
    margin-top: 8px !important;
    border-radius: 0 0 8px 8px !important;
  }
  
  /* ===== Enhanced Spacing ===== */
  .market-tab {
    margin-bottom: 6px !important;
  }
  
  .section-card, .card-body {
    margin-bottom: 4px !important;
  }
  
  .deeplist-option {
    margin-bottom: 3px !important;
  }
  
  /* ===== Enhanced Color Transitions ===== */
  .market-tab,
  .section-card, .card-body,
  .deeplist-option {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  }
  
  /* ===== Enhanced Active State Transitions ===== */
  .market-tab.active,
  .section-card.active, .card-body.active,
  .deeplist-option.active {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
  }
}

/* =====================================================================
 * HOW PAGE — Full Rewrite Overrides (scoped to presence of .dc-how)
 * Date: 2025-09-25
 * These rules are high-specificity to defeat Blocksy/Greenshift defaults.
 * ===================================================================== */

/* 1) Suppress built-in page title/header when the How page is present */
body:has(.dc-how) .entry-header,
body:has(.dc-how) .entry-header .page-title,
body:has(.dc-how) .entry-title,
body:has(.dc-how) .page-title,
body:has(.dc-how) .ct-page-title { display:none !important; }

/* 2) Make the Gutenberg/Blocksy constrained content go full width for this page */
body:has(.dc-how) .entry-content.is-layout-constrained,
body:has(.dc-how) .is-layout-constrained,
body:has(.dc-how) .hero-section.is-width-constrained { max-width: 100% !important; width:100% !important; padding-left:0 !important; padding-right:0 !important; }
/* Remove white bar above How page by matching theme full container */
body:has(.dc-how) .ct-container-full { background:#0a0f12 !important; }
/* Break out Gutenberg/Blocksy inner clamps under .dc-how to ensure true full-bleed bands */
body:has(.dc-how) .dc-how { max-width: 100% !important; width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
body:has(.dc-how) .dc-how > .alignfull,
body:has(.dc-how) .dc-how > .is-layout-constrained,
body:has(.dc-how) .dc-how > *:where(:not(.alignleft):not(.alignright):not(.alignfull)) { max-width: 100% !important; width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }

/* 3) Full-bleed dark hero container */
.dc-how { background:#0a0f12 !important; color:#ffffff !important; }
.dc-how .dc-how-container { max-width:1200px; margin:0 auto; padding:40px 0 10px; }
.dc-how-hero .dc-how-container h1 { font-size:50px !important; line-height:1.2 !important; font-weight:900 !important; color:#ffffff !important; letter-spacing:-0.02em; margin:0 0 10px 0; }
.dc-how-hero .dc-how-container p { color:#ffffff !important; opacity:.92; }
/* Ensure all How page sections are full-bleed */
.dc-how .dc-how-hero,
.dc-how .dc-section,
.dc-how .dc-models,
.dc-how .dc-usage,
.dc-how .dc-expect,
.dc-how .dc-disclosures { width:100% !important; margin:0 !important; background:#ffffff; }
/* Explicit hero band background */
.dc-how-hero { position: relative; background:#0a0f12 !important; overflow:hidden; min-height:500px; }
.dc-how-hero::before{
  content:""; position:absolute; inset:0;
  /* Layer order: side vignette, vertical readability fade, image (scaled to 70%) */
  background-image:
    linear-gradient(90deg,
      #0a0f12 0%, rgba(10,15,18,0.95) 3%, rgba(10,15,18,0.75) 8%, rgba(10,15,18,0.35) 14%, rgba(10,15,18,0) 22%,
      rgba(10,15,18,0) 78%, rgba(10,15,18,0.35) 86%, rgba(10,15,18,0.75) 92%, rgba(10,15,18,0.95) 97%, #0a0f12 100%),
    linear-gradient(180deg, rgba(10,15,18,0.45) 0%, rgba(10,15,18,0.25) 40%, rgba(10,15,18,0.65) 100%),
    url('http://deepcap.ai/wp-content/uploads/2025/10/howtohero2.png');
  background-position: center center, center center, right 18% center;
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% 100%, 100% 100%, 860px auto;
  filter: none; z-index:0;
}
/* Mobile hero composition: keep image away from headline text */
@media (max-width: 768px){
  .dc-how-hero { min-height: 520px; }
  .dc-how-hero::before{
    background-position: center center, center center, right -60px bottom -40px;
    background-size: 100% 100%, 100% 100%, 640px auto;
  }
  .dc-how-hero .dc-how-container h1{ font-size: 42px !important; }
}
.dc-how-hero .dc-how-container{ position:relative; z-index:1; }
/* Ensure headings visible on dark models band */
.dc-models .dc-section-head h2,
.dc-models .dc-deepscore-card h3 { color:#ffffff !important; }
/* Body copy on white sections uses primary text color */
.dc-copy, .dc-copy p, .dc-copy li { color: var(--dc-text-primary) !important; }
/* Spacing between ezine grid and tips */
.dc-usage .dc-usage-tips { margin-top: 60px; }
/* Responsive hero image */
.dc-hero-figure img { display:block; width:100%; height:auto; max-width:600px; margin:40px auto 40px; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.25); }
/* Center quality profile figure */
.dc-accordion .dc-figure { display:block; }
.dc-accordion .dc-figure svg { margin: 0 auto; display:block; }
/* DeepScore side-by-side layout */
.dc-deepscore { display:grid; grid-template-columns: 1.5fr 1fr; gap:16px; align-items:center; }
.dc-deepscore-figure img { width:50%; height:auto; border:1px solid #e5e7eb; border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.08); }
@media (max-width:900px){ .dc-deepscore { grid-template-columns:1fr; } }

/* Models section on white with dark text */
.dc-models { background:#ffffff !important; }
.dc-usage, .dc-expect { background:#ffffff !important; }
.dc-models .dc-how-container h2,
.dc-models .dc-deepscore-card h3 { color:#080c0e !important; }
.dc-models .dc-how-container p,
.dc-models .dc-how-container li,
.dc-models .dc-how-container figcaption,
.dc-models .dc-section-head p { color:#1d1d1f !important; }
/* Spacing for DeepScore card only */
.dc-models .dc-deepscore-card { margin-top: 60px; }

/* Expect section background set to white; keep blue card tone rules below */
.dc-expect { background:#ffffff !important; }

/* 4) Clamp paragraph widths to 500px on desktop */
@media (min-width:1024px){
  .dc-how p,
  .dc-how .dc-copy,
  .dc-how .dc-copy p,
  .dc-how .dc-copy ul,
  .dc-how .dc-section-head p,
  .dc-how .dc-deepscore-card p,
  .dc-how .dc-usage-tips,
  .dc-how .dc-disclosures-inner p { max-width:500px !important; }
}

/* 5) Section base styles */
.dc-section { background:#ffffff; }
.dc-section { padding-top:32px; padding-bottom:20px; }
.dc-section-head { margin:0 0 16px 0; }
.dc-section-head h2 { margin:0 0 6px; font-size:28px; font-weight:900; color:#080c0e; letter-spacing:-0.01em; }
.dc-section-head p { margin:0; color:#4a4f55; }

/* 6) Card scaffolding */
.dc-card { background:#ffffff; border:1px solid #e5e7eb; border-radius:14px; padding:18px; box-shadow:0 8px 24px rgba(0,0,0,.06); }
.dc-card.dc-card-blue { background:#cbe1e4; border-color:#d3e6ea; }

/* 7) Accordions & drawers closed by default, styled as cards */
.dc-accordion-list { display:grid; gap:10px; }
.dc-accordion { background:#ffffff; border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; }
.dc-accordion > summary { list-style:none; cursor:pointer; padding:14px 16px; font-weight:800; color:#080c0e; position:relative; }
.dc-accordion > summary::-webkit-details-marker { display:none; }
.dc-accordion > summary::after { content:'▾'; position:absolute; right:14px; top:12px; color:#6b7280; transition:transform .2s ease; }
.dc-accordion[open] > summary::after { transform:rotate(180deg); }
.dc-acc-body { padding:10px 16px 16px; border-top:1px solid #eef2f5; }
/* Ensure accordion body text uses dark copy color on white */
.dc-acc-body, .dc-acc-body p, .dc-acc-body li { color:#1d1d1f !important; }

/* Process accordion spacing tweak */
.dc-process-acc .dc-accordion + .dc-accordion { margin-top:8px; }

.dc-drawers { display:grid; gap:12px; margin-top:8px; }
.dc-drawer { background:#cbe1e4; border:1px solid #d3e6ea; border-radius:12px; overflow:hidden; }
.dc-drawer > summary { list-style:none; cursor:pointer; padding:14px 16px; font-weight:900; color:#0a1f26; position:relative; }
.dc-drawer > summary::-webkit-details-marker { display:none; }
.dc-drawer > summary::after { content:'+'; position:absolute; right:14px; top:10px; width:22px; height:22px; border-radius:50%; background:#eaf3f6; color:#0a1f26; display:grid; place-items:center; font-weight:900; transition:transform .2s ease; }
.dc-drawer[open] > summary::after { transform:rotate(45deg); }
.dc-drawer-body { padding:10px 16px 16px; }

/* 8) Grid helper */
.dc-two-col { display:grid; gap:18px; grid-template-columns:1.2fr 1fr; align-items:start; }
@media (max-width:900px){ .dc-two-col { grid-template-columns:1fr; } }
.dc-figure { margin:0; }
.dc-figure svg { width:100%; height:auto; }
.dc-figure figcaption { font-size:12px; color:#6b7280; margin-top:6px; }

/* 9) Wired-style ezine cards for Suggested section */
.dc-usage { background:#ffffff; }
.dc-ezine { display:grid; grid-template-columns:repeat(auto-fit, minmax(240px,1fr)); gap:14px; }
.dc-zine-card { position:relative; background:#ffffff; border:1px solid #e5e7eb; border-radius:12px; padding:14px; box-shadow:0 6px 16px rgba(0,0,0,.05); }
.dc-zine-card::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,#FFD011 0%, #0C71C3 100%); border-radius:4px 0 0 4px; }
.dc-zine-kicker { font:700 11px/1.4 Inter,system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#6b7280; }
.dc-zine-card h3 { margin:4px 0; font-size:18px; font-weight:900; letter-spacing:-.01em; color:#080c0e; }
.dc-zine-card p { margin:0; color:#4a4f55; font-size:14px; }
.dc-zine-figure { margin-top:8px; }
.dc-zine-figure svg { width:120px; max-height:80px; height:auto; display:block; }
@media (min-width:1280px){ .dc-zine-figure svg { width:140px; max-height:90px; } }

/* 10) Tips */
.dc-usage-tips ul { padding-left:18px; margin:8px 0 0; }
.dc-usage-tips li { margin:6px 0; }

/* 11) Expectation card tone */
.dc-expect .dc-card-blue .dc-section-head h2 { color:#0a1f26; }
.dc-expect .dc-card-blue .dc-section-head p { color:#0a1f26; opacity:.85; }

/* Models explainer (lightweight, card-like, responsive) */
.dc-models-explain { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px; margin:8px 0 16px; }
.dc-models-explain .exp { background:#ffffff; border:1px solid #e5e7eb; border-radius:12px; padding:12px; box-shadow:0 6px 16px rgba(0,0,0,.05); }
.dc-models-explain .exp h3 { margin:0 0 6px; font-size:16px; font-weight:900; letter-spacing:-.01em; color:#080c0e; }
.dc-models-explain .exp p, .dc-models-explain .exp li { color:#4a4f55; font-size:12px; }

/* 12) Disclosures full-width dark band */
.dc-disclosures { background:#080c0e !important; color:#ffffff !important; padding-bottom: 30px; }
.dc-disclosures .dc-how-container { max-width:1200px; margin:0 auto; }
.dc-disclosures h2 { color:#ffffff !important; font-weight:900; margin:0 0 10px; }
.dc-disclosures p { color:#e5e7eb !important; }

/* Mobile: add consistent side padding for all How page sections */
@media (max-width: 768px){
  .dc-how .dc-how-container,
  .dc-disclosures .dc-how-container{
    padding-left:18px !important;
    padding-right:18px !important;
    box-sizing:border-box;
  }
}

@media (max-width: 768px) {
  /* Force 2x2 grid for L2 cards with high specificity */
  .deepcap-dashboard .section-cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 10px !important;
    padding: 8px 12px !important;
    width: 100% !important;
    overflow: visible !important;
  }
  .deepcap-dashboard .section-cards > .section-card,
  .deepcap-dashboard .section-cards > .card-body {
    width: 100% !important;
    min-width: 0 !important;
  }

  /* Scroll anchors to avoid overshoot under sticky header/nav */
  .deepcap-dashboard .section-cards,
  .deepcap-dashboard .deeplist-options,
  .deepcap-dashboard .table-container {
    scroll-margin-top: var(--dc-sticky-offset) !important;
  }

  /* Mobile table: horizontal swipe hint and sticky first column */
  .deepcap-dashboard .table-container { position: relative !important; }
  .deepcap-dashboard .table-container::after {
    content: 'Swipe to see more →';
    position: absolute; right: 8px; top: 6px;
    padding: 2px 6px; font-size: 10px; color: #4B5563;
    background: rgba(255,255,255,0.9);
    border: 1px solid #E5E7EB; border-radius: 6px;
    pointer-events: none;
  }
  .deepcap-dashboard .data-table th:first-child,
  .deepcap-dashboard .data-table td:first-child {
    position: sticky; left: 0; z-index: 3; background: #FFFFFF;
    box-shadow: 2px 0 0 #E9ECEF;
  }
}

/* ======================================================================
 * PMPro Login page — layout and form fixes (scoped)
 * Date: 2025-09-19
 * Scope with .dc-login-page so other membership pages remain unchanged.
 * ====================================================================== */
.dc-login-page .grid { grid-template-columns: 1fr !important; gap: 20px !important; }
.dc-login-page .side { grid-column: 1 / -1 !important; }

/* Match checkout card width and center on the page */
.dc-login-page .dc-login,
.dc-login-page .side .card { width: 100% !important; max-width: 576.117px !important; margin-left: auto !important; margin-right: auto !important; }

/* Center grid items similar to checkout vertical stack */
.dc-login-page .main, .dc-login-page .side { display: block; }

/* Ensure both panels use dark gray text and white surface */
.dc-login-page .plan.dc-login { color: #111827 !important; }
.dc-login-page .plan.dc-login h2 { color: #111827 !important; }
.dc-login-page .plan.dc-login p { color: #111827 !important; }

/* Restyle the right/side panel to look like a light card and move below */
/* Use the dark checkout .card look for the side section */
.dc-login-page .side .card {
  background: #0F1B22 !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  border-radius: 12px !important;
  padding: 16px !important;
  color: #E5E7EB !important;
  box-shadow: none !important;
}
.dc-login-page .side .card h2 { color: #F9FAFB !important; margin: 0 0 8px !important; }
.dc-login-page .side .card p { color: #E5E7EB !important; }
.dc-login-page .side .card .cta { background:#FFD011 !important; color:#1D1D1F !important; border-radius:10px !important; padding:10px 14px !important; font-weight:800 !important; text-decoration:none !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; }

/* Form typography and spacing */
.dc-login-page .pmpro_login_wrap { background:#ffffff !important; color:#111827 !important; }
.dc-login-page .pmpro_login_wrap h2 { color:#111827 !important; }
.dc-login-page .pmpro_login_wrap form.pmpro_form { display: grid; gap: 12px; }
/* Also target the common WP/PMPro login form id */
.dc-login-page .pmpro_login_wrap #loginform { display: grid !important; gap: 12px !important; }
.dc-login-page .pmpro_login_wrap #loginform p { margin: 10px 0 !important; }
.dc-login-page .pmpro_login_wrap label,
.dc-login-page .pmpro_login_wrap #loginform p label { display:block !important; font-weight:700 !important; font-size:13px !important; margin-bottom:4px !important; color:#374151 !important; }
.dc-login-page .pmpro_login_wrap .pmpro_form_field { margin: 10px 0 !important; }
.dc-login-page .pmpro_login_wrap .pmpro_submit { margin-top: 14px !important; }

/* Inputs: consistent radius and full width */
.dc-login-page .pmpro_login_wrap input[type="text"],
.dc-login-page .pmpro_login_wrap input[type="email"],
.dc-login-page .pmpro_login_wrap input[type="password"] {
  width: 100% !important;
  padding: 10px 12px !important;
  border: 1px solid #E5E5E7 !important;
  border-radius: 8px !important;
  font-size: 14px !important;
}

/* Hard overrides tailored for login inputs to match checkout email */
.dc-login-page .pmpro_login_wrap #loginform input#user_login,
.dc-login-page .pmpro_login_wrap #loginform input#user_pass { width:100% !important; display:block !important; border:1px solid #E5E5E7 !important; border-radius:8px !important; padding:10px 12px !important; font-size:14px !important; box-shadow:none !important; background:#FFFFFF !important; }

/* Login button: brand yellow at rest; keep plugin blue on active if any */
.dc-login-page .pmpro_login_wrap .pmpro_btn {
  background: #FFD011 !important;
  color: #1D1D1F !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-weight: 800 !important;
}

/* Extra breathing room in the Sign In panel */
.dc-login-page .dc-login { padding: 24px !important; }
.dc-login-page .dc-login > h2 { margin-bottom: 10px !important; }
.dc-login-page .dc-login .pmpro_login_wrap > * { margin-top: 8px; }

/* ========================
 * Force wp_login_form styles
 * ======================== */
.dc-login-page .dc-login #loginform { display: grid !important; gap: 12px !important; }
.dc-login-page .dc-login #loginform p { margin: 10px 0 !important; }
.dc-login-page .dc-login #loginform label { display: block !important; font-weight: 700 !important; font-size: 13px !important; margin-bottom: 6px !important; color: #374151 !important; }
.dc-login-page .dc-login #loginform input.input,
.dc-login-page .dc-login #loginform input[type="text"],
.dc-login-page .dc-login #loginform input[type="password"] { width: 100% !important; display: block !important; padding: 10px 12px !important; border: 1px solid #E5E5E7 !important; border-radius: 8px !important; font-size: 14px !important; background: #FFFFFF !important; box-shadow: none !important; }
.dc-login-page .dc-login #loginform #wp-submit { background: #FFD011 !important; color: #1D1D1F !important; border-radius: 10px !important; padding: 10px 14px !important; font-weight: 800 !important; border: none !important; box-shadow: none !important; }

/* Forgot password link */
.dc-login-page .dc-forgot-password { margin-top: 8px !important; margin-bottom: 0 !important; text-align: left !important; font-size: 13px !important; color: #6B7280 !important; }
.dc-login-page .dc-forgot-password a { color: #111827 !important; text-decoration: underline !important; font-weight: 600 !important; }
.dc-login-page .dc-forgot-password a:hover { color: #FFD011 !important; }

/* =====================================================================
 * Archive: News category — hide "Submit a Story" CTA (buttonbox)
 * Scoped to the News category archive to avoid affecting other pages
 * ===================================================================== */
body.archive.category.category-news .gspb-buttonbox,
body.archive.category.category-news [class*="gspb-buttonbox"]{
  display: none !important;
}

/* Hide the same CTA across ALL category archives (News/Update/Trends/Stocks/Analysis/Education/Event/Finance) */
body.archive.category .wp-block-greenshift-blocks-buttonbox,
body.archive.category .gspb_button_wrapper,
/* Collapse the right column in the header container when present */
body.archive.category #gspb_container-id-gsbp-5fcba5a .gspb_row__col--3{
  display: none !important;
}

.dc-lc-card .dc-lc-head {
  font-size: 13px;
}
.dc-lc-card .dc-lc-head .dc-lc-company {
  font-weight: 700;
}
.dc-lc-card .dc-lc-tf .dc-btn,
.dc-lc-card .dc-lc-ta .dc-btn {
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid var(--dc-border, #e5e7eb);
  background: #fff;
  color: #111827;
  padding: 4px 8px;
  border-radius: 6px;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
}
.dc-lc-card .dc-btn.active {
  background: #111827;
  color: #fff;
  border-color: #111827;
}
/* stack guards: ensure each LC card is separated */
.dc-lc-card { display: block; }

[data-prefix="single_blog_post"] .hero-section[data-type="type-2"] {
  background-color: #0A0F12;
}
