@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

/**
 * Newsfolio — "Default" theme (data-theme="default", formerly professional).
 * Loaded after page :root tokens; maps new variables onto existing app custom properties.
 */

html[data-theme="default"] {
  color-scheme: light;
  font-family: "Inter", -apple-system, sans-serif !important;
  --bg-primary: #f5f5f7;
  --bg-secondary: #f5f5f7;
  --bg-card: #ffffff;
  --bg-input: #ffffff;
  --bg-nav: #ffffff;
  --border-color: #efefef;
  --text-primary: #000000;
  --text-secondary: #6b7280;
  --text-muted: #6b7280;
  --accent: #5ba4cf;
  --accent-light: #ebf4fb;
  --positive: #00c853;
  --negative: #ff1744;
  --pill-bg: #f5f5f7;
  --nav-active: #5ba4cf;
  --card-shadow: none;
  --logo-folio: #5ba4cf;

  /* Bridge → tokens used across pages */
  --bg: var(--bg-primary);
  --color-background-primary: var(--bg-primary);
  --color-background-secondary: var(--bg-card);
  --color-border-tertiary: var(--border-color);
  --text: var(--text-primary);
  --text-label: #5ba4cf;
  --border: rgba(0, 0, 0, 0.08);
  --border-subtle: rgba(0, 0, 0, 0.06);
  --bg-card-solid: #ffffff;
  /* Map legacy “teal” UI tokens to logo blue (not dark cyan) */
  --teal-light: var(--accent);
  --teal-mid: #5ba4cf;
  --teal-deep: #5ba4cf;
  --teal-dark: #1a4a66;
  --accent-glow: var(--accent-light);
  --bull: var(--positive);
  --bear: var(--negative);
  --bullish: #00c853;
  --bearish: #ff1744;
  --neutral: #7b68ee;

  /* Global nav search (newsfolio-global-search.css) */
  --nf-ns-bg: #f5f5f7;
  --nf-ns-border: #e8e8e8;
  --nf-ns-border-focus: rgba(91, 164, 207, 0.55);
  --nf-ns-dd-bg: #ffffff;
  --nf-ns-dd-border: #efefef;
  --nf-ns-item-hover: rgba(91, 164, 207, 0.1);

  /*
   * Chart.js — default canvas tooltips: pages merge plugins.tooltip using these values
   * when data-theme is professional (Chart.js has no CSS hook for the canvas tooltip).
   */
  --nf-chart-tooltip-bg: #ffffff;
  --nf-chart-tooltip-title: #000000;
  --nf-chart-tooltip-body: #6b7280;
  --nf-chart-tooltip-border: #5ba4cf;
  --nf-chart-tooltip-border-width: 1px;
  --nf-chart-tooltip-padding: 10px;
  --nf-chart-tooltip-radius: 8px;
}

/*
 * Portfolio (and any page using the same class names): external HTML Chart tooltips
 * match professional card + logo-blue border.
 */
html[data-theme="default"] .line-chart-tooltip-el {
  background: var(--nf-chart-tooltip-bg) !important;
  color: var(--nf-chart-tooltip-body) !important;
  border: var(--nf-chart-tooltip-border-width) solid var(--nf-chart-tooltip-border) !important;
  border-radius: var(--nf-chart-tooltip-radius) !important;
  padding: var(--nf-chart-tooltip-padding) !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.1);
}

html[data-theme="default"] .line-chart-tooltip-date {
  color: var(--nf-chart-tooltip-title) !important;
  opacity: 1;
}

html[data-theme="default"] .line-chart-tooltip-val {
  color: var(--nf-chart-tooltip-body) !important;
}

html[data-theme="default"] .line-chart-tooltip-spy {
  border-top-color: var(--nf-chart-tooltip-border) !important;
  color: var(--nf-chart-tooltip-body) !important;
}

html[data-theme="default"] .line-chart-tooltip-spy-label {
  color: #6b7280 !important;
  opacity: 1;
}

html[data-theme="default"] .pie-chart-tooltip {
  background: var(--nf-chart-tooltip-bg) !important;
  color: var(--nf-chart-tooltip-body) !important;
  border: var(--nf-chart-tooltip-border-width) solid var(--nf-chart-tooltip-border) !important;
  border-radius: var(--nf-chart-tooltip-radius) !important;
  padding: var(--nf-chart-tooltip-padding) !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.1);
}

