body[data-page="portfolio"] .mobile-entity-list {
  display: none;
  gap: 8px;
  margin-top: 10px;
}

body[data-page="portfolio"] .mobile-entity-card {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px 11px;
  background: color-mix(in srgb, var(--ghost-bg) 56%, var(--panel));
  display: grid;
  gap: 8px;
}

body[data-page="portfolio"] .mobile-entity-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body[data-page="portfolio"] .mobile-entity-title {
  font-size: 15px;
  font-weight: 700;
}

body[data-page="portfolio"] .mobile-entity-badge {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 2px 8px;
  background: color-mix(in srgb, var(--panel) 90%, transparent);
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

body[data-page="portfolio"] .mobile-entity-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 10px;
}

body[data-page="portfolio"] .mobile-entity-item {
  display: grid;
  gap: 2px;
}

body[data-page="portfolio"] .mobile-entity-item span {
  font-size: 11px;
  color: var(--muted);
}

body[data-page="portfolio"] .mobile-entity-item b {
  font-size: 14px;
}

@media (max-width: 1023.98px) {
  body[data-page="portfolio"] .portfolio-page.container {
    width: min(1280px, calc(100% - 18px));
    margin: 12px auto 24px;
  }

  body[data-page="portfolio"] .dashboard {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  body[data-page="portfolio"] .workspace-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  body[data-page="portfolio"] .workspace-actions {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  body[data-page="portfolio"] .workspace-actions .btn,
  body[data-page="portfolio"] .asset-category-tab,
  body[data-page="portfolio"] .tab,
  body[data-page="portfolio"] .panel-nav-btn,
  body[data-page="portfolio"] .pager-nav,
  body[data-page="portfolio"] .pager-page {
    min-height: 44px;
  }

  body[data-page="portfolio"] .portfolio-switch-trigger {
    font-size: clamp(24px, 6.6vw, 34px);
    max-width: min(80vw, 560px);
  }

  body[data-page="portfolio"] .portfolio-switch-menu {
    min-width: 0;
    width: min(420px, calc(100vw - 24px));
  }

  body[data-page="portfolio"] .main-col-slider-viewport {
    overflow: hidden;
  }

  body[data-page="portfolio"] .dividends-panel-toggle {
    position: sticky;
    top: calc(var(--topbar-offset) + 8px);
    right: auto;
    width: 100%;
    padding: 8px;
    border-radius: 12px;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    gap: 6px;
    margin-bottom: 10px;
    opacity: .98;
    pointer-events: auto;
    z-index: 18;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .16);
  }

  body[data-page="portfolio"] .panel-nav-btn {
    width: 100%;
    border-radius: 10px;
  }

  body[data-page="portfolio"] .title-row {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 8px;
  }

  body[data-page="portfolio"] .title-row > .muted {
    max-width: 100%;
    text-align: left;
  }

  body[data-page="portfolio"] .title-row-actions {
    width: 100%;
    justify-content: flex-start;
  }

  body[data-page="portfolio"] .range-tabs,
  body[data-page="portfolio"] .tx-view-tabs {
    width: 100%;
    flex-wrap: wrap;
  }

  body[data-page="portfolio"] .tx-view-tabs .asset-category-tab {
    flex: 1;
    text-align: center;
  }

  body[data-page="portfolio"] .dividends-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  body[data-page="portfolio"] .analytics-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page="portfolio"] .analytics-kpi-shell {
    gap: 10px;
  }

  body[data-page="portfolio"] .analytics-kpi-toggle {
    padding: 11px 12px;
  }

  body[data-page="portfolio"] .analytics-alloc-layout {
    grid-template-columns: 1fr;
  }

  body[data-page="portfolio"] .analytics-ring-mode-switch {
    width: 100%;
    justify-content: center;
  }

  body[data-page="portfolio"] .analytics-pages-header {
    position: sticky;
    top: calc(var(--topbar-offset) + 8px);
    z-index: 10;
  }

  body[data-page="portfolio"] .main-col-pane-content {
    gap: 16px;
  }

  body[data-page="portfolio"] .analytics-page.is-active {
    gap: 16px;
  }

  body[data-page="portfolio"] .card {
    padding: 14px;
  }

  body[data-page="portfolio"] .analytics-benchmark-toggles {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  body[data-page="portfolio"] .analytics-benchmark-toggles label {
    justify-content: center;
  }

  body[data-page="portfolio"] .chart-wrap {
    height: 260px;
    max-height: 260px;
  }

  body[data-page="portfolio"] .analytics-line-chart {
    height: 236px;
  }

  body[data-page="portfolio"] .table-wrap {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
    scrollbar-gutter: stable;
  }

  body[data-page="portfolio"] .asset-categories {
    max-width: 100%;
    width: 100%;
  }

  body[data-page="portfolio"] .asset-categories .asset-category-tab {
    flex: 1;
  }

  body[data-page="portfolio"] .modal {
    padding: 10px;
  }

  body[data-page="portfolio"] .modal-card {
    width: min(640px, 100%);
    max-height: min(92vh, 980px);
  }
}

@media (max-width: 900px) {
  body[data-page="portfolio"] .chart-wrap {
    height: 250px;
    max-height: 250px;
  }

  body[data-page="portfolio"] .analytics-line-chart {
    height: 230px;
  }

  body[data-page="portfolio"] .sidebar-col .card:nth-child(2) {
    display: none;
  }

  body[data-page="portfolio"] .range-tabs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6px;
  }

  body[data-page="portfolio"] .range-tabs .tab {
    min-width: 0;
    text-align: center;
    padding-inline: 4px;
  }

  body[data-page="portfolio"] #holdings-table-wrap,
  body[data-page="portfolio"] #transactions-table-wrap,
  body[data-page="portfolio"] #dividends-table-wrap,
  body[data-page="portfolio"] #cashflow-table-wrap,
  body[data-page="portfolio"] #contributors-table-wrap,
  body[data-page="portfolio"] #benchmark-table-wrap,
  body[data-page="portfolio"] #fi-coupon-table-wrap,
  body[data-page="portfolio"] #fi-positions-table-wrap {
    display: none !important;
  }

  body[data-page="portfolio"] #holdings-mobile-list,
  body[data-page="portfolio"] #transactions-mobile-list,
  body[data-page="portfolio"] #dividends-mobile-list,
  body[data-page="portfolio"] #cashflow-mobile-list,
  body[data-page="portfolio"] #analytics-contributors-mobile-list,
  body[data-page="portfolio"] #analytics-benchmark-mobile-list,
  body[data-page="portfolio"] #fi-coupon-mobile-list,
  body[data-page="portfolio"] #fi-positions-mobile-list {
    display: grid !important;
  }
}