/* Default body copy; overridden by more specific rules and !important exceptions below */
html[data-theme="default"] * {
  color: #000000;
  font-family: "Inter", -apple-system, sans-serif !important;
}

html[data-theme="default"] .positive,
html[data-theme="default"] .gain,
html[data-theme="default"] [class*="up"],
html[data-theme="default"] .pnl-pct.positive,
html[data-theme="default"] .is-up,
html[data-theme="default"] .drill-pct--up {
  color: #00c853 !important;
}

html[data-theme="default"] .negative,
html[data-theme="default"] .loss,
html[data-theme="default"] [class*="down"],
html[data-theme="default"] .pnl-pct.negative,
html[data-theme="default"] .is-down,
html[data-theme="default"] .drill-pct--down {
  color: #ff1744 !important;
}

html[data-theme="default"] button.active,
html[data-theme="default"] .tab.active,
html[data-theme="default"] .portfolio-page-tab.is-active,
html[data-theme="default"] body.nf-app .feed-tab.is-active,
html[data-theme="default"] body.nf-app .holdings-panel-tab.is-active {
  color: #ffffff !important;
}

html[data-theme="default"] body,
html[data-theme="default"] body.nf-app {
  background: var(--bg-primary) !important;
  color: var(--text-primary);
}

html[data-theme="default"] .bg {
  background: var(--bg-primary) !important;
}

html[data-theme="default"] body.nf-app nav:not(.nf-bottom-nav),
html[data-theme="default"] body.nf-stock nav:not(.nf-bottom-nav),
html[data-theme="default"] .site-nav {
  background: var(--bg-nav) !important;
  border-bottom: 0.5px solid #e8e8e8 !important;
}

html[data-theme="default"] .profile-panel,
html[data-theme="default"] .profile-panel-header,
html[data-theme="default"] aside.profile-panel {
  background: var(--bg-card-solid) !important;
  border-color: var(--border-color) !important;
  box-shadow: var(--card-shadow) !important;
}

html[data-theme="default"] .profile-field input,
html[data-theme="default"] .profile-input,
html[data-theme="default"] .profile-select,
html[data-theme="default"] input[type="text"],
html[data-theme="default"] input[type="search"],
html[data-theme="default"] input[type="email"],
html[data-theme="default"] input[type="password"],
html[data-theme="default"] textarea {
  background: var(--bg-input) !important;
  color: var(--text-primary) !important;
  border-color: #e8e8e8 !important;
}

/* Header stock search: styled in newsfolio-global-search.css (pill + spacing) for body.nf-app / body.nf-stock */

html[data-theme="default"] .logo .logo-news,
html[data-theme="default"] a.logo .logo-news {
  color: var(--text-primary) !important;
}

html[data-theme="default"] .logo-accent,
html[data-theme="default"] a.logo .logo-accent,
html[data-theme="default"] .logo span.logo-accent {
  color: var(--logo-folio) !important;
}

html[data-theme="default"] .ticker-badge,
html[data-theme="default"] .watchlist-ticker-chip,
html[data-theme="default"] .dash-move-ticker-chip .ticker-badge {
  background: var(--accent) !important;
  color: #fff !important;
  border-color: transparent !important;
}

html[data-theme="default"] .stock-initials,
html[data-theme="default"] .ticker-initials-fallback,
html[data-theme="default"] .nf-wl-dd-initials,
html[data-theme="default"] .pulse-explore-dd-initials {
  background: var(--accent-light) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] .nf-bottom-nav {
  background: var(--bg-nav) !important;
  border-top: 0.5px solid #efefef !important;
}