@media (max-width: 768px) {
  body[data-page="portfolio"] .workspace-actions {
    grid-template-columns: 1fr;
  }

  body[data-page="portfolio"] .dividends-summary-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="portfolio"] .analytics-kpi-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="portfolio"] .analytics-kpi-grid--featured .analytics-kpi-tile strong {
    font-size: 22px;
  }

  body[data-page="portfolio"] .analytics-benchmark-toggles {
    grid-template-columns: 1fr;
  }

  body[data-page="portfolio"] .analytics-kpi-tile {
    min-height: 0;
  }

  body[data-page="portfolio"] .mobile-entity-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="portfolio"] .portfolio-switch-trigger {
    font-size: clamp(22px, 8vw, 28px);
  }
}

@media (max-width: 620px) {
  body[data-page="portfolio"] .portfolio-page.container {
    width: calc(100% - 12px);
    margin: 8px auto 16px;
  }

  body[data-page="portfolio"] .chart-wrap {
    height: 220px;
    max-height: 220px;
  }

  body[data-page="portfolio"] .analytics-line-chart {
    height: 210px;
  }

  body[data-page="portfolio"] .card {
    padding: 12px;
  }

  body[data-page="portfolio"] .main-col-pane-content,
  body[data-page="portfolio"] .analytics-page.is-active {
    gap: 12px;
  }
}

@media (max-width: 480px) {
  body[data-page="portfolio"] .portfolio-page.container {
    width: calc(100% - 14px);
    margin: 10px auto 18px;
  }

  body[data-page="portfolio"] .workspace-head {
    gap: 8px;
  }

  body[data-page="portfolio"] .workspace-title .avatar {
    width: 32px;
    height: 32px;
  }

  body[data-page="portfolio"] .portfolio-description-info,
  body[data-page="portfolio"] #open-sharing,
  body[data-page="portfolio"] #open-manage {
    display: none !important;
  }

  body[data-page="portfolio"] .workspace-actions {
    grid-template-columns: 1fr;
  }

  body[data-page="portfolio"] .main-col-pane-content .title-row > .muted {
    display: none;
  }

  body[data-page="portfolio"] .chart-wrap {
    height: 196px;
    max-height: 196px;
  }

  body[data-page="portfolio"] .analytics-line-chart {
    height: 190px;
  }

  body[data-page="portfolio"] .analytics-kpi-grid .analytics-kpi-tile:nth-child(n + 7) {
    display: none;
  }

  body[data-page="portfolio"] .analytics-insights-text {
    display: none;
  }
}

@media (max-width: 360px) {
  body[data-page="portfolio"] .portfolio-page.container {
    width: calc(100% - 10px);
  }
}