html[data-theme="default"] .nf-bottom-nav__link {
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .nf-bottom-nav__link.is-active,
html[data-theme="default"] .nf-bottom-nav__link[aria-current="page"] {
  color: var(--nav-active) !important;
}

html[data-theme="default"] .nf-bottom-nav__link.is-active .nf-bottom-nav__label,
html[data-theme="default"] .nf-bottom-nav__link[aria-current="page"] .nf-bottom-nav__label {
  color: var(--nav-active) !important;
}

html[data-theme="default"] .dash-mkt-pill {
  background: var(--pill-bg) !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .dash-mkt-pill .dash-mkt-label,
html[data-theme="default"] .dash-mkt-pill .dash-mkt-ch {
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .dash-mkt-pill.is-up .dash-mkt-ch {
  color: var(--positive) !important;
}

html[data-theme="default"] .dash-mkt-pill.is-down .dash-mkt-ch {
  color: var(--negative) !important;
}

html[data-theme="default"] .live-badge {
  border-color: rgba(91, 164, 207, 0.35) !important;
  color: var(--accent) !important;
  background: var(--accent-light) !important;
}

html[data-theme="default"] .live-dot {
  background: var(--accent) !important;
}

/* Replace common hard-coded teal accents */
html[data-theme="default"] a.nav-link:hover,
html[data-theme="default"] .nav-links a:hover,
html[data-theme="default"] .nav-links a.active {
  color: var(--accent) !important;
}

html[data-theme="default"] body.nf-app nav.nav-open .nav-links {
  background: var(--bg-card-solid) !important;
  border-color: var(--border-color) !important;
}

html[data-theme="default"] body.nf-app nav.nav-open .nav-links a:not(.btn-signin) {
  color: var(--text-primary) !important;
}

html[data-theme="default"] body.nf-app nav.nav-open .nav-links a:not(.btn-signin):hover,
html[data-theme="default"] body.nf-app nav.nav-open .nav-links a:not(.btn-signin).active {
  color: var(--accent) !important;
}

/* -------------------------------------------------------------------------- */
/* Hard-coded dark / frosted panels → white surfaces + dark copy (pro only)   */
/* -------------------------------------------------------------------------- */

html[data-theme="default"] .profile-avatar-btn,
html[data-theme="default"] .profile-close-btn,
html[data-theme="default"] .profile-hero-avatar {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

/* Profile drawer — emoji grid, password row, follow stats (see newsfolio-compact-profile.js pills) */
html[data-theme="default"] aside.profile-panel .avatar-grid button {
  background: #f5f5f7 !important;
  border: 1.5px solid #e0e0e0 !important;
  color: #000000 !important;
}
html[data-theme="default"] aside.profile-panel .avatar-grid button:hover {
  border-color: #cfcfcf !important;
}
html[data-theme="default"] aside.profile-panel .avatar-grid button.is-selected {
  background: #ebf4fb !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
}

html[data-theme="default"] aside.profile-panel #profile-toggle-pw {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
}
html[data-theme="default"] aside.profile-panel #profile-toggle-pw:hover,
html[data-theme="default"] aside.profile-panel #profile-toggle-pw:focus-visible {
  background: #ffffff !important;
  border-color: #5ba4cf !important;
  color: #000000 !important;
}

html[data-theme="default"] .profile-btn-avatar-upload,
html[data-theme="default"] .profile-btn-avatar-upload:hover,
html[data-theme="default"] .profile-btn-avatar-upload:focus-visible {
  color: #ffffff !important;
}

html[data-theme="default"] .nf-follow-stat-pill {
  background: #ffffff !important;
  border: 1.5px solid #e0e0e0 !important;
  color: #000000 !important;
}
html[data-theme="default"] .nf-follow-stat-pill:hover,
html[data-theme="default"] .nf-follow-stat-pill:focus-visible {
  background: #ffffff !important;
  border-color: #cfcfcf !important;
  color: #000000 !important;
}

html[data-theme="default"] aside.profile-panel .profile-panel-title,
html[data-theme="default"] aside.profile-panel .profile-section-title {
  color: var(--text-label) !important;
}

html[data-theme="default"] aside.profile-panel .profile-field label {
  color: #6b7280 !important;
}
html[data-theme="default"] aside.profile-panel .profile-toggle-row span {
  color: #000000 !important;
}
html[data-theme="default"] aside.profile-panel .profile-avatar-hint,
html[data-theme="default"] aside.profile-panel .profile-username-hint,
html[data-theme="default"] aside.profile-panel .profile-about,
html[data-theme="default"] aside.profile-panel .profile-btn-avatar-remove {
  color: #6b7280 !important;
}
html[data-theme="default"] aside.profile-panel .profile-email-readonly {
  color: #000000 !important;
}
html[data-theme="default"] aside.profile-panel .profile-msg:not(.err):not(.profile-msg--success) {
  color: #6b7280 !important;
}

html[data-theme="default"] .nf-modal-x {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .nf-share-preview {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
}

html[data-theme="default"] .nf-share-preview-title,
html[data-theme="default"] p.nf-share-preview-title {
  color: var(--text-primary) !important;
}

html[data-theme="default"] textarea.nf-share-caption {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

/* Dashboard — winners / losers + move chips */
html[data-theme="default"] .dash-stock-move-inner {
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04) inset, 0 8px 24px rgba(0, 0, 0, 0.06) !important;
}

html[data-theme="default"] .dash-stock-move-col {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
}

html[data-theme="default"] .dash-stock-move-col--winners {
  border-left: 3px solid #00c853 !important;
}

html[data-theme="default"] .dash-stock-move-col--losers {
  border-left: 3px solid #ff1744 !important;
}

html[data-theme="default"] .dash-stock-move-col-title {
  color: var(--text-primary) !important;
}

html[data-theme="default"] .dash-move-ticker-chip {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .dash-move-ticker-chip .stock-initials {
  background: var(--pill-bg) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .dash-move-ticker-chip:hover {
  background: var(--accent-light) !important;
  border-color: rgba(91, 164, 207, 0.35) !important;
}

html[data-theme="default"] .dash-move-ticker-chip.is-active {
  background: var(--accent-light) !important;
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 2px rgba(91, 164, 207, 0.2) !important;
}

html[data-theme="default"] .dash-stock-move-toggle {
  color: var(--accent) !important;
  border-color: var(--border-color) !important;
  background: #ffffff !important;
}

html[data-theme="default"] .dash-stock-move-toggle:hover {
  background: var(--pill-bg) !important;
  border-color: rgba(91, 164, 207, 0.35) !important;
}

html[data-theme="default"] .dash-move-explain-card {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .dash-move-explain-hide {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .dash-move-explain-hide:hover {
  background: var(--pill-bg) !important;
  color: var(--text-primary) !important;
}

/* Portfolio — watchlist chips, import table, sector bar track, grade bar track */
html[data-theme="default"] .watchlist-ticker-chip {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] a.watchlist-stock-link--chip:hover .watchlist-ticker-chip,
html[data-theme="default"] a.watchlist-stock-link--chip:focus-visible .watchlist-ticker-chip {
  background: var(--accent-light) !important;
  border-color: rgba(91, 164, 207, 0.35) !important;
}

html[data-theme="default"] .import-preview-table-wrap {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
}

html[data-theme="default"] .import-preview-table tr.import-preview-row--avg-confirmed td.td-avg {
  background: var(--pill-bg) !important;
  box-shadow: inset 0 0 0 1px var(--border-color) !important;
}

html[data-theme="default"] .add-holding-search-wrap input {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .sector-breakdown-track {
  background: #e8e8e8 !important;
}

html[data-theme="default"] .sector-breakdown-name {
  color: var(--text-secondary) !important;
}

@media (min-width: 768px) {
  html[data-theme="default"] .sector-breakdown-name {
    color: var(--text-secondary) !important;
  }
}

html[data-theme="default"] .grade-bar-wrap {
  background: #e8e8e8 !important;
}

/* Social — pulse feed cards & chips */
html[data-theme="default"] .post-pulse-card.card {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
}

html[data-theme="default"] .pulse-chip:not(.is-active) {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .pulse-chip:not(.is-active):hover {
  color: var(--text-primary) !important;
  border-color: rgba(91, 164, 207, 0.4) !important;
}

html[data-theme="default"] .pulse-chip-more-inner {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.12) !important;
}

html[data-theme="default"] .pulse-chip-divider {
  background: var(--border-color) !important;
}

html[data-theme="default"] .pulse-chip--watch:not(.is-active) {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .ticker-chip-filter:not(.active) {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .ticker-chip-filter.active {
  background: var(--accent) !important;
  color: #ffffff !important;
  border-color: var(--accent) !important;
}

/* Communities — shell, sidebar, mode toggle, chat chrome, bubbles */
html[data-theme="default"] .comm-mode-track {
  background: var(--pill-bg) !important;
  border-color: var(--border-color) !important;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.04) !important;
}

html[data-theme="default"] .comm-mode-btn {
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .comm-mode-track:not(.is-buzz) .comm-mode-btn[data-mode="boardroom"],
html[data-theme="default"] .comm-mode-track.is-buzz .comm-mode-btn[data-mode="buzz"] {
  color: #ffffff !important;
}

html[data-theme="default"] .comm-sidebar-panel {
  background: #ffffff !important;
}

html[data-theme="default"] .comm-room-btn:not(.is-active) {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .comm-room-btn:not(.is-active):hover {
  color: var(--text-primary) !important;
  border-color: rgba(91, 164, 207, 0.35) !important;
}

html[data-theme="default"] .comm-chat-header {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
}

html[data-theme="default"] .comm-chat-back {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .comm-chat-refresh {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] .comm-chat-refresh:hover:not(:disabled) {
  background: var(--accent-light) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] .comm-room-picker {
  background-color: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .comm-pulse-chip {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] .comm-msg-bubble {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
}

html[data-theme="default"] .comm-msg-bubble .comm-msg-user {
  color: var(--text-primary) !important;
}

html[data-theme="default"] .comm-msg-bubble .comm-msg-time {
  color: var(--text-muted) !important;
}

html[data-theme="default"] .comm-msg-bubble .comm-msg-body {
  color: var(--text-primary) !important;
}

html[data-theme="default"] .comm-msg--self .comm-msg-bubble {
  background: var(--accent-light) !important;
  border-color: rgba(91, 164, 207, 0.35) !important;
}

html[data-theme="default"] .comm-msg--self .comm-msg-bubble .comm-msg-body {
  color: var(--text-primary) !important;
}

html[data-theme="default"] .comm-react-btn {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .comm-react-btn:hover {
  color: var(--text-primary) !important;
}

html[data-theme="default"] .comm-react-btn.is-mine {
  background: var(--accent-light) !important;
  border-color: rgba(91, 164, 207, 0.45) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] .comm-msg--self .comm-react-btn {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .comm-msg--self .comm-react-btn.is-mine {
  background: var(--accent-light) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] .comm-username-gate {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

/* Stock page — frosted panels */
html[data-theme="default"] body.nf-stock .stock-company-about {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] body.nf-stock .stock-card-hero {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
}

/* Portfolio — sector detail nested panels */
html[data-theme="default"] body.nf-app .sector-detail-toggle {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] body.nf-app .sector-detail-toggle:hover {
  background: var(--accent-light) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] body.nf-app .sector-detail-group {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
}

html[data-theme="default"] body.nf-app .card {
  color: var(--text-primary);
}

html[data-theme="default"] body.nf-app .card-headline,
html[data-theme="default"] body.nf-app .card-headline a {
  color: var(--text-primary) !important;
}

/* App feed — frosted controls */
html[data-theme="default"] body.nf-app #feed .card {
  background: #ffffff !important;
  border: 0.5px solid #e0e0e0 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] body.nf-app #feed .card .article-ticker,
html[data-theme="default"] body.nf-app #feed .card a.article-ticker {
  background-color: #5ba4cf !important;
  border-color: rgba(91, 164, 207, 0.85) !important;
  color: #ffffff !important;
}

/* App — holdings column cards (RR.L / NVDA rows) */
html[data-theme="default"] body.nf-app .holdings-column {
  background: #ffffff !important;
  border: 0.5px solid #e0e0e0 !important;
  backdrop-filter: none !important;
}

html[data-theme="default"] body.nf-app .holding-row {
  background: #ffffff !important;
  border: 0.5px solid #e0e0e0 !important;
}

html[data-theme="default"] body.nf-app .holding-row.is-expanded {
  background: #ffffff !important;
  border: 0.5px solid #e0e0e0 !important;
  border-left: 3px solid #5ba4cf !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .holding-row-head:hover {
  background: var(--accent-light) !important;
}

html[data-theme="default"] body.nf-app .holdings-panel-toggle {
  background: #ffffff !important;
  border: 0.5px solid #e0e0e0 !important;
}

html[data-theme="default"] body.nf-app .holdings-panel-tab:not(.is-active) {
  background: #ffffff !important;
  color: #000000 !important;
  border: 1.5px solid #5ba4cf !important;
  border-radius: 20px !important;
}

html[data-theme="default"] body.nf-app .holdings-panel-tab:not(.is-active):hover {
  background: #ffffff !important;
  color: #000000 !important;
  border-color: #5ba4cf !important;
}

html[data-theme="default"] body.nf-app .holdings-panel-tab.is-active {
  background: #5ba4cf !important;
  background-image: none !important;
  color: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .holdings-column .holding-row .ticker-badge {
  background: #5ba4cf !important;
  border: 1px solid rgba(91, 164, 207, 0.85) !important;
  color: #ffffff !important;
}

html[data-theme="default"] body.nf-app .period-btns button {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] body.nf-app .period-btns button.is-active {
  border-color: #5ba4cf !important;
  color: #5ba4cf !important;
  background: var(--accent-light) !important;
}

html[data-theme="default"] body.nf-app .mini-spinner {
  border-color: rgba(91, 164, 207, 0.35) !important;
  border-top-color: #5ba4cf !important;
}

html[data-theme="default"] body.nf-app .view-portfolio-link {
  border-color: rgba(91, 164, 207, 0.45) !important;
  color: #5ba4cf !important;
}

html[data-theme="default"] body.nf-app .view-portfolio-link:hover {
  background: var(--accent-light) !important;
  border-color: #5ba4cf !important;
}

/* Feed tabs + ticker filter pills (logo blue, not cyan) */
html[data-theme="default"] body.nf-app .feed-tab:not(.is-active) {
  background: #ffffff !important;
  color: #000000 !important;
  border: 1.5px solid #5ba4cf !important;
  border-radius: 20px !important;
}

html[data-theme="default"] body.nf-app .feed-tab:not(.is-active):hover {
  color: #000000 !important;
  border-color: #5ba4cf !important;
}

html[data-theme="default"] body.nf-app .feed-tab.is-active {
  background: #5ba4cf !important;
  background-image: none !important;
  color: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  border-radius: 20px !important;
}

html[data-theme="default"] body.nf-app #feed-ticker-chips-desktop .feed-filter-pill.is-selected,
html[data-theme="default"] body.nf-app .feed-mobile-holdings-chips .feed-filter-pill.is-selected {
  background: #5ba4cf !important;
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.35) !important;
  box-shadow: 0 2px 10px rgba(91, 164, 207, 0.35) !important;
}

html[data-theme="default"] body.nf-app .feed-filter-pill.is-selected.feed-filter-pill--teal {
  background: #5ba4cf !important;
  color: #ffffff !important;
  border-color: rgba(91, 164, 207, 0.85) !important;
  box-shadow: 0 2px 10px rgba(91, 164, 207, 0.3) !important;
}

html[data-theme="default"] body.nf-app details.feed-ticker-chip-more summary {
  background: #ffffff !important;
  border-color: rgba(91, 164, 207, 0.45) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] body.nf-app .feed-ticker-chip-more-inner {
  background: #ffffff !important;
  border: 0.5px solid #e0e0e0 !important;
  color: var(--text-primary) !important;
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.1) !important;
}

html[data-theme="default"] body.nf-app .btn-ai-summary-hide {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] body.nf-app .btn-ai-summary-hide:hover {
  background: var(--accent-light) !important;
  color: var(--text-primary) !important;
}

html[data-theme="default"] body.nf-app .card-icon-btn {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] body.nf-app .card-icon-btn:hover {
  background: var(--accent-light) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] body.nf-app .feed-source-select {
  background: #ffffff !important;
  border: 0.5px solid #e0e0e0 !important;
  color: #000000 !important;
}

html[data-theme="default"] body.nf-app .feed-source-select option {
  color: #000000 !important;
  background-color: #ffffff !important;
}

html[data-theme="default"] body.nf-app .feed-source-filters-toggle {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--accent) !important;
}

html[data-theme="default"] body.nf-app .feed-source-filters-toggle:hover {
  background: var(--accent-light) !important;
}

/* Report modal (shared CSS) */
html[data-theme="default"] .nf-report-modal {
  background: #ffffff !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12) !important;
}

html[data-theme="default"] .nf-report-modal__hd {
  border-bottom-color: var(--border-color) !important;
}

html[data-theme="default"] .nf-report-reason:hover {
  background: var(--pill-bg) !important;
}

/* Portfolio page — section tabs (Holdings / Watchlist / …) */
html[data-theme="default"] body.nf-app .portfolio-page-tab:not(.is-active) {
  background: #ffffff !important;
  color: #000000 !important;
  border: 1.5px solid #5ba4cf !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .portfolio-page-tab:not(.is-active):hover {
  background: #ffffff !important;
  color: #000000 !important;
  border-color: #5ba4cf !important;
}

html[data-theme="default"] body.nf-app .portfolio-page-tab.is-active {
  background: #5ba4cf !important;
  color: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

/* -------------------------------------------------------------------------- */
/* Global selects + dropdown panels (native & custom class hooks)             */
/* -------------------------------------------------------------------------- */

html[data-theme="default"] select,
html[data-theme="default"] dropdown,
html[data-theme="default"] .dropdown,
html[data-theme="default"] .dropdown-menu,
html[data-theme="default"] .sort-dropdown,
html[data-theme="default"] .filter-dropdown,
html[data-theme="default"] .nf-nav-search__dropdown {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #e0e0e0 !important;
}

html[data-theme="default"] select option,
html[data-theme="default"] option {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
}

html[data-theme="default"] select option:hover,
html[data-theme="default"] select option:checked {
  background: #ebf4fb !important;
  color: #000000 !important;
}

/* Nav search results: keep list on white; hover uses accent wash (vars already set on :root) */
html[data-theme="default"] .nf-nav-search__dropdown .nf-nav-dd-item:hover,
html[data-theme="default"] .nf-nav-search__dropdown .nf-nav-dd-item:focus-visible {
  background: #ebf4fb !important;
  color: #000000 !important;
}

/* Teal-tinted rgba(147,177,181,…) hover / chip surfaces → neutral greys */
html[data-theme="default"] .nf-report-modal__close:hover {
  background: #f5f5f7 !important;
  color: var(--text-secondary) !important;
}

html[data-theme="default"] .nf-report-reason:hover {
  background: #f5f5f7 !important;
}

html[data-theme="default"] .btn-pulse-report:hover,
html[data-theme="default"] .pm-report-btn:hover,
html[data-theme="default"] .comm-msg-report:hover {
  background: #f5f5f7 !important;
  color: #000000 !important;
}

/* Default theme: branded scrollbars (all pages; Firefox uses inherited scrollbar-color) */
html[data-theme="default"] {
  scrollbar-color: #5ba4cf #f5f5f7;
  scrollbar-width: thin;
}

html[data-theme="default"] ::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

html[data-theme="default"] ::-webkit-scrollbar-track {
  background: #f5f5f7;
}

html[data-theme="default"] ::-webkit-scrollbar-thumb {
  background: #5ba4cf;
  border-radius: 4px;
}

html[data-theme="default"] ::-webkit-scrollbar-thumb:hover {
  background: #4f7c82;
}

/* -------------------------------------------------------------------------- */
/* Daylight: unified tab & pill bars (feed tabs, filters, portfolio tabs,     */
/* social pulse, stock feed tabs, communities, auth) — inactive vs selected  */
/* -------------------------------------------------------------------------- */
html[data-theme="default"] body.nf-app .feed-tab:not(.is-active),
html[data-theme="default"] body.nf-app .holdings-panel-tab:not(.is-active),
html[data-theme="default"] body.nf-app .portfolio-page-tab:not(.is-active),
html[data-theme="default"] body.nf-app .social-tab:not(.active),
html[data-theme="default"] body.nf-app .comm-room-btn:not(.is-active),
html[data-theme="default"] body.nf-app .feed-filter-pill:not(.is-selected),
html[data-theme="default"] body.nf-app .feed-filter-pill--bullish:not(.is-selected),
html[data-theme="default"] body.nf-app .feed-filter-pill--bearish:not(.is-selected),
html[data-theme="default"] body.nf-app .feed-filter-pill--neutral:not(.is-selected),
html[data-theme="default"] body.nf-app .feed-filter-pill--impact:not(.is-selected),
html[data-theme="default"] body.nf-app .ticker-chip-filter:not(.is-active) {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .feed-tab.is-active,
html[data-theme="default"] body.nf-app .holdings-panel-tab.is-active,
html[data-theme="default"] body.nf-app .portfolio-page-tab.is-active,
html[data-theme="default"] body.nf-app .social-tab.active,
html[data-theme="default"] body.nf-app .comm-room-btn.is-active,
html[data-theme="default"] body.nf-app .feed-filter-pill.is-selected,
html[data-theme="default"] body.nf-app .feed-filter-pill--bullish.is-selected,
html[data-theme="default"] body.nf-app .feed-filter-pill--bearish.is-selected,
html[data-theme="default"] body.nf-app .feed-filter-pill--neutral.is-selected,
html[data-theme="default"] body.nf-app .feed-filter-pill--impact.is-selected,
html[data-theme="default"] body.nf-app .ticker-chip-filter.is-active {
  background: #5ba4cf !important;
  border: 1.5px solid #5ba4cf !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .comm-mode-track {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .comm-mode-slider {
  background: #5ba4cf !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .comm-mode-track:not(.is-buzz) .comm-mode-btn[data-mode="boardroom"],
html[data-theme="default"] body.nf-app .comm-mode-track.is-buzz .comm-mode-btn[data-mode="buzz"] {
  color: #ffffff !important;
}

html[data-theme="default"] body.nf-app .comm-mode-track:not(.is-buzz) .comm-mode-btn[data-mode="buzz"],
html[data-theme="default"] body.nf-app .comm-mode-track.is-buzz .comm-mode-btn[data-mode="boardroom"] {
  color: #000000 !important;
}

html[data-theme="default"] .auth-tabs {
  background: #f5f5f7 !important;
  border: 1.5px solid #5ba4cf !important;
  border-radius: 20px !important;
}

html[data-theme="default"] .auth-tab:not(.active) {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
  border-radius: 20px !important;
}

html[data-theme="default"] .auth-tab.active {
  background: #5ba4cf !important;
  border: 1.5px solid #5ba4cf !important;
  color: #ffffff !important;
  border-radius: 20px !important;
}

html[data-theme="default"] body.nf-stock .stock-feed-tab:not(.is-active),
html[data-theme="default"] body.nf-stock .stock-info-tab:not(.is-active) {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-stock .stock-feed-tab.is-active,
html[data-theme="default"] body.nf-stock .stock-info-tab.is-active {
  background: #5ba4cf !important;
  border: 1.5px solid #5ba4cf !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-stock .stock-info-tablist {
  background: transparent !important;
  border: none !important;
  border-bottom: none !important;
  padding: 0 !important;
  gap: 0.35rem !important;
}

html[data-theme="default"] body.nf-stock .stock-period-btn:not(.is-active):not([aria-selected="true"]) {
  border-radius: 20px !important;
}

html[data-theme="default"] body.nf-app .nf-forecast-chip:not(.is-active) {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .nf-forecast-chip.is-active {
  background: #5ba4cf !important;
  border: 1.5px solid #5ba4cf !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app.dashboard-page .dash-move-ticker-chip:not(.is-active) {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app.dashboard-page .dash-move-ticker-chip.is-active {
  background: #5ba4cf !important;
  border: 1.5px solid #5ba4cf !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .pulse-chip:not(.is-active),
html[data-theme="default"] body.nf-app .pulse-chip--searched:not(.is-active) {
  background: #ffffff !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .pulse-chip.is-active,
html[data-theme="default"] body.nf-app .pulse-chip--searched.is-active {
  background: #5ba4cf !important;
  border: 1.5px solid #5ba4cf !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .cmp-ticker-chip.is-selected {
  background: #5ba4cf !important;
  border: 1.5px solid #5ba4cf !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: none !important;
}

html[data-theme="default"] body.nf-app .cmp-ticker-search-pill {
  background: #ebf4fb !important;
  border: 1.5px solid #5ba4cf !important;
  color: #000000 !important;
  border-radius: 20px !important;
}

html[data-theme="default"] body.nf-app .feed-tab:not(.is-active):hover,
html[data-theme="default"] body.nf-app .holdings-panel-tab:not(.is-active):hover,
html[data-theme="default"] body.nf-app .portfolio-page-tab:not(.is-active):hover,
html[data-theme="default"] body.nf-app .social-tab:not(.active):hover,
html[data-theme="default"] body.nf-app .comm-room-btn:not(.is-active):hover,
html[data-theme="default"] body.nf-app .feed-filter-pill:not(.is-selected):hover,
html[data-theme="default"] body.nf-app .ticker-chip-filter:not(.is-active):hover {
  color: #000000 !important;
  border-color: #5ba4cf !important;
  background: #ffffff !important;
}

html[data-theme="default"] body.nf-stock .stock-feed-tab:not(.is-active):hover,
html[data-theme="default"] body.nf-stock .stock-info-tab:not(.is-active):hover {
  color: #000000 !important;
  border-color: #5ba4cf !important;
  background: #ffffff !important;
}

/* Light theme: uppercase section / card kicker labels — larger, bolder */
html[data-theme="default"] .card-title,
html[data-theme="default"] .stat-label,
html[data-theme="default"] .sector-breakdown-title,
html[data-theme="default"] .holdings-table thead th,
html[data-theme="default"] .holdings-column-title,
html[data-theme="default"] .feed-source-label,
html[data-theme="default"] .feed-ticker-chips-label,
html[data-theme="default"] .dashboard-card-label,
html[data-theme="default"] .dashboard-news-head .section-title,
html[data-theme="default"] .profile-section-title {
  font-size: 13px !important;
  font-weight: 700 !important;
}
