:root {
    --bg: #f8f5ef;
    --surface: rgba(255, 255, 255, 0.97);
    --line: rgba(15, 23, 42, 0.16);
    --text: #101828;
    --muted: #475467;
    --brand-a: #e84566;
    --brand-b: #0f8f87;
    --brand-c: #d9a441;
    --success: #0f7a55;
    --danger: #b9384c;
    --focus-ring: rgba(15, 143, 135, 0.34);
    --surface-shadow: 0 18px 42px rgba(16, 24, 40, 0.08);
    --mono: "IBM Plex Mono", monospace;
    --display: "Space Grotesk", sans-serif;
    --display-serif: "Space Grotesk", "Segoe UI", sans-serif;
    --space-1: clamp(0.55rem, 0.45rem + 0.25vw, 0.75rem);
    --space-2: clamp(0.85rem, 0.7rem + 0.4vw, 1rem);
    --space-3: clamp(1rem, 0.9rem + 0.6vw, 1.35rem);
    --space-4: clamp(1.3rem, 1.05rem + 0.9vw, 1.85rem);
    --radius-card: clamp(1rem, 0.9rem + 0.45vw, 1.4rem);
    --shell-header-height: 3.375rem;
    --shell-ticker-height: 1.68rem;
    --shell-footer-height: 2.45rem;
}        

body {
    background:
        radial-gradient(circle at top left, rgba(232, 69, 102, 0.1), transparent 26%),
        radial-gradient(circle at top right, rgba(15, 143, 135, 0.12), transparent 24%),
        linear-gradient(180deg, #f9f6f1 0%, #f4efe7 100%);
    color: var(--text);
}

.shell.theme-newsprint,
.public-shell.theme-newsprint,
.tv-mode-layout.theme-newsprint {
    --display: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, "Times New Roman", serif;
    --mono: "IBM Plex Mono", monospace;
}

.shell.theme-newsprint .paper-page,
.public-shell.theme-newsprint .paper-page {
    background:
        radial-gradient(circle at 16% 10%, rgba(255, 255, 255, 0.6), transparent 28%),
        radial-gradient(circle at 84% 9%, rgba(123, 38, 24, 0.04), transparent 22%),
        linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(243, 233, 213, 0.96));
}

.shell.theme-newsprint .shell-header,
.public-shell.theme-newsprint .public-shell-header {
    background: linear-gradient(180deg, rgba(255, 252, 245, 0.98), rgba(248, 240, 225, 0.96));
    border-bottom: 1px solid rgba(23, 18, 13, 0.08);
}

.shell.theme-newsprint .shell-brand-copy .brand,
.public-shell.theme-newsprint .public-shell-brand-copy strong,
.public-shell.theme-newsprint .public-shell-brand-copy span {
    font-family: var(--display);
}

.shell.theme-cartoon,
.public-shell.theme-cartoon,
.tv-mode-layout.theme-cartoon {
    --display: "Trebuchet MS", "Arial Rounded MT Bold", "Comic Sans MS", sans-serif;
    --mono: "IBM Plex Mono", monospace;
}

.shell.theme-cartoon .paper-page,
.public-shell.theme-cartoon .paper-page {
    background:
        radial-gradient(circle at 14% 14%, rgba(255, 255, 255, 0.7), transparent 24%),
        radial-gradient(circle at 84% 12%, rgba(61, 165, 255, 0.15), transparent 20%),
        radial-gradient(circle at 50% 100%, rgba(255, 77, 141, 0.08), transparent 30%),
        linear-gradient(180deg, #fff6fb 0%, #fff1d8 58%, #eef9ff 100%);
}

.shell.theme-cartoon .shell-header,
.public-shell.theme-cartoon .public-shell-header {
    background: linear-gradient(135deg, rgba(255, 245, 250, 0.98), rgba(255, 248, 219, 0.98));
    border-bottom: 2px solid rgba(243, 169, 26, 0.24);
}

.shell.theme-cartoon .shell-nav-link,
.public-shell.theme-cartoon .public-shell-nav a {
    border-radius: 999px;
}

.shell.theme-cartoon .shell-brandmark img,
.public-shell.theme-cartoon .public-shell-brand img {
    filter: drop-shadow(0 0 0.35rem rgba(255, 77, 141, 0.24));
}

.shell.theme-cartoon :is(.surface-card, .chart-surface, .metric-card, .security-card, .trade-flyout-highlight, .dashboard-feed-card, .trade-tile-card, .news-story, .news-rail__panel, .alert, .modal-content),
.public-shell.theme-cartoon :is(.surface-card, .chart-surface, .metric-card, .security-card, .trade-flyout-highlight, .dashboard-feed-card, .trade-tile-card, .news-story, .news-rail__panel, .alert, .modal-content) {
    border-radius: 1.4rem;
    box-shadow: 0 18px 40px rgba(111, 38, 162, 0.12);
}

.shell.theme-cartoon :is(.btn, .form-control, .form-select, .input-group-text),
.public-shell.theme-cartoon :is(.btn, .form-control, .form-select, .input-group-text) {
    border-radius: 999px;
}

/* ── Apple Theme ── */

.shell.theme-apple,
.public-shell.theme-apple,
.tv-mode-layout.theme-apple {
    --display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif;
    --mono: "SF Mono", "IBM Plex Mono", monospace;
    --radius-card: 14px;
}

.shell.theme-apple .paper-page,
.public-shell.theme-apple .paper-page {
    background:
        radial-gradient(circle at 50% 0%, rgba(0, 113, 227, 0.03), transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(88, 86, 214, 0.03), transparent 40%),
        #f5f5f7;
}

.shell.theme-apple .shell-header,
.public-shell.theme-apple .public-shell-header {
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.public-shell.theme-apple .public-shell-nav a {
    color: #0071E3;
    font-weight: 600;
}

.public-shell.theme-apple .public-shell-footer {
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.public-shell.theme-apple .shell-footer {
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.public-shell.theme-apple .shell-footer-copy,
.public-shell.theme-apple .shell-footer-links {
    color: #86868B;
}

body:has(.public-shell.theme-apple) {
    background: #f5f5f7;
}

.shell.theme-apple .shell-mobile-bottom-nav,
.public-shell.theme-apple .shell-mobile-bottom-nav {
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.shell.theme-apple :is(.surface-card, .chart-surface, .metric-card, .security-card, .trade-flyout-highlight, .dashboard-feed-card, .trade-tile-card, .news-story, .news-rail__panel, .alert, .modal-content),
.public-shell.theme-apple :is(.surface-card, .chart-surface, .metric-card, .security-card, .trade-flyout-highlight, .dashboard-feed-card, .trade-tile-card, .news-story, .news-rail__panel, .alert, .modal-content) {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 14px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
}

.shell.theme-apple .shell-nav-link {
    border-radius: 8px;
    backdrop-filter: blur(8px);
}

.shell.theme-apple .shell-nav-link.active {
    background: #0071E3;
    border-color: #0071E3;
    box-shadow: 0 4px 12px rgba(0, 113, 227, 0.3);
}

.shell.theme-apple .shell-nav-dropdown-menu {
    background: rgba(255, 255, 255, 0.78);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 14px;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.12);
}

@media (min-width: 992px) {
    .shell.theme-apple .shell-nav-dropdown-menu.open {
        animation: appleMenuFadeIn 0.18s ease-out;
    }

    .shell.theme-apple .shell-nav-dropdown-link {
        padding: 0.5rem 0.75rem;
        border-radius: 8px;
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif;
        font-size: 0.78rem;
        font-weight: 500;
        text-transform: none;
        letter-spacing: normal;
        color: #1d1d1f;
        transition: background 0.12s ease;
    }

    .shell.theme-apple .shell-nav-dropdown-link:hover {
        background: #0071E3;
        color: #fff;
    }

    .shell.theme-apple .shell-nav-dropdown-link.shell-logout-option {
        color: #ff3b30;
    }

    .shell.theme-apple .shell-nav-dropdown-link.shell-logout-option:hover {
        background: #ff3b30;
        color: #fff;
    }

    .shell.theme-apple .shell-nav-dropdown-divider {
        margin: 0.3rem 0.5rem;
        background: rgba(0, 0, 0, 0.06);
    }

    .shell.theme-apple .shell-welcome-menu-header {
        padding: 0.35rem 0.75rem 0.2rem;
    }

    .shell.theme-apple .shell-welcome-menu-header .shell-welcome-label {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif;
        font-size: 0.62rem;
        font-weight: 500;
        text-transform: none;
        letter-spacing: 0.02em;
        color: #86868b;
    }

    .shell.theme-apple .shell-welcome-menu-header .shell-username {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif;
        font-size: 0.85rem;
        font-weight: 600;
        color: #1d1d1f;
    }

    .shell.theme-apple .shell-nav-dropdown-toggle {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif;
        font-size: 0.72rem;
        font-weight: 500;
        text-transform: none;
        letter-spacing: normal;
        color: #1d1d1f;
    }

    .shell.theme-apple .shell-welcome-menu .shell-nav-link {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif !important;
        font-size: 0.72rem !important;
        font-weight: 500 !important;
        text-transform: none !important;
        letter-spacing: normal !important;
        color: #1d1d1f !important;
        border: none !important;
        border-radius: 6px !important;
        background: transparent !important;
        box-shadow: none !important;
        min-height: 2.2rem !important;
        padding: 0.15rem 0.5rem !important;
        gap: 0.15rem !important;
        transition: background 0.12s ease, color 0.12s ease !important;
    }

    .shell.theme-apple .shell-welcome-menu .shell-nav-link:hover {
        background: rgba(0, 0, 0, 0.05) !important;
    }

    .shell.theme-apple .shell-welcome-menu .shell-nav-link::after {
        font-size: 0.5rem;
        opacity: 0.5;
    }

    .shell.theme-apple .shell-welcome-menu .shell-welcome-label,
    .shell.theme-apple .shell-welcome-menu .shell-welcome-username {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif;
    }

    .shell.theme-apple .shell-welcome-menu .shell-welcome-label {
        font-size: 0.6rem;
        font-weight: 500;
        text-transform: none;
        letter-spacing: 0.02em;
        color: #86868b;
    }

    .shell.theme-apple .shell-welcome-menu .shell-welcome-username {
        font-size: 0.72rem;
        font-weight: 600;
        color: #1d1d1f;
    }

    .shell.theme-apple .shell-desktop-menu .shell-nav-link {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif !important;
        font-size: 0.72rem !important;
        font-weight: 500 !important;
        text-transform: none !important;
        letter-spacing: normal !important;
        color: #1d1d1f !important;
        border: none !important;
        border-radius: 6px !important;
        background: transparent !important;
        min-height: 2.2rem !important;
        padding: 0.2rem 0.6rem !important;
        transition: background 0.12s ease !important;
    }

    .shell.theme-apple .shell-desktop-menu .shell-nav-link:hover {
        background: rgba(0, 0, 0, 0.05) !important;
    }

    .shell.theme-apple .shell-desktop-menu .shell-nav-link.active {
        background: #0071E3 !important;
        color: #fff !important;
        box-shadow: 0 2px 8px rgba(0, 113, 227, 0.3) !important;
    }

    .shell.theme-apple .shell-desktop-menu .shell-nav-dropdown-toggle {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif !important;
        font-size: 0.72rem !important;
        font-weight: 500 !important;
        text-transform: none !important;
        letter-spacing: normal !important;
        color: #1d1d1f !important;
        border: none !important;
        border-radius: 6px !important;
        background: transparent !important;
        min-height: 2.2rem !important;
        padding: 0.2rem 0.6rem !important;
        gap: 0.25rem !important;
        transition: background 0.12s ease !important;
    }

    .shell.theme-apple .shell-desktop-menu .shell-nav-dropdown-toggle:hover {
        background: rgba(0, 0, 0, 0.05) !important;
    }
}

@keyframes appleMenuFadeIn {
    from {
        opacity: 0;
        transform: scale(0.97) translateY(-4px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* ── Glass card utility ── */

.glass-card {
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 18px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.06);
}

.glass-card-strong {
    background: rgba(255, 255, 255, 0.78);
    backdrop-filter: blur(28px);
    -webkit-backdrop-filter: blur(28px);
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 20px;
    box-shadow: 0 12px 48px rgba(0, 0, 0, 0.08);
}

body.theme-apple-body,
.public-shell.theme-apple body {
    background: #f5f5f7;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

.surface-card,
.chart-surface,
.trade-flyout-highlight,
.security-card,
.metric-card {
    border-radius: var(--radius-card);
}

.btn,
.form-control,
.form-select {
    min-height: clamp(2.75rem, 2.5rem + 0.5vw, 3.15rem);
}

.shell-content > .container-fluid,
.shell-content > .container,
.paper-page > .container-fluid,
.paper-page > .container {
    padding-left: clamp(0.9rem, 0.6rem + 1vw, 1.6rem);
    padding-right: clamp(0.9rem, 0.6rem + 1vw, 1.6rem);
}

/* Enable vertical sliding */
.vertical-carousel .carousel-inner {
    position: relative;
    overflow: hidden;
} 

.vertical-carousel .carousel-item {
    display: block;
    transition: transform .6s ease-in-out;
}

.tv-mode-layout {
  position: relative;
  height: 100vh;
  min-height: 100vh;
  overflow: hidden;
  background: var(--bg, #050b14);
  color: var(--text, #edf3ff);
}

.tv-mode-brandmark {
  flex: 0 0 clamp(6rem, 10.5vw, 9.75rem);
  width: clamp(6rem, 10.5vw, 9.75rem);
  pointer-events: none;
}

.tv-mode-brandmark img {
  width: 100%;
  height: min(10.75vh, 8.875rem);
  display: block;
  object-fit: contain;
}

.tv-mode-shell {
  position: relative;
  min-height: 95vh;
  height: 95vh;
  overflow: hidden;
}

.tv-mode-exit {
  position: fixed;
  top: 1rem;
  right: 1rem;
  z-index: 20;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .7rem 1rem;
  border-radius: 999px;
  background: rgba(8, 19, 33, .88);
  border: 1px solid rgba(255, 255, 255, .16);
  color: #edf3ff;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: .02em;
  backdrop-filter: blur(10px);
}

.tv-mode-exit:hover,
.tv-mode-exit:focus-visible {
  color: #edf3ff;
  border-color: rgba(96, 165, 250, .55);
  box-shadow: 0 0 0 2px rgba(96, 165, 250, .18);
}

.tv-mode-loading {
  min-height: 95vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  font-size: 1.25rem;
  color: #c6d4ea;
}

.tv-mode-view {
  min-height: 95vh;
  height: 95vh;
  padding: 1rem;
  background: var(--bg, #050b14);
  overflow: hidden;
}

.tv-mode-footer {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 18;
  height: 10vh;
  display: flex;
  align-items: center;
  gap: clamp(.55rem, 1vw, 1rem);
  padding: .2rem clamp(.75rem, 1.5vw, 1.5rem);
  background:
    linear-gradient(90deg, rgba(8, 19, 33, .97), rgba(18, 36, 50, .95)),
    var(--surface, #081321);
  border-top: 1px solid rgba(255, 255, 255, .16);
  box-shadow: 0 -1rem 2.5rem rgba(0, 0, 0, .28);
  overflow: hidden;
}

.tv-mode-footer-ticker {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.tv-mode-footer-ticker-track {
  display: inline-flex;
  align-items: center;
  gap: clamp(1rem, 2vw, 2.25rem);
  min-width: max-content;
  animation: tv-footer-ticker-scroll 336s linear infinite;
  will-change: transform;
}

.tv-mode-footer-ticker-item {
  display: inline-flex;
  align-items: baseline;
  gap: .45rem;
  white-space: nowrap;
  font-family: var(--display, "Space Grotesk", sans-serif);
  font-size: clamp(1.2rem, 1.8vw, 2.025rem);
  font-weight: 700;
  color: #edf3ff;
  text-transform: uppercase;
}

.tv-mode-footer-ticker-item strong {
  color: var(--brand-c, #d1ac6f);
}

.tv-mode-footer-ticker-item b {
  color: #7dd3fc;
  font-family: var(--mono, "IBM Plex Mono", monospace);
  font-size: 1.08em;
}

.tv-mode-footer-ticker-item small {
  color: rgba(237, 243, 255, .68);
  font-size: .58em;
}

.tv-mode-footer-version {
  flex: 0 0 auto;
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .28rem .58rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .06);
  color: rgba(237, 243, 255, .82);
  font-family: var(--mono, "IBM Plex Mono", monospace);
  font-size: .58rem;
  line-height: 1.1;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.grid-pager-footer {
  margin-top: .25rem !important;
}

.shell-content {
    padding-top: calc(var(--shell-header-height) + var(--shell-ticker-height) + 1.85rem);
    padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1.5rem);
    flex: 1 1 auto;
}

@keyframes tv-footer-ticker-scroll {
  from {
    transform: translateX(100vw);
  }

  to {
    transform: translateX(-100%);
  }
}

.live-updates-tv-grid {
  min-height: calc(95vh - 2rem);
}

.live-updates-tv-grid .market-ticker-live {
  display: flex;
  flex-direction: column;
  height: calc(95vh - 2rem);
  min-height: calc(95vh - 2rem);
}

.live-updates-tv-grid .market-ticker-live__table {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  height: calc(95vh - 2rem);
  max-height: calc(95vh - 2rem);
  border-radius: 1.25rem;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.live-updates-tv-grid .market-ticker-live__table::-webkit-scrollbar {
  display: none;
}

.live-updates-tv-grid .market-ticker-live__row--header {
  flex: 0 0 auto;
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--surface, #081321);
}

.live-updates-tv-grid .market-ticker-live__row--body {
  flex: 1 0 clamp(2.7rem, 5.5vh, 4.1rem);
  min-height: clamp(2.7rem, 5.5vh, 4.1rem);
  cursor: default;
}

.tv-mode-filings {
  display: flex;
  flex-direction: column;
}

.tv-mode-filings-table-wrap {
  flex: 1 1 auto;
  overflow: auto;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 1.25rem;
  background: var(--surface, rgba(7, 17, 31, .88));
}

.tv-mode-filings-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--surface, #081321);
}

.tv-mode-view .tv-scroll-container {
  max-height: calc(95vh - 8rem);
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.tv-mode-view .tv-scroll-container::-webkit-scrollbar {
  display: none;
}

.tv-mode-view .tv-scroll-container thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--surface, #081321);
}

.tv-mode-view .rich-table tbody tr.tv-live-row-updated,
.tv-mode-view .market-ticker-live__row.tv-live-row-updated {
  background:
    linear-gradient(90deg, rgba(56, 189, 248, 0.10), rgba(34, 197, 94, 0.03)),
    transparent;
  box-shadow: inset 3px 0 0 rgba(56, 189, 248, 0.85);
}

.tv-mode-view .rich-table tbody tr.tv-live-row-emphasis {
  background: rgba(245, 158, 11, 0.05);
  box-shadow: inset 3px 0 0 rgba(245, 158, 11, 0.85);
}

.page-monkey-banner {
    margin: 1rem 1rem 0;
    display: flex;
    justify-content: center;
}

.page-monkey-art {
    display: none;
    align-items: center;
    justify-content: center;
}

.page-monkey-art img {
    display: block;
    width: min(100%, 14rem);
    height: min(100%, 14rem);
    object-fit: contain;
    object-position: center;
}

.page-monkey-art-inline {
    display: none;
    justify-content: flex-start;
}

.page-monkey-art-inline img {
    width: clamp(72px, 9vw, 112px);
    height: clamp(72px, 9vw, 112px);
    max-height: none;
}

.branding-logo-preview-image {
    width: 4rem;
    height: 4rem;
    object-fit: contain;
}

.login-verification-scan-image {
    width: 14rem;
    max-width: 100%;
    height: auto;
    padding: 0.85rem;
    border-radius: 1rem;
    background: #f8fafc;
}

.workspace-loading-shell {
    position: fixed;
    inset: 0;
    z-index: 2600;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}

.workspace-loading-backdrop {
    position: absolute;
    inset: 0;
    backdrop-filter: blur(14px);
    background: rgba(7, 17, 31, 0.28);
}

.workspace-loading-panel {
    position: relative;
    width: min(34rem, calc(100vw - 2rem));
    padding: 1.5rem;
    border-radius: 1.5rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: color-mix(in srgb, var(--surface, rgba(255,255,255,.92)) 92%, white 8%);
    box-shadow: 0 22px 48px rgba(15, 23, 42, 0.24);
}

.workspace-loading-visual {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.workspace-loading-monkey {
    width: min(11rem, 45vw);
    height: auto;
}

.workspace-loading-copy {
    text-align: center;
}

.workspace-loading-progress-wrap {
    margin-top: 1rem;
}

.workspace-loading-progress {
    height: 1rem;
    background: rgba(21, 35, 58, 0.12);
}

.research-agent-loading {
    display: flex;
    align-items: center;
    gap: 0.85rem;
}

.research-agent-loading-monkey {
    width: 3.5rem;
    height: 3.5rem;
    object-fit: contain;
    animation: research-agent-think 1.2s ease-in-out infinite;
}

@keyframes research-agent-think {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
}

.monkey-inline-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.monkey-inline-tag-image {
    width: 1.75rem;
    height: 1.75rem;
    object-fit: contain;
}

    /* Override Bootstrap's horizontal transforms */
    .vertical-carousel .carousel-item-next,
    .vertical-carousel .carousel-item-prev,
    .vertical-carousel .carousel-item.active {
        display: block;
    }

        .vertical-carousel .carousel-item-next.carousel-item-start,
        .vertical-carousel .carousel-item-prev.carousel-item-end {
            transform: translateY(-100%);
        }

.vertical-carousel .carousel-item-start:not(.carousel-item-next),
.vertical-carousel .carousel-item-end:not(.carousel-item-prev) {
    transform: translateY(0);
}

/* When sliding backwards */
.vertical-carousel .carousel-item-prev.carousel-item-start {
    transform: translateY(100%);
}
/* ==============================
   BASE
================================*/
html, body {
    min-height: 100%;
    overflow-x: hidden;
}

body {
    margin: 0;
    color: var(--text);
    font-family: var(--display);
    background:
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.14), transparent 22%),
        radial-gradient(circle at top left, rgba(25, 83, 83, 0.1), transparent 24%),
        linear-gradient(180deg, #f7f1e6 0%, #efe5d5 46%, #f6f1e8 100%);
    overflow-x: hidden;
}

.research-agent-launcher {
    position: fixed;
    left: 0.35rem;
    bottom: 4.25rem;
    z-index: 2150;
    display: inline-flex;
    align-items: center;
    gap: 0.34rem;
    padding: 0.42rem 0.58rem;
    width: auto;
    max-width: 9.5rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    border-radius: 1rem;
    background: linear-gradient(135deg, rgba(25, 83, 83, 0.96), rgba(186, 141, 70, 0.94));
    color: #fff9ef;
    box-shadow: 0 18px 40px rgba(21, 35, 58, 0.24);
}

.research-agent-launcher-icon {
    flex: 0 0 1.28rem;
    width: 1.28rem !important;
    height: 1.28rem !important;
    max-width: 1.28rem !important;
    max-height: 1.28rem !important;
    aspect-ratio: 1 / 1;
    object-fit: contain !important;
    filter: drop-shadow(0 8px 12px rgba(21, 35, 58, 0.2));
}

.research-agent-launcher-label {
    font-family: var(--display);
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1;
}

.research-agent-shell {
    position: fixed;
    inset: 0;
    z-index: 2250;
    pointer-events: none;
}

.research-agent-shell.open {
    pointer-events: auto;
}

.research-agent-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(10, 18, 30, 0.28);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.research-agent-shell.open .research-agent-backdrop {
    opacity: 1;
}

.research-agent-panel {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    width: min(48rem, calc(100vw - 1.5rem));
    max-height: min(88vh, 60rem);
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    gap: 1rem;
    padding: 1.15rem;
    border-radius: 1.4rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 251, 245, 0.98);
    box-shadow: 0 24px 60px rgba(21, 35, 58, 0.24);
    transform: translateY(1rem);
    opacity: 0;
    transition: transform 0.2s ease, opacity 0.2s ease;
    overflow-x: hidden;
    overflow-y: auto;
}

.research-agent-shell.open .research-agent-panel {
    transform: translateY(0);
    opacity: 1;
}

.research-agent-head p,
.research-agent-message-body,
.research-agent-evidence-item span,
.research-agent-message-note {
    white-space: pre-wrap;
    line-height: 1.5;
}

.research-agent-head p {
    margin: 0.25rem 0 0;
    color: var(--muted);
    max-width: 42rem;
}

.research-agent-prompts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.research-agent-prompts .btn {
    padding: 0.7rem 0.95rem;
    font-size: 0.86rem;
    line-height: 1.35;
    border-radius: 0.9rem;
    white-space: normal;
    text-align: left;
}

.research-agent-thread {
    display: grid;
    gap: 0.75rem;
    overflow-y: auto;
    padding-right: 0.2rem;
    min-height: 23rem;
    max-height: 44vh;
}

.research-agent-message {
    display: grid;
    gap: 0.45rem;
    padding: 1rem 1.05rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(247, 243, 236, 0.82);
}

.research-agent-message.is-user {
    background: rgba(25, 83, 83, 0.08);
}

.research-agent-message.is-assistant {
    background: rgba(186, 141, 70, 0.1);
}

.research-agent-message-meta {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.8rem;
    font-family: var(--mono);
    font-size: 0.69rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--muted);
}

.research-agent-provider-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.18rem 0.5rem;
    border-radius: 999px;
    background: rgba(25, 83, 83, 0.14);
    color: #195353;
    border: 1px solid rgba(25, 83, 83, 0.18);
    font-size: 0.64rem;
    letter-spacing: 0.05em;
}

.research-agent-evidence-list {
    display: grid;
    gap: 0.45rem;
}

.research-agent-evidence-item {
    display: grid;
    gap: 0.15rem;
    padding: 0.6rem 0.7rem;
    border-radius: 0.8rem;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(21, 35, 58, 0.06);
}

.research-agent-evidence-item strong {
    font-size: 0.82rem;
}

.research-agent-message-note {
    font-size: 0.78rem;
    color: var(--muted);
}

.research-agent-compose {
    display: grid;
    gap: 0.6rem;
}

.research-agent-input {
    min-height: 7.5rem;
    resize: vertical;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 255, 255, 0.82);
}

.research-agent-compose-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.8rem;
}

.research-agent-compose-actions small {
    color: var(--muted);
}

@media (max-width: 768px) {
    .research-agent-launcher {
        left: 0.35rem;
        transform: none;
        bottom: 5.2rem;
        align-items: flex-start;
        text-align: left;
    }

    .research-agent-panel {
        right: 0.5rem;
        left: 0.5rem;
        bottom: 0.5rem;
        width: auto;
        max-height: min(84vh, 50rem);
    }

    .research-agent-thread {
        max-height: 38vh;
    }

    .research-agent-compose-actions {
        flex-direction: column;
        align-items: stretch;
    }
}

.skip-link {
    position: absolute;
    left: 1rem;
    top: -3rem;
    z-index: 2500;
    padding: 0.65rem 0.9rem;
    border-radius: 0.8rem;
    background: #f8fafc;
    color: #07111f;
    font-weight: 700;
    text-decoration: none;
    transition: top 0.2s ease;
}

.skip-link:focus {
    top: 0.75rem;
}

:where(a, button, input, select, textarea, [role="button"], [tabindex]):focus-visible {
    outline: 3px solid rgba(125, 211, 252, 0.95);
    outline-offset: 3px;
}

.trade-tile-card:focus-visible,
tr[role="button"]:focus-visible,
.trade-flyout-panel:focus-visible,
.notification-close:focus-visible {
    box-shadow: 0 0 0 3px rgba(125, 211, 252, 0.28);
}

a {
    color: inherit;
}

/* ==============================
   SHELL / LAYOUT
================================*/
.shell {
    max-width: 1680px;
    margin: 0 auto;
    padding: 0 1.5rem;
    overflow-x: clip;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
}

.shell.shell--news-route {
    max-width: none;
    padding-left: 0.85rem;
    padding-right: 0.85rem;
}

.shell.shell--news-route .shell-content {
    padding-top: var(--shell-header-height);
}

.shell-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 2000;
    border-bottom: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(248, 243, 233, 0.9);
    backdrop-filter: blur(18px);
    box-shadow: 0 0.75rem 2rem rgba(21, 35, 58, 0.08);
}

.shell-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.95rem;
    min-height: var(--shell-header-height);
    padding: 0.35rem 0.9rem;
    width: min(100%, 1680px);
    margin: 0 auto;
}

.brand {
    display: inline-block;
    font-family: var(--display-serif);
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -0.04em;
}

.shell-brandmark {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-width: 0;
    text-decoration: none;
    flex: 1 1 auto;
}

.shell-brand-copy {
    min-width: 0;
}
 
.shell-logo {
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    min-height: 2.75rem;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    object-position: center;
    flex: 0 0 auto;
    border-radius: 999px;
    box-shadow: 0 12px 24px rgba(21, 35, 58, 0.12);
    background: radial-gradient(circle at 32% 24%, rgba(255, 255, 255, 0.98) 0%, rgba(245, 249, 252, 0.96) 58%, rgba(230, 237, 244, 0.92) 100%);
    padding: 0.18rem;
    box-sizing: border-box;
    overflow: hidden;
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.shell-header-panel {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    flex: 1 1 auto;
    min-width: 0;
    overflow: visible;
}

.shell-menu-backdrop,
.shell-mobile-menu-head {
    display: none;
}

.shell-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    flex: 1 1 auto;
    min-width: 0;
    flex-wrap: wrap;
    overflow: visible;
}

.shell-nav-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.3rem 0.6rem;
    min-height: 3rem;
    border-radius: 999px;
    color: var(--muted);
    text-decoration: none;
    font-family: var(--mono);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease;
    border: 1px solid rgba(21, 35, 58, 0.04);
    white-space: nowrap;
}

.shell-nav-link:hover {
    color: var(--text);
    background: rgba(255, 255, 255, 0.62);
    border-color: rgba(186, 141, 70, 0.18);
}

.shell-nav-link.active {
    color: #fff9ef;
    background: linear-gradient(135deg, #195353, #ba8d46);
    border-color: rgba(186, 141, 70, 0.3);
    box-shadow: 0 12px 28px rgba(21, 35, 58, 0.16);
}

.shell-nav-dropdown {
    position: relative;
    z-index: 30;
}

.shell-nav-dropdown-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    background: transparent;
}

.shell-nav-dropdown-toggle::after {
    content: "";
    width: 0.42rem;
    height: 0.42rem;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-1px);
    opacity: 0.8;
}

.shell-nav-dropdown-menu {
    position: absolute;
    top: calc(100% + 0.35rem);
    left: 0;
    min-width: 14rem;
    display: none;
    padding: 0.45rem;
    border-radius: 0.9rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 251, 245, 0.98);
    box-shadow: 0 20px 40px rgba(21, 35, 58, 0.14);
    z-index: 2400;
}

.shell-nav-dropdown-menu.open {
    display: grid;
    gap: 0.3rem;
}

.shell-nav-dropdown-menu .shell-nav-dropdown-menu {
    top: 0;
    left: calc(100% + 0.4rem);
}

.shell-nav-dropdown-link {
    width: 100%;
    text-align: left;
}

.shell-menu-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    gap: 0.45rem;
    width: auto;
    min-width: 5.5rem;
    height: 2.35rem;
    padding: 0 0.8rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.65);
    color: var(--text);
}

.shell-menu-toggle-icon {
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
}

.shell-menu-toggle-icon span {
    width: 0.92rem;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
}

.shell-menu-toggle-label {
    display: none;
    align-items: center;
    font-family: var(--mono);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    line-height: 1;
    text-transform: uppercase;
}
  
.shell-userbar {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    justify-content: flex-end;
    text-align: center;
    flex: 0 0 auto;
    white-space: nowrap;
}

.shell-mobile-account-shell {
    display: none;
}

.shell-mobile-app-sheet {
    display: none;
}

.shell-mobile-bottom-nav {
    display: none !important;
}

.shell-config-menu {
    z-index: 35;
}

.shell-config-toggle {
    min-width: 2.45rem;
    width: 2.45rem;
    height: 2.45rem;
    padding: 0;
    justify-content: center;
    border-radius: 999px;
}

.shell-config-toggle::after {
    display: none;
}

.shell-config-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.1rem;
    height: 1.1rem;
}

.shell-config-icon svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
}

.shell-logout-actions {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.shell-logout-menu {
    margin-left: 0.2rem;
}

.shell-logout-toggle {
    min-width: 5.25rem;
    justify-content: center;
}

.shell-logout-option {
    display: flex;
    justify-content: flex-start;
}

.shell-welcome-toggle {
    min-width: 5rem;
    justify-content: center;
    font-size: 0.72rem;
    gap: 0.2rem;
    white-space: nowrap;
    padding: 0.2rem 0.5rem;
}

.shell-welcome-toggle .shell-welcome-label {
    color: var(--muted);
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.shell-welcome-toggle .shell-welcome-username {
    font-weight: 600;
}

.shell-welcome-menu .shell-nav-dropdown-menu {
    left: auto;
    right: 0;
    min-width: 16rem;
    max-width: calc(100vw - 0.75rem);
    max-height: min(34rem, calc(100dvh - var(--shell-header-height) - 1rem));
    padding: 0.35rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-gutter: stable;
    box-sizing: border-box;
}

.shell-welcome-menu-header {
    display: grid;
    gap: 0.08rem;
    padding: 0.45rem 0.65rem;
}

.shell-welcome-menu-header .shell-welcome-label {
    color: var(--muted);
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.shell-welcome-menu-header .shell-username {
    font-size: 0.82rem;
    font-weight: 600;
}

.shell-nav-dropdown-divider {
    height: 1px;
    background: rgba(21, 35, 58, 0.1);
    margin: 0.2rem 0.35rem;
}

.shell-welcome-menu-section-label {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--muted);
    padding: 0.3rem 0.65rem 0.1rem;
}

.shell-alert-zone {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.shell-alert-zone-header {
    margin-left: auto;
    margin-right: 0.3rem;
    gap: 0.45rem;
}

.shell-header-fix-action {
    display: none;
}

.shell-usercopy {
    display: grid;
    justify-items: center;
    gap: 0.08rem;
    min-width: 7rem;
}

.shell-userlabel,
.shell-username {
    display: block;
}

.shell-userlabel {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.56rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.shell-username {
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.2;
}

.shell-logout {
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    padding: 0.24rem 0.56rem;
    font-size: 0.62rem;
    line-height: 1.1;
    min-height: 2rem;
}

.shell-passkeys-link {
    align-self: center;
    color: var(--muted);
    text-decoration: none;
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.shell-passkeys-link:hover {
    color: var(--brand-a);
}

.shell-content {
}

.shell-content > :first-child {
    margin-top: 0 !important;
}

.paper-page {
    --paper-page-paper: #f6efdf;
    --paper-page-paper-alt: #efe4cc;
    --paper-page-ink: #17120d;
    --paper-page-muted: rgba(23, 18, 13, 0.68);
    --paper-page-rule: rgba(23, 18, 13, 0.14);
    --paper-page-accent: #8b1e13;
    --paper-page-serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, "Times New Roman", serif;
    --paper-page-sans: "Aptos", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    width: min(100%, 1680px);
    margin: 0 auto;
    padding: clamp(1rem, 1.7vw, 1.75rem);
    display: grid;
    gap: clamp(1rem, 1.4vw, 1.5rem);
    color: var(--paper-page-ink);
    overflow-x: clip;
    background:
        radial-gradient(circle at 16% 10%, rgba(255, 255, 255, 0.62), transparent 28%),
        radial-gradient(circle at 84% 9%, rgba(139, 30, 19, 0.05), transparent 22%),
        linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(243, 233, 213, 0.96));
    border: 1px solid rgba(23, 18, 13, 0.06);
    box-shadow: 0 18px 40px rgba(23, 18, 13, 0.06);
}

.paper-page,
.paper-page *,
.paper-page *::before,
.paper-page *::after {
    box-sizing: border-box;
}

.paper-page :where(.row > *, .d-flex > *, .container > *, .container-fluid > *, .modal-dialog, .modal-content) {
    min-width: 0;
}

.paper-page :where(p, li, dt, dd, h1, h2, h3, h4, h5, h6, .table-meta, .text-muted, .badge, .form-text, .news-story__headline, .news-story__summary, .news-story__meta, .news-story__stat-detail, .news-masthead__copy p, .news-masthead__lead-meta span, .news-rail__brief-list li, .news-rail__facts dt, .news-rail__facts dd) {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.paper-page :where(img, svg, video, iframe, canvas) {
    max-width: 100%;
}

.paper-page :where(img, svg, video, iframe) {
    height: auto;
}

.paper-page--shell {
    min-height: calc(100dvh - var(--shell-header-height) - var(--shell-footer-height) - 3rem);
}

.paper-page--public {
    min-height: calc(100dvh - var(--shell-footer-height) - 2rem);
}

.paper-page h1,
.paper-page h2,
.paper-page h3,
.paper-page h4,
.paper-page h5,
.paper-page h6 {
    font-family: var(--paper-page-serif);
    letter-spacing: -0.03em;
    line-height: 1.05;
}

.paper-page p,
.paper-page li,
.paper-page dt,
.paper-page dd,
.paper-page label,
.paper-page small,
.paper-page .table-meta,
.paper-page .text-muted,
.paper-page .eyebrow,
.paper-page .badge,
.paper-page .form-text {
    color: var(--paper-page-muted);
}

.paper-page .eyebrow,
.paper-page .table-meta,
.paper-page .badge,
.paper-page .form-text {
    font-family: var(--paper-page-sans);
}

.paper-page :where(.surface-card, .chart-surface, .metric-card, .security-card, .trade-flyout-highlight, .dashboard-feed-card, .trade-tile-card, .news-story, .news-rail__panel, .card, .list-group-item, .alert, .modal-content) {
    background: linear-gradient(180deg, rgba(255, 255, 252, 0.98), rgba(247, 241, 230, 0.96));
    border-color: var(--paper-page-rule);
    border-top-color: rgba(23, 18, 13, 0.86);
    color: var(--paper-page-ink);
    box-shadow: none;
}

.paper-page :where(.card, .surface-card, .chart-surface, .metric-card, .security-card, .trade-flyout-highlight, .dashboard-feed-card, .trade-tile-card, .news-story, .news-rail__panel, .alert, .modal-content) {
    border-radius: 0.9rem;
}

.paper-page :where(.card-header, .card-footer, .list-group-item, .modal-header, .modal-footer) {
    background: transparent;
    border-color: var(--paper-page-rule);
}

.paper-page :where(.btn) {
    border-radius: 0.6rem;
}

.paper-page :where(.form-control, .form-select, .input-group-text, .form-check-input) {
    border-radius: 0.65rem;
}

.paper-page :where(.nav-link, .dropdown-item) {
    color: var(--paper-page-ink);
}

.paper-page :where(.nav-link.active, .nav-link[aria-current="page"], .dropdown-item.active) {
    color: #fff9ef !important;
    background: linear-gradient(135deg, #195353, #ba8d46) !important;
}

.paper-page :where(.table) {
    color: var(--paper-page-ink);
}

.paper-page :where(.table thead th) {
    font-family: var(--paper-page-sans);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-bottom-color: var(--paper-page-rule);
}

.paper-page :where(.table tbody tr, .table tbody td, .table tbody th) {
    border-color: rgba(23, 18, 13, 0.09);
}

.live-updates-shell {
    display: grid;
    gap: 1rem;
}

.market-indices-header-container {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.8rem;
}

.market-index-card {
    display: grid;
    gap: 0.25rem;
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.72);
}

.market-index-card strong {
    font-size: 1.25rem;
}

.market-index-card small,
.market-index-label {
    color: var(--muted);
}

.market-index-card.tone-positive {
    background: linear-gradient(180deg, rgba(46, 139, 87, 0.14), rgba(255, 255, 255, 0.88));
}

.market-index-card.tone-negative {
    background: linear-gradient(180deg, rgba(194, 91, 91, 0.14), rgba(255, 255, 255, 0.88));
}

.market-index-card.tone-watch {
    background: linear-gradient(180deg, rgba(186, 141, 70, 0.16), rgba(255, 255, 255, 0.88));
}

.market-ticker-live {
    border-radius: 1.2rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 252, 247, 0.94);
    overflow: hidden;
}

.market-ticker-live__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.1rem;
    border-bottom: 1px solid rgba(21, 35, 58, 0.08);
}

.market-ticker-live__header h2 {
    margin: 0;
    font-size: 1.2rem;
}

.market-ticker-live__header p {
    margin: 0.2rem 0 0;
    color: var(--muted);
}

.market-ticker-live__views {
    display: inline-flex;
    gap: 0.3rem;
    padding: 0.25rem;
    border-radius: 999px;
    background: rgba(21, 35, 58, 0.06);
}

.market-ticker-live__view {
    border: 0;
    background: transparent;
    color: var(--muted);
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    font-weight: 600;
}

.market-ticker-live__view.is-selected {
    background: rgba(25, 83, 83, 0.12);
    color: #195353;
}

.market-ticker-live__table {
    display: grid;
}

.market-ticker-live__filters {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-bottom: 0.7rem;
}

.market-ticker-live__filter {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.28rem 0.55rem;
    border-radius: 999px;
    background: rgba(21, 35, 58, 0.04);
    border: 1px solid rgba(21, 35, 58, 0.08);
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--muted);
    cursor: pointer;
}

.market-ticker-live__filter input {
    margin: 0;
    width: 0.82rem;
    height: 0.82rem;
    accent-color: #195353;
}

.market-ticker-live__row {
    display: grid;
    grid-template-columns: minmax(7rem, 0.95fr) minmax(12rem, 1.45fr) repeat(5, minmax(5.5rem, 0.72fr));
    gap: 0.55rem;
    align-items: center;
    padding: 0.45rem 0.8rem;
}

.market-ticker-live__row--header {
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-bottom: 1px solid rgba(21, 35, 58, 0.08);
}

.market-ticker-live__row--header .table-sort {
    width: 100%;
}

.market-ticker-live__row--body {
    font-size: 0.79rem;
    line-height: 1.2;
    border-bottom: 1px solid rgba(21, 35, 58, 0.06);
    cursor: pointer;
    border-radius: 0.7rem;
    transition: background 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.market-ticker-live__row--body:hover {
    background: rgba(25, 83, 83, 0.05);
}

.market-ticker-live__row--body.is-selected {
    background: rgba(25, 83, 83, 0.08);
    box-shadow: inset 3px 0 0 #195353;
}

.market-ticker-live__row--body.market-ticker-live__row--member {
    background: rgba(194, 91, 91, 0.035);
    box-shadow: inset 0 0 0 1px rgba(194, 91, 91, 0.08), 0 0 10px rgba(194, 91, 91, 0.05);
}

.market-ticker-live__row--body.market-ticker-live__row--member:hover {
    background: rgba(194, 91, 91, 0.05);
    box-shadow: inset 0 0 0 1px rgba(194, 91, 91, 0.11), 0 0 14px rgba(194, 91, 91, 0.07);
}

.market-ticker-live__row--body.market-ticker-live__row--targeted {
    background: rgba(186, 141, 70, 0.04);
    box-shadow: inset 0 0 0 1px rgba(186, 141, 70, 0.085), 0 0 10px rgba(186, 141, 70, 0.05);
}

.market-ticker-live__row--body.market-ticker-live__row--targeted:hover {
    background: rgba(186, 141, 70, 0.055);
    box-shadow: inset 0 0 0 1px rgba(186, 141, 70, 0.11), 0 0 14px rgba(186, 141, 70, 0.07);
}

.market-ticker-live__row--body.market-ticker-live__row--portfolio {
    background: rgba(46, 139, 87, 0.035);
    box-shadow: inset 0 0 0 1px rgba(46, 139, 87, 0.08), 0 0 10px rgba(46, 139, 87, 0.05);
}

.market-ticker-live__row--body.market-ticker-live__row--portfolio:hover {
    background: rgba(46, 139, 87, 0.05);
    box-shadow: inset 0 0 0 1px rgba(46, 139, 87, 0.11), 0 0 14px rgba(46, 139, 87, 0.07);
}

.market-ticker-live__row--body:last-child {
    border-bottom: 0;
}

.market-ticker-live__company,
.market-ticker-live__range {
    display: grid;
    gap: 0.15rem;
}

.market-ticker-live__symbol {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.35rem;
    align-items: center;
}

.market-ticker-live__company strong {
    font-size: 0.83rem;
    line-height: 1.1;
}

.market-ticker-live__company--compact {
    gap: 0.05rem;
}

.market-ticker-live__company--compact strong {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.market-ticker-live__company small,
.market-ticker-live__range small {
    font-size: 0.74rem;
    color: var(--muted);
}

.market-ticker-live__ml {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
}

.market-ticker-live__ml-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.16rem 0.55rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 700;
    color: #195353;
    background: rgba(25, 83, 83, 0.12);
    border: 1px solid rgba(25, 83, 83, 0.16);
}

.market-ticker-live__ml-move,
.market-ticker-live__ml-confidence {
    font-size: 0.74rem;
    font-weight: 600;
}

.market-ticker-live__ml-summary {
    display: block;
    font-size: 0.72rem;
    line-height: 1.35;
}

.market-ticker-live__symbol .market-ticker-live__signals {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.18rem;
    min-width: 0;
}

.market-ticker-live__signal {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.08rem 0.32rem;
    border-radius: 999px;
    font-size: 0.58rem;
    line-height: 1.05;
    font-weight: 700;
    border: 1px solid transparent;
    white-space: nowrap;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.market-ticker-live__signal.tone-watch {
    color: #7a561f;
    background: rgba(186, 141, 70, 0.16);
    border-color: rgba(186, 141, 70, 0.2);
}

.market-ticker-live__signal.tone-portfolio {
    color: #195353;
    background: rgba(25, 83, 83, 0.14);
    border-color: rgba(25, 83, 83, 0.18);
}

.market-ticker-live__signal.tone-buy {
    color: #20633f;
    background: rgba(46, 139, 87, 0.14);
    border-color: rgba(46, 139, 87, 0.18);
}

.market-ticker-live__signal.tone-sell {
    color: #8f3434;
    background: rgba(194, 91, 91, 0.14);
    border-color: rgba(194, 91, 91, 0.18);
}

.market-ticker-live__signal.tone-special {
    color: #6b4cb2;
    background: rgba(107, 76, 178, 0.12);
    border-color: rgba(107, 76, 178, 0.16);
}

.market-ticker-live__signal.tone-neutral {
    color: var(--muted);
    background: rgba(21, 35, 58, 0.08);
    border-color: rgba(21, 35, 58, 0.12);
}

.market-ticker-live__range-values {
    display: flex;
    justify-content: space-between;
    font-family: var(--mono);
    font-size: 0.72rem;
}

.market-ticker-live__range-track {
    position: relative;
    height: 0.42rem;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(194, 91, 91, 0.18), rgba(186, 141, 70, 0.18), rgba(46, 139, 87, 0.18));
}

.market-ticker-live__range-marker {
    position: absolute;
    top: 50%;
    width: 0.9rem;
    height: 0.9rem;
    border-radius: 999px;
    background: #195353;
    border: 2px solid #fff;
    box-shadow: 0 3px 10px rgba(21, 35, 58, 0.18);
    transform: translate(-50%, -50%);
}

.market-ticker-live__detail-symbol {
    color: var(--muted);
    font-size: 0.72rem;
    letter-spacing: 0.08em;
}

.market-ticker-live__flyout-shell {
    position: fixed;
    inset: 0;
    z-index: 2200;
    display: flex;
    justify-content: flex-end;
}

.market-ticker-live__flyout-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(9, 16, 29, 0.42);
    backdrop-filter: blur(4px);
}

.market-ticker-live__flyout {
    position: relative;
    z-index: 1;
    width: min(38rem, 100vw);
    height: 100%;
    overflow-y: auto;
    display: grid;
    align-content: start;
    gap: 1rem;
    padding: 1.25rem 1.25rem 1.5rem;
    background: linear-gradient(180deg, rgba(255, 252, 247, 0.99), rgba(247, 242, 234, 0.98));
    box-shadow: -18px 0 42px rgba(21, 35, 58, 0.2);
    border-left: 1px solid rgba(21, 35, 58, 0.08);
}

.market-ticker-live__flyout-topbar {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: start;
    position: relative;
    padding-right: 3.25rem;
}

.market-ticker-live__flyout-topbar h3 {
    margin: 0.15rem 0 0;
    font-size: 1.05rem;
}

.market-ticker-live__flyout-close {
    appearance: none;
    cursor: pointer;
}

.market-ticker-live__detail-price {
    display: grid;
    gap: 0.2rem;
}

.market-ticker-live__detail-price strong {
    font-size: 1.2rem;
}

.market-ticker-live__detail-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.market-ticker-live__detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
}

.market-ticker-live__detail-label {
    display: block;
    margin-bottom: 0.2rem;
    color: var(--muted);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.market-ticker-live__range--detail {
    gap: 0.45rem;
}

.market-ticker-live__detail-section {
    display: grid;
    gap: 0.35rem;
    padding-top: 0.25rem;
    border-top: 1px solid rgba(21, 35, 58, 0.08);
}

.market-ticker-live__detail-section p,
.market-ticker-live__detail-copy {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.45;
    color: var(--muted);
}

.live-updates-empty {
    padding: 1rem 1.1rem 1.25rem;
}

@media (max-width: 1100px) {
    .market-indices-header-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .market-ticker-live__row {
        grid-template-columns: minmax(6rem, 0.85fr) minmax(10rem, 1.3fr) repeat(5, minmax(5rem, 0.68fr));
    }
}

@media (max-width: 768px) {
    .market-indices-header-container {
        grid-template-columns: 1fr;
    }

    .market-ticker-live__header {
        flex-direction: column;
    }

    .market-ticker-live__row {
        grid-template-columns: 1fr;
        gap: 0.45rem;
    }

    .market-ticker-live__row--header {
        display: none;
    }

    .market-ticker-live__row--body {
        padding: 1rem;
    }

    .market-ticker-live__detail-header,
    .market-ticker-live__detail-grid {
        grid-template-columns: 1fr;
        display: grid;
    }

    .market-ticker-live__flyout {
        width: 100vw;
        padding: 1rem 1rem 1.35rem;
    }
}

.security-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.security-card {
    display: grid;
    gap: 1rem;
    padding: 1.15rem 1.2rem;
    min-height: 12rem;
    border-radius: 1.25rem;
    border: 1px solid rgba(148, 163, 184, 0.18);
    background:
        radial-gradient(circle at top right, rgba(232, 69, 102, 0.18), transparent 42%),
        linear-gradient(180deg, rgba(18, 26, 41, 0.96), rgba(10, 16, 28, 0.98));
    text-decoration: none;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

#security-alert-delivery {
    scroll-margin-top: calc(var(--shell-header-height) + 1rem);
}

#alert-delivery-by-area {
    scroll-margin-top: calc(var(--shell-header-height) + 1rem);
}

.security-card:hover {
    transform: translateY(-1px);
    border-color: rgba(96, 165, 250, 0.3);
    box-shadow: 0 18px 32px rgba(2, 8, 23, 0.24);
}

.security-card-copy {
    display: grid;
    gap: 0.45rem;
}

.security-card-copy h3 {
    margin: 0;
    font-size: 1.05rem;
}

.security-card-copy p {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 0.9rem;
    line-height: 1.55;
}

.security-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.security-actions .btn {
    pointer-events: none;
}

.notification-stack {
    position: fixed;
    top: calc(var(--shell-header-height) + 1rem);
    right: 1rem;
    z-index: 2100;
    display: grid;
    gap: 0.75rem;
    width: min(24rem, calc(100vw - 2rem));
}

.notification-toast {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: start;
    padding: 0.9rem 1rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96));
    backdrop-filter: blur(20px);
    box-shadow: 0 18px 40px rgba(21, 35, 58, 0.1);
    border-left-width: 6px;
    overflow: hidden;
    color: var(--text);
}

.notification-copy {
    min-width: 0;
}

.notification-tag {
    display: inline-block;
    margin-bottom: 0.35rem;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    font-family: var(--mono);
    font-size: 0.62rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #3b4a5c;
    background: rgba(238, 244, 249, 0.95);
    border: 1px solid rgba(120, 144, 168, 0.24);
}

.notification-copy strong {
    display: block;
    margin-bottom: 0.2rem;
    font-size: 0.95rem;
    letter-spacing: -0.02em;
}

.notification-copy p {
    margin: 0;
    color: color-mix(in srgb, var(--text) 68%, var(--muted));
    font-size: 0.8rem;
    line-height: 1.45;
}

.notification-member-strip {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.42rem;
    padding: 0.24rem 0.55rem 0.24rem 0.22rem;
    border-radius: 999px;
    background: rgba(243, 247, 250, 0.96);
    border: 1px solid rgba(148, 163, 184, 0.22);
    max-width: 100%;
}

.notification-member-party-icon {
    width: 1.08rem;
    height: 1.08rem;
    object-fit: contain;
    border-radius: 999px;
    flex: 0 0 auto;
}

.notification-member-name {
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: #203245;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.notification-member-party {
    padding: 0.15rem 0.42rem;
    border-radius: 999px;
    background: rgba(224, 232, 240, 0.65);
    font-family: var(--mono);
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #496072;
}

.notification-member-signal {
    width: 0.42rem;
    height: 0.42rem;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(250, 204, 21, 1) 0%, rgba(234, 179, 8, 0.9) 55%, rgba(234, 179, 8, 0) 100%);
    box-shadow: 0 0 10px rgba(250, 204, 21, 0.7), 0 0 22px rgba(245, 158, 11, 0.4);
    animation: member-activity-signal-pulse 1.6s ease-in-out infinite;
}

.validation-list {
    padding-left: 1rem;
}

.notification-close {
    cursor: pointer;
}

.notification-info {
    border-left: 4px solid var(--brand-b);
}

.notification-success {
    border-left: 4px solid var(--success);
}

.notification-warning {
    border-left: 4px solid var(--brand-c);
}

.notification-alert {
    border-left: 4px solid var(--danger);
}

.notification-member {
    border-color: rgba(59, 130, 246, 0.22);
    border-left-color: #60a5fa;
    background: linear-gradient(135deg, rgba(219, 234, 254, 0.96), rgba(248, 250, 252, 0.98) 74%);
}

.notification-member .notification-tag {
    background: rgba(191, 219, 254, 0.9);
}

.notification-special-member {
    border-color: rgba(245, 158, 11, 0.24);
    border-left-color: #f59e0b;
    background: linear-gradient(135deg, rgba(254, 243, 199, 0.98), rgba(255, 251, 235, 0.98) 74%);
    box-shadow: 0 16px 36px rgba(180, 83, 9, 0.1);
}

.notification-special-member .notification-tag {
    background: rgba(253, 230, 138, 0.86);
}

.notification-whale {
    border-color: rgba(234, 179, 8, 0.24);
    border-left-color: #eab308;
    background: linear-gradient(135deg, rgba(254, 249, 195, 0.98), rgba(255, 251, 235, 0.98) 74%);
}

.notification-whale .notification-tag {
    background: rgba(253, 224, 71, 0.82);
}

.notification-portfolio {
    border-color: rgba(45, 212, 191, 0.22);
    border-left-color: #14b8a6;
    background: linear-gradient(135deg, rgba(209, 250, 229, 0.98), rgba(240, 253, 250, 0.98) 74%);
}

.notification-portfolio .notification-tag {
    background: rgba(153, 246, 228, 0.76);
}

.notification-portfolio-pulse {
    border-color: rgba(16, 185, 129, 0.22);
    border-left-color: #10b981;
    background: linear-gradient(135deg, rgba(220, 252, 231, 0.98), rgba(240, 253, 244, 0.98) 74%);
    box-shadow: 0 16px 36px rgba(16, 185, 129, 0.08);
}

.notification-portfolio-pulse .notification-tag {
    background: rgba(167, 243, 208, 0.78);
}

.notification-gainer {
    border-color: rgba(74, 222, 128, 0.24);
    border-left-color: #4ade80;
    background: linear-gradient(135deg, rgba(220, 252, 231, 0.98), rgba(248, 250, 252, 0.98) 74%);
}

.notification-gainer .notification-tag {
    background: rgba(187, 247, 208, 0.82);
}

.notification-loser {
    border-color: rgba(248, 113, 113, 0.24);
    border-left-color: #f87171;
    background: linear-gradient(135deg, rgba(254, 226, 226, 0.98), rgba(248, 250, 252, 0.98) 74%);
}

.notification-loser .notification-tag {
    background: rgba(254, 202, 202, 0.86);
}

.shell-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    border-top: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(248, 243, 233, 0.96);
    backdrop-filter: blur(18px);
    z-index: 2000;
    transform: translateZ(0);
    will-change: transform;
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

.shell-footer-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.45rem 0.8rem;
    min-height: var(--shell-footer-height);
    padding: 0.28rem 0.9rem;
    width: min(100%, 1680px);
    margin: 0 auto;
}

.shell-footer-copy,
.shell-footer-links {
    color: var(--muted);
    font-size: 0.62rem;
}

.shell-footer-copy {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.3rem 0.55rem;
}

.shell-footer-version {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.14rem 0.44rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    background: rgba(15, 23, 42, 0.04);
    color: color-mix(in srgb, var(--text) 74%, var(--muted) 26%);
    font-family: var(--mono);
    font-size: 0.55rem;
    line-height: 1.1;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.shell-footer-links {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-left: auto;
    text-align: right;
}

.shell-footer-social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.footer-social-icon {
    width: 1.4rem;
    height: 1.4rem;
    min-width: 1.4rem;
    min-height: 1.4rem;
    object-fit: contain;
    display: block;
}

.eyebrow {
    color: #ba8d46;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.74rem;
    margin-bottom: 0.45rem;
}

.login-screen {
    min-height: calc(100vh - var(--shell-header-height) - var(--shell-footer-height) - 2rem);
    display: grid;
    place-items: center;
    padding: 2rem 1rem 3rem;
}

.login-card {
    width: min(28rem, 100%);
    padding: 1.5rem;
    border-radius: 1.4rem;
    background: linear-gradient(180deg, rgba(255, 251, 245, 0.98), rgba(243, 234, 219, 0.96));
    border: 1px solid rgba(21, 35, 58, 0.1);
    box-shadow: 0 18px 48px rgba(21, 35, 58, 0.1);
}

.public-shell.theme-apple .login-card {
    background: rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 20px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.06);
}

.public-shell.theme-apple .login-mode-tab {
    background: rgba(0, 0, 0, 0.04);
    border: 1px solid rgba(0, 0, 0, 0.06);
    color: #1D1D1F;
    border-radius: 8px;
    font-weight: 600;
}

.public-shell.theme-apple .login-mode-tab:hover,
.public-shell.theme-apple .login-mode-tab:focus-visible {
    background: rgba(0, 0, 0, 0.08);
    border-color: rgba(0, 0, 0, 0.12);
    box-shadow: none;
}

.public-shell.theme-apple .login-mode-tab.is-active {
    background: #0071E3;
    border-color: #0071E3;
    color: #fff;
    box-shadow: 0 4px 12px rgba(0, 113, 227, 0.3);
}

.public-shell.theme-apple .btn-gradient {
    background: #0071E3;
    color: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 113, 227, 0.3);
}

.public-shell.theme-apple .btn-gradient:hover,
.public-shell.theme-apple .btn-gradient:focus {
    background: #0077ED;
    box-shadow: 0 6px 16px rgba(0, 113, 227, 0.35);
}

.public-shell.theme-apple .btn-outline-light {
    border-radius: 12px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    color: #0071E3;
    background: transparent;
}

.public-shell.theme-apple .btn-outline-light:hover,
.public-shell.theme-apple .btn-outline-light:focus-visible {
    background: rgba(0, 113, 227, 0.06);
    border-color: #0071E3;
}

.public-shell.theme-apple .login-inline-links a {
    color: #0071E3;
    font-weight: 600;
}

.public-shell.theme-apple .login-error {
    border-radius: 12px;
    background: rgba(255, 59, 48, 0.08);
    border: 1px solid rgba(255, 59, 48, 0.2);
    color: #FF3B30;
}

.public-shell.theme-apple .login-success {
    border-radius: 12px;
    background: rgba(52, 199, 89, 0.08);
    border: 1px solid rgba(52, 199, 89, 0.2);
    color: #34C759;
}

.public-shell.theme-apple .form-control {
    border-radius: 10px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

.public-shell.theme-apple .form-control:focus {
    border-color: #0071E3;
    box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.15);
    outline: none;
}

.public-shell.theme-apple .login-passkey-head {
    color: #1D1D1F;
}

    .public-shell.theme-apple .login-passkey-badge {
        background: rgba(0, 113, 227, 0.1);
        color: #0071E3;
        border-radius: 6px;
        font-weight: 600;
    }

    .theme-apple .shell-mobile-sheet-handle-bar {
        background: rgba(0, 0, 0, 0.14);
    }

.public-shell.theme-apple .login-qr-panel {
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 16px;
}

.public-shell.theme-apple .login-passkey {
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 16px;
    padding: 1rem;
    margin-top: 1.25rem;
}

.public-shell.theme-apple .login-passkey-panel {
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 16px;
    padding: 1rem;
}

.login-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
    width: min(38rem, 100%);
}

.login-card-qr,
.login-card-mobile {
    width: 100%;
}

.login-card h1 {
    margin: 0.25rem 0 0.6rem;
}

.login-card h2 {
    margin: 0.25rem 0 0.6rem;
    font-size: 1.7rem;
}

.login-card h1,
.login-card h2,
.passkey-name {
    color: var(--text);
    font-family: var(--display-serif);
}

.login-copy {
    color: var(--muted);
    margin-bottom: 1rem;
}

.login-form {
    display: grid;
}

.login-error {
    margin-bottom: 1rem;
    padding: 0.75rem 0.9rem;
    border-radius: 0.9rem;
    color: #fecaca;
    background: rgba(127, 29, 29, 0.32);
    border: 1px solid rgba(248, 113, 113, 0.24);
}

.login-success {
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    color: #d1fae5;
    background: rgba(6, 95, 70, 0.3);
    border: 1px solid rgba(74, 222, 128, 0.24);
}

.login-qr-panel {
    display: grid;
    gap: 0.9rem;
    justify-items: center;
    padding: 1rem;
    border-radius: 1.1rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 255, 255, 0.62);
}

.login-qr-placeholder {
    min-height: 18rem;
    display: grid;
    place-items: center;
    width: 100%;
    color: var(--muted);
    text-align: center;
    padding: 1rem;
}

.login-qr-image {
    width: min(18rem, 100%);
    aspect-ratio: 1;
    padding: 0.8rem;
    border-radius: 1rem;
    background: #f8fafc;
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.18);
}

.login-qr-status {
    text-align: center;
    color: var(--muted);
    font-size: 0.92rem;
    line-height: 1.5;
}

.login-qr-link {
    color: var(--brand-a);
    font-family: var(--mono);
    font-size: 0.82rem;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.login-qr-link:hover {
    color: var(--text);
}

.invite-summary {
    margin-top: 1rem;
}

.invite-row-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.invite-qr-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.9rem;
    padding: 0.3rem;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(21, 35, 58, 0.1);
}

.invite-qr-thumb {
    width: 4.25rem;
    height: 4.25rem;
    border-radius: 0.7rem;
    display: block;
    background: #f8fafc;
}

.login-warning {
    margin-bottom: 1rem;
    padding: 0.75rem 0.9rem;
    border-radius: 0.9rem;
    color: #fde68a;
    background: rgba(120, 53, 15, 0.32);
    border: 1px solid rgba(245, 158, 11, 0.24);
}

.login-passkey {
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(21, 35, 58, 0.1);
}

.login-passkey-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.65rem;
    font-size: 0.95rem;
    font-weight: 600;
}

.login-passkey-badge {
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    background: rgba(56, 189, 248, 0.14);
    color: #7dd3fc;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.login-passkey-note {
    margin-top: 0.75rem;
    color: var(--muted);
    font-size: 0.84rem;
    line-height: 1.5;
}

.passkey-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    width: min(68rem, 100%);
}

.passkey-card {
    width: 100%;
}

.passkey-register {
    margin-top: 1.1rem;
}

.passkey-empty {
    min-height: 14rem;
    display: grid;
    place-items: center;
    padding: 1rem;
    border-radius: 1rem;
    border: 1px dashed rgba(148, 163, 184, 0.18);
    color: var(--muted);
    text-align: center;
}

.shell-alert-bell {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    min-height: 2.75rem;
    padding: 0;
    border-radius: 0.9rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 255, 255, 0.78);
    color: var(--text);
    appearance: none;
    text-decoration: none;
    cursor: pointer;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

.shell-alert-bell:hover {
    transform: translateY(-1px);
    border-color: rgba(186, 141, 70, 0.28);
    box-shadow: 0 10px 22px rgba(21, 35, 58, 0.12);
}

.shell-alert-bell:disabled {
    cursor: default;
    opacity: 0.48;
    box-shadow: none;
}

.shell-alert-bell:disabled:hover {
    transform: none;
    border-color: rgba(21, 35, 58, 0.12);
    box-shadow: none;
}

.shell-alert-bell-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.15rem;
    height: 1.15rem;
}

.shell-alert-bell-icon svg {
    width: 100%;
    height: 100%;
    stroke: currentColor;
    stroke-width: 1.8;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: 0.96;
}

.shell-alert-bell-badge {
    position: absolute;
    top: -0.2rem;
    right: -0.18rem;
    min-width: 1.25rem;
    height: 1.25rem;
    padding: 0 0.24rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f59e0b, #ef4444);
    color: #fff;
    font-size: 0.65rem;
    font-weight: 900;
    letter-spacing: 0;
    box-shadow: 0 0 0 2px rgba(7, 17, 31, 0.9);
}

.shell-header-fix-action .vtx-fix__launcher {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    min-width: 2.75rem !important;
    min-height: 2.75rem !important;
    max-width: 2.75rem !important;
    max-height: 2.75rem !important;
    padding: 0 !important;
    border-radius: 0.9rem !important;
    border: 1px solid rgba(21, 35, 58, 0.12) !important;
    background: rgba(255, 255, 255, 0.78) !important;
    color: #08b7e8 !important;
    box-shadow: none !important;
    touch-action: manipulation;
}

.shell-header-fix-action .vtx-fix__launcher:hover,
.shell-header-fix-action .vtx-fix__launcher:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(14, 165, 233, 0.34) !important;
    box-shadow: 0 10px 22px rgba(21, 35, 58, 0.12) !important;
}

.shell-header-fix-action .vtx-fix__launcher-icon {
    width: 1.15rem !important;
    height: 1.15rem !important;
    min-width: 1.15rem !important;
    min-height: 1.15rem !important;
    max-width: 1.15rem !important;
    max-height: 1.15rem !important;
    fill: currentColor !important;
}

.shell-sync-bell-badge {
    width: 1.25rem;
    height: 1.25rem;
    padding: 0;
    background: linear-gradient(135deg, #059669, #047857);
    color: #f0fdf4;
    box-shadow: 0 0 0 2px rgba(7, 17, 31, 0.7);
    font-size: 0.75rem;
}

.shell-alert-bell.is-active {
    border-color: rgba(248, 113, 113, 0.62);
    background: linear-gradient(135deg, rgba(69, 10, 10, 0.92), rgba(127, 29, 29, 0.9), rgba(31, 41, 55, 0.94));
    color: #ffe4e6;
    box-shadow: 0 0 16px rgba(248, 113, 113, 0.34);
    animation: shell-alert-bell-flash 1.05s ease-in-out infinite;
}

@keyframes shell-alert-bell-flash {
    0%, 100% {
        transform: translateY(0);
        box-shadow: 0 0 0 rgba(248, 113, 113, 0.14);
    }

    50% {
        transform: translateY(-1px) scale(1.03);
        box-shadow: 0 0 24px rgba(248, 113, 113, 0.52);
    }
}

.shell-sync-bell.is-active {
    border-color: rgba(239, 68, 68, 0.7);
    background: linear-gradient(135deg, rgba(127, 29, 29, 0.96), rgba(185, 28, 28, 0.92), rgba(69, 10, 10, 0.96));
    color: #fff1f2;
    box-shadow: 0 0 18px rgba(239, 68, 68, 0.44);
    animation: shell-alert-bell-flash 1.05s ease-in-out infinite;
}

.shell-sync-bell.is-busy {
    border-color: rgba(74, 222, 128, 0.88);
    background:
        radial-gradient(circle at center, rgba(6, 78, 59, 0.98) 0 43%, rgba(7, 89, 67, 0.96) 43% 59%, rgba(22, 101, 52, 0.9) 59% 77%, rgba(34, 197, 94, 0.24) 77% 100%);
    color: rgba(224, 255, 236, 0.92);
    box-shadow:
        inset 0 0 0 1px rgba(167, 243, 208, 0.18),
        0 0 0 1px rgba(74, 222, 128, 0.44),
        0 0 20px rgba(34, 197, 94, 0.36),
        0 0 34px rgba(74, 222, 128, 0.28);
    animation: shell-sync-bell-spin-glow 1.1s ease-in-out infinite;
}

.shell-sync-bell.is-busy .shell-alert-bell-icon {
    width: 1.08rem;
    height: 1.08rem;
    border-radius: 999px;
    background: rgba(74, 222, 128, 0.88);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 0 0 1px rgba(167, 243, 208, 0.18);
    color: rgba(224, 255, 236, 0.92);
}

.shell-sync-bell.is-busy .shell-sync-bell-spinner {
    width: 0.68rem;
    height: 0.68rem;
    border-radius: 999px;
    border: 2px solid rgba(224, 255, 236, 0.72);
    border-top-color: rgba(224, 255, 236, 0.2);
    border-right-color: rgba(224, 255, 236, 0.2);
    animation: shell-sync-bell-rotate 0.95s linear infinite;
    box-sizing: border-box;
    display: block;
}

.btn.is-busy-state,
.btn.is-busy-state:disabled {
    border-color: rgba(74, 222, 128, 0.88);
    background:
        radial-gradient(circle at center, rgba(6, 78, 59, 0.98) 0 46%, rgba(7, 89, 67, 0.96) 46% 60%, rgba(22, 101, 52, 0.88) 60% 78%, rgba(34, 197, 94, 0.18) 78% 100%);
    color: #86efac;
    box-shadow:
        inset 0 0 0 1px rgba(167, 243, 208, 0.12),
        0 0 0 1px rgba(74, 222, 128, 0.36),
        0 0 18px rgba(34, 197, 94, 0.28),
        0 0 28px rgba(74, 222, 128, 0.2);
    opacity: 1;
}

.btn.is-busy-state .action-image-icon,
.btn.is-busy-state .sprite-action-icon,
.btn.is-busy-state svg,
.btn.is-busy-state use {
    color: #86efac;
    fill: currentColor;
    animation: shell-sync-bell-rotate 0.95s linear infinite;
    transform-origin: center;
    shape-rendering: geometricPrecision;
}

.shell-sync-bell.is-busy:disabled {
    opacity: 1;
    cursor: progress;
}

.shell-sync-bell:not(.is-active):not(:disabled) {
    background: rgba(255, 255, 255, 0.82);
}

@keyframes shell-sync-bell-spin-glow {
    0%,
    100% {
        box-shadow:
            inset 0 0 0 1px rgba(167, 243, 208, 0.14),
            0 0 0 1px rgba(74, 222, 128, 0.4),
            0 0 18px rgba(34, 197, 94, 0.28),
            0 0 30px rgba(74, 222, 128, 0.18);
    }

    50% {
        box-shadow:
            inset 0 0 0 1px rgba(167, 243, 208, 0.22),
            0 0 0 1px rgba(74, 222, 128, 0.64),
            0 0 28px rgba(34, 197, 94, 0.46),
            0 0 42px rgba(74, 222, 128, 0.32);
    }
}

@keyframes shell-sync-bell-rotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.passkey-list {
    display: grid;
    gap: 0.85rem;
}

.passkey-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 255, 255, 0.68);
}

.passkey-copy {
    min-width: 0;
}

.passkey-name {
    font-size: 1rem;
    font-weight: 600;
}

.passkey-meta {
    margin-top: 0.25rem;
    color: var(--muted);
    font-size: 0.82rem;
    line-height: 1.5;
}

/* ==============================
   HERO PANEL
================================*/
.hero-panel {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 1.25rem;
    padding: 2rem;
    margin-bottom: 1.5rem;
    border-radius: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: linear-gradient(135deg, rgba(79, 209, 197, 0.14), rgba(96, 165, 250, 0.14)), rgba(8, 14, 26, 0.75);
    box-shadow: 0 30px 80px rgba(2, 8, 23, 0.35);
}

    .hero-panel h1 {
        font-size: clamp(2.3rem, 4vw, 4rem);
        line-height: 1;
        letter-spacing: -0.05em;
        max-width: 11ch;
        margin-bottom: 1rem;
    }

.hero-metrics {
    display: grid;
    gap: 1rem;
}

.hero-text,
.section-head p,
.table-meta,
.stat-sub,
.empty-state {
    color: var(--muted);
}

.chart-card-head,
.chart-card-head h3,
.chart-surface,
.market-canvas-wrap,
.chart-canvas-wrap,
.rich-table,
.rich-table thead th,
.rich-table tbody td,
.rich-table .mono {
    color: var(--text);
}

.table-meta,
.trade-event-meta,
.trade-flyout-header p,
.trade-flyout-highlight-meta,
.trade-tile-company,
.trade-kpi-label,
.member-tile-meta,
.member-tile-filing-meta {
    color: var(--muted) !important;
}

.hero-text {
    font-size: 0.95rem !important;
    line-height: 1.1 !important;
}

/* ==============================
   MARKET BOARD
================================*/
.market-board {
    padding: 1.5rem;
    background:
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.12), transparent 24%),
        linear-gradient(180deg, rgba(255, 251, 245, 0.96), rgba(243, 234, 219, 0.92));
}

.market-board-body {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    align-items: start;
}

.market-board-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
    width: min(100%, 38rem);
}

.global-ml-panel {
    display: grid;
    gap: 1rem;
}

.global-ml-head {
    align-items: start;
}

.global-ml-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 0.85rem;
}

.market-kpi-title {
    color: var(--muted);
    font-size: 0.74rem;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-family: var(--mono);
    margin-bottom: 0.15rem !important;
}

.compact-metric {
    padding: 1rem 1.1rem;
}

    .compact-metric strong {
        font-size: 1.45rem;
    }

/* ==============================
   CANVAS / CHART WRAPS
================================*/
.market-canvas-wrap,
.chart-canvas-wrap {
    position: relative;
    width: 100%;
    min-height: 19rem;
    height: 19rem;
    padding: 0.75rem;
    overflow: hidden;
    border-radius: 1.35rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: linear-gradient(180deg, rgba(255, 251, 245, 0.76), rgba(244, 236, 223, 0.94));
}

.market-canvas-wrap {
    min-height: 8.5rem;
    max-height: 8.5rem;
}

.chart-surface .chart-canvas-wrap {
    min-height: 20rem;
    height: 20rem;
}

.chart-canvas {
    display: block;
    width: 100%;
    height: 100%;
}

.chart-canvas-lg {
    min-height: 8.5rem;
    max-height: 8.5rem;
}

.compact-chart-wrap {
    min-height: 14rem;
    height: 14rem;
}

/* ==============================
   CARDS & SURFACES
================================*/
.metric-card,
.surface-card {
    border: 1px solid var(--line);
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.1), transparent 24%),
        linear-gradient(180deg, rgba(255, 252, 247, 0.98), rgba(245, 238, 226, 0.95));
    border-radius: 1.5rem;
    padding: 1.35rem;
    box-shadow: var(--surface-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

    .metric-card span,
    .stat-label {
        display: block;
        color: var(--muted);
        font-size: 0.8rem;
        text-transform: uppercase;
        letter-spacing: 0.12em;
    }

    .metric-card strong,
    .stat-value {
        display: block;
        margin: 0.35rem 0;
        font-family: var(--display-serif);
        font-size: 2rem;
        line-height: 1;
        letter-spacing: -0.04em;
    }

    .metric-card small {
        color: rgba(237, 243, 255, 0.72);
    }

.stat-grid .surface-card {
    height: 100%;
}

.stat-surface {
    position: relative;
    overflow: hidden;
}

    .stat-surface::after {
        content: "";
        position: absolute;
        inset: auto -20% -35% auto;
        width: 8rem;
        height: 8rem;
        border-radius: 50%;
        background: radial-gradient(circle, rgba(96, 165, 250, 0.2), transparent 70%);
    }

/* ==============================
   SECTION HEAD
================================*/
.section-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1rem;
}

.section-head h2 {
        margin: 0;
        font-family: var(--display-serif);
        font-size: 1.35rem;
        font-weight: 700;
        line-height: 1.05;
        letter-spacing: -0.03em;
    }

.dashboard-search-card,
.chart-surface {
    height: 100%;
    overflow: hidden;
}

.dashboard-search-form {
    display: grid;
    gap: 0.8rem;
    margin-bottom: 1rem;
}

.dashboard-search-input {
    align-items: stretch;
}

.dashboard-search-actions {
    display: flex;
    justify-content: flex-end;
}

.dashboard-head-actions {
    display: flex;
    gap: 0.55rem;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}

.bulk-import-textarea {
    min-height: 13rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
    resize: vertical;
}

.dashboard-range-picker {
    display: flex;
    gap: 0.35rem;
    flex-wrap: wrap;
}

.sticky-filter-toolbar {
    position: sticky;
    top: 4.85rem;
    z-index: 24;
    padding: 0.8rem 0.95rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.985);
    border: 1px solid rgba(15, 23, 42, 0.12);
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.14);
    backdrop-filter: blur(14px);
}

.sticky-filter-toolbar .form-label,
.sticky-filter-toolbar .table-meta,
.sticky-filter-toolbar .btn,
.sticky-filter-toolbar select,
.sticky-filter-toolbar option {
    color: #000000 !important;
}

.sticky-filter-toolbar .form-select,
.sticky-filter-toolbar .form-control,
.sticky-filter-toolbar .form-select option,
.sticky-filter-toolbar .form-control::placeholder {
    color: #000000 !important;
}

.toolbar-filter-group {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-width: fit-content;
}

.dashboard-search-empty {
    padding-top: 1rem;
}

.dashboard-search-results tbody td:first-child,
.dashboard-feed-table tbody td:last-child {
    white-space: nowrap;
}

.dashboard-feed-panel-shell {
    display: grid;
    gap: 0.8rem;
    min-width: 0;
    margin-top: 1rem;
    padding: clamp(0.9rem, 1.5vw, 1.15rem);
    border: 1px solid rgba(21, 35, 58, 0.08);
    border-radius: 1.65rem;
    background:
        radial-gradient(circle at top left, rgba(186, 141, 70, 0.12), transparent 24%),
        radial-gradient(circle at top right, rgba(15, 143, 135, 0.1), transparent 22%),
        linear-gradient(180deg, rgba(255, 252, 247, 0.86), rgba(243, 234, 219, 0.94));
    box-shadow: 0 1.2rem 3rem rgba(21, 35, 58, 0.08);
}

.dashboard-feed-sortbar {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.dashboard-feed-sortbar-label {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.6rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.dashboard-feed-sortbar-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
    min-width: 0;
}

.dashboard-feed-sortbar .table-sort {
    min-height: 2rem;
    padding: 0.2rem 0.6rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.66);
    font-family: var(--mono);
    font-size: 0.68rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.dashboard-feed-sortbar .table-sort:hover {
    background: rgba(25, 83, 83, 0.07);
}

.dashboard-feed-sortbar .table-sort.is-active {
    background: rgba(25, 83, 83, 0.12);
}

.dashboard-feed-carousel-hint {
    margin-top: -0.1rem;
    padding: 0.34rem 0.65rem;
    border-radius: 999px;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.55);
    width: fit-content;
}

.dashboard-feed-carousel {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    min-width: 0;
    align-items: stretch;
}

.dashboard-feed-card {
    display: grid;
    grid-template-rows: auto auto auto auto;
    gap: 1rem;
    width: 100%;
    min-width: 0;
    min-height: 100%;
    padding: 1.2rem 1.2rem 1.25rem;
    text-align: left;
    color: var(--text);
    position: relative;
    overflow: hidden;
    isolation: isolate;
    border-radius: 1.6rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.12), transparent 24%),
        radial-gradient(circle at bottom left, rgba(15, 143, 135, 0.08), transparent 28%),
        linear-gradient(180deg, rgba(255, 252, 247, 0.99), rgba(242, 233, 217, 0.95));
    box-shadow:
        0 1.2rem 2.8rem rgba(21, 35, 58, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.7);
    cursor: pointer;
    transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease, background-color 150ms ease;
}

.dashboard-feed-card::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 0.45rem;
    background: linear-gradient(90deg, var(--brand-a), var(--brand-b), var(--brand-c));
    opacity: 0.92;
    pointer-events: none;
}

.dashboard-feed-card::after {
    content: "";
    position: absolute;
    inset: auto -2rem -2.5rem auto;
    width: 8rem;
    height: 8rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
    opacity: 0.7;
    pointer-events: none;
}

.dashboard-feed-card:hover,
.dashboard-feed-card:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(186, 141, 70, 0.3);
    box-shadow:
        0 1.45rem 3rem rgba(21, 35, 58, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.18), transparent 24%),
        radial-gradient(circle at bottom left, rgba(15, 143, 135, 0.12), transparent 28%),
        linear-gradient(180deg, rgba(255, 253, 249, 1), rgba(243, 235, 221, 0.98));
}

.dashboard-feed-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.65rem;
    min-width: 0;
    padding-bottom: 0.45rem;
    border-bottom: 1px solid rgba(21, 35, 58, 0.08);
}

.dashboard-feed-card-filed {
    text-align: right;
    flex: 0 0 auto;
    font-size: 0.72rem;
}

.dashboard-feed-card-hero {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.9rem;
    min-width: 0;
    align-items: stretch;
}

.dashboard-feed-card-hero-copy,
.dashboard-feed-card-hero-side,
.dashboard-feed-card-ticker-row {
    display: grid;
    gap: 0.6rem;
    min-width: 0;
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.58);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.dashboard-feed-card-hero-side,
.dashboard-feed-card-ticker-row {
    justify-items: start;
    text-align: left;
    background: linear-gradient(180deg, rgba(15, 143, 135, 0.08), rgba(255, 255, 255, 0.58));
}

.dashboard-feed-card-kicker,
.dashboard-feed-card-hero-side-label {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 1.4rem;
    padding: 0.14rem 0.5rem;
    border-radius: 999px;
    background: rgba(25, 83, 83, 0.08);
    color: #195353;
    font-family: var(--mono);
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.dashboard-feed-card-hero-side-label {
    margin-left: 0;
}

.dashboard-feed-card-headline {
    min-width: 0;
    font-family: var(--display-serif);
    font-size: clamp(1.1rem, 1.1vw + 0.7rem, 1.5rem);
    line-height: 1.04;
    letter-spacing: -0.05em;
}

.dashboard-feed-card-headline .member-label {
    gap: 0.45rem;
}

.dashboard-feed-card-headline .member-label-photo {
    width: 2rem;
    height: 2rem;
}

.dashboard-feed-card-headline .member-label-photo-lg {
    width: 2.25rem;
    height: 2.25rem;
}

.dashboard-feed-card-headline .member-label-button,
.dashboard-feed-card-headline > span:not(.member-label-button) {
    font-family: var(--display-serif);
    font-size: clamp(1.08rem, 1vw + 0.72rem, 1.45rem);
    line-height: 1.04;
    letter-spacing: -0.05em;
    text-wrap: balance;
}

.dashboard-feed-card-deck {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    flex-wrap: wrap;
    color: var(--muted);
    font-size: 0.8rem;
    line-height: 1.45;
}

.dashboard-feed-card-state {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.22rem 0.58rem;
    border-radius: 999px;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.68);
    font-family: var(--mono);
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--muted);
    line-height: 1;
}

.dashboard-feed-card-state-seal {
    width: 1.08rem;
    height: 1.08rem;
    flex: 0 0 auto;
    object-fit: contain;
    border-radius: 50%;
}

.dashboard-feed-card-state-text {
    white-space: nowrap;
}

.dashboard-feed-card-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.dashboard-feed-card-stat {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
    padding: 0.82rem 0.9rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.64);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.62);
}

.dashboard-feed-card-stat-label {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.6rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.dashboard-feed-card-stat-value {
    min-width: 0;
    overflow-wrap: anywhere;
}

.dashboard-feed-card-stat-value .pill {
    max-width: 100%;
    white-space: normal;
}

.dashboard-feed-card-notes {
    display: grid;
    gap: 0.35rem;
    padding-top: 0.15rem;
}

.dashboard-feed-card-notes .table-meta {
    line-height: 1.35;
}

.dashboard-feed-card-ticker-shell {
    display: grid;
    gap: 0.6rem;
    width: 100%;
    min-width: 0;
    padding: 0.8rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: linear-gradient(180deg, rgba(15, 143, 135, 0.08), rgba(255, 255, 255, 0.68));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.dashboard-feed-card-ticker-top {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.45rem;
    min-width: 0;
}

.dashboard-feed-card-ticker-company {
    color: var(--text);
    font-size: 0.84rem;
    font-weight: 600;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.dashboard-feed-card-ticker-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.dashboard-feed-card-ticker-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.45rem;
}

.dashboard-feed-card-ticker-chip {
    display: grid;
    gap: 0.12rem;
    padding: 0.5rem 0.6rem;
    border-radius: 0.85rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.74);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
    min-width: 0;
}

.dashboard-feed-card-ticker-chip strong {
    color: var(--text);
    font-family: var(--mono);
    font-size: 0.92rem;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.dashboard-feed-card-ticker-chip-alert {
    grid-column: 1 / -1;
}

.dashboard-feed-card-ticker-empty,
.dashboard-feed-card-ticker-note {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    line-height: 1.35;
}

.dashboard-feed-card-ticker-empty {
    padding-top: 0.1rem;
}

.dashboard-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    margin-top: 1rem;
}

.dashboard-news-feed-shell {
    display: grid;
    gap: 1rem;
    padding: clamp(1rem, 1.5vw, 1.25rem);
    border: 1px solid rgba(21, 35, 58, 0.08);
    border-radius: 1.65rem;
    background:
        radial-gradient(circle at top left, rgba(186, 141, 70, 0.12), transparent 24%),
        radial-gradient(circle at top right, rgba(15, 143, 135, 0.1), transparent 22%),
        linear-gradient(180deg, rgba(255, 252, 247, 0.94), rgba(243, 234, 219, 0.96));
    box-shadow: 0 1.2rem 3rem rgba(21, 35, 58, 0.08);
}

.dashboard-news-head {
    margin-bottom: 0.1rem;
}

.dashboard-news-feature {
    display: grid;
    gap: 0.9rem;
    padding: 1.15rem;
    border-radius: 1.45rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.1), transparent 24%),
        radial-gradient(circle at bottom left, rgba(15, 143, 135, 0.07), transparent 28%),
        linear-gradient(180deg, rgba(255, 253, 249, 0.98), rgba(242, 233, 217, 0.95));
    box-shadow:
        0 1.1rem 2.6rem rgba(21, 35, 58, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    cursor: pointer;
    transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease;
}

.dashboard-news-feature:hover,
.dashboard-news-feature:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(186, 141, 70, 0.28);
    box-shadow:
        0 1.35rem 2.9rem rgba(21, 35, 58, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.dashboard-news-feature-head,
.dashboard-news-story-head {
    display: flex;
    justify-content: space-between;
    gap: 0.6rem;
    flex-wrap: wrap;
    align-items: center;
}

.dashboard-news-feature-title {
    margin: 0;
    font-family: var(--display-serif);
    font-size: clamp(1.45rem, 3vw, 2.2rem);
    line-height: 1.03;
    letter-spacing: -0.05em;
    color: var(--text);
    text-wrap: balance;
}

.dashboard-news-feature-summary,
.dashboard-news-story-summary {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.dashboard-news-feature-foot,
.dashboard-news-story-foot {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
}

.dashboard-news-state {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    min-height: 1.7rem;
    padding: 0.18rem 0.55rem;
    border-radius: 999px;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.64);
    color: var(--text);
    font-size: 0.72rem;
    font-weight: 600;
}

.dashboard-news-state-seal {
    width: 1rem;
    height: 1rem;
    object-fit: contain;
}

.dashboard-news-state-text {
    font-family: var(--mono);
    letter-spacing: 0.08em;
}

.dashboard-news-story-list {
    display: grid;
    gap: 0.85rem;
}

.dashboard-news-story-card {
    display: grid;
    gap: 0.7rem;
    padding: 1rem 1.05rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.7);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
    cursor: pointer;
    transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease, background-color 150ms ease;
}

.dashboard-news-story-card:hover,
.dashboard-news-story-card:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(186, 141, 70, 0.22);
    background: rgba(255, 253, 249, 0.95);
    box-shadow: 0 1rem 2.2rem rgba(21, 35, 58, 0.08);
}

.dashboard-news-story-title {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.35;
    color: var(--text);
}

.dashboard-news-feature.is-up,
.dashboard-news-story-card.is-up {
    border-color: rgba(34, 197, 94, 0.2);
}

.dashboard-news-feature.is-down,
.dashboard-news-story-card.is-down {
    border-color: rgba(244, 63, 94, 0.2);
}

.dashboard-news-feature.is-neutral,
.dashboard-news-story-card.is-neutral {
    border-color: rgba(96, 165, 250, 0.16);
}

.dashboard-news-feature-layout {
    display: grid;
    grid-template-columns: minmax(15rem, 1.15fr) minmax(0, 1.25fr) minmax(14rem, 0.8fr);
    gap: 0.95rem;
    align-items: stretch;
}

.dashboard-news-feature-visual {
    display: grid;
    gap: 0.75rem;
    align-content: start;
    min-width: 0;
    padding: 0.9rem;
    border-radius: 1.25rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background:
        radial-gradient(circle at top left, rgba(15, 143, 135, 0.14), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(242, 233, 217, 0.86));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.dashboard-news-feature-visual-image {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    box-shadow: 0 0.85rem 1.8rem rgba(21, 35, 58, 0.12);
}

.dashboard-news-feature-visual-fallback {
    display: grid;
    gap: 0.65rem;
    align-content: space-between;
    min-height: 100%;
    padding: 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background:
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.12), transparent 28%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(242, 233, 217, 0.95));
}

.dashboard-news-feature-visual-fallback-kicker {
    color: #195353;
    font-family: var(--mono);
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.dashboard-news-feature-visual-fallback-ticker {
    font-family: var(--display-serif);
    font-size: clamp(2.2rem, 4vw, 3.4rem);
    font-weight: 700;
    letter-spacing: -0.08em;
    line-height: 0.94;
    color: var(--text);
    text-wrap: balance;
}

.dashboard-news-feature-visual-fallback-company {
    color: var(--text);
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.35;
}

.dashboard-news-feature-visual-fallback-note {
    color: var(--muted);
    font-size: 0.8rem;
    line-height: 1.45;
}

.dashboard-news-feature-visual-caption {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    align-items: center;
}

.dashboard-news-feature-copy {
    display: grid;
    gap: 0.85rem;
    min-width: 0;
}

.dashboard-news-feature-snapshot {
    display: grid;
    gap: 0.65rem;
    min-width: 0;
    padding: 0.95rem;
    border-radius: 1.25rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.1), transparent 24%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(243, 234, 219, 0.94));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.dashboard-news-feature-snapshot-head {
    display: flex;
    justify-content: space-between;
    gap: 0.45rem;
    align-items: center;
    flex-wrap: wrap;
}

.dashboard-news-feature-snapshot-ticker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
}

.dashboard-news-feature-snapshot-company {
    color: var(--text);
    font-size: 0.92rem;
    font-weight: 600;
    line-height: 1.35;
}

.dashboard-news-feature-snapshot-kpis {
    display: grid;
    gap: 0.45rem;
}

.dashboard-news-feature-snapshot-chip {
    display: grid;
    gap: 0.12rem;
    padding: 0.56rem 0.65rem;
    border-radius: 0.9rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.72);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.dashboard-news-feature-snapshot-chip-label {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.dashboard-news-feature-snapshot-chip-value {
    font-family: var(--mono);
    font-size: 0.92rem;
    line-height: 1.15;
}

.dashboard-news-feature-snapshot-chip-value.is-positive {
    color: var(--positive);
}

.dashboard-news-feature-snapshot-chip-value.is-negative {
    color: var(--negative);
}

@media (max-width: 991.98px) {
    .dashboard-news-layout {
        grid-template-columns: 1fr;
    }

    .dashboard-news-feed-shell {
        padding: 0.95rem;
    }

    .dashboard-news-feature-layout {
        grid-template-columns: 1fr;
    }

    .dashboard-news-feature-visual {
        min-height: 0;
    }

    .dashboard-news-feature-visual-image {
        aspect-ratio: 16 / 10;
    }

    .dashboard-news-feature-snapshot-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-news-story-card {
        padding: 0.9rem 0.95rem;
    }

    .dashboard-news-feature-foot {
        align-items: flex-start;
    }
}

.free-member-trade-cards {
    display: grid;
    gap: 0.8rem;
}

.free-member-trade-card {
    margin: 0;
}

.dashboard-chart-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.dashboard-strip-panel {
    margin-top: 1rem;
}

.dashboard-marquee {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.dashboard-marquee-track {
    display: flex;
    align-items: stretch;
    gap: 0.75rem;
    width: max-content;
    will-change: transform;
    animation: dashboard-marquee-scroll 34s linear infinite;
}

.dashboard-marquee.paused .dashboard-marquee-track,
.dashboard-marquee:hover .dashboard-marquee-track {
    animation-play-state: paused;
}

.dashboard-ticker-strip .dashboard-marquee-track {
    animation-duration: 42s;
}

.dashboard-ticker-chip {
    display: grid;
    gap: 0.55rem;
    padding: 0.9rem 1rem;
    min-width: 13rem;
    border-radius: 1rem;
    border: 1px solid var(--line);
    background: linear-gradient(180deg, rgba(255, 251, 245, 0.98), rgba(243, 234, 219, 0.94));
    color: var(--text);
    text-align: left;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
    box-shadow: 0 0.75rem 2rem rgba(21, 35, 58, 0.06);
}

.dashboard-ticker-chip:hover {
    transform: translateY(-2px);
    border-color: rgba(186, 141, 70, 0.32);
    box-shadow: 0 1.15rem 2.4rem rgba(21, 35, 58, 0.08);
}

.dashboard-ticker-chip.is-up {
    box-shadow: inset 3px 0 0 rgba(34, 197, 94, 0.72), 0 0.75rem 2rem rgba(21, 35, 58, 0.06);
}

.dashboard-ticker-chip.is-down {
    box-shadow: inset 3px 0 0 rgba(244, 63, 94, 0.68), 0 0.75rem 2rem rgba(21, 35, 58, 0.06);
}

.dashboard-ticker-chip-top,
.dashboard-ticker-chip-meta,
.dashboard-spotlight-head,
.dashboard-spotlight-card-top,
.dashboard-spotlight-actions {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.dashboard-ticker-chip-price {
    color: var(--text);
    font-size: 0.88rem;
    white-space: nowrap;
}

.dashboard-ticker-chip-meta {
    color: var(--muted);
    font-size: 0.78rem;
}

.dashboard-status-panel {
    display: grid;
    gap: 1rem;
    margin-top: 1rem;
}

.dashboard-market-watch-sortbar,
.dashboard-market-watch-cards {
    display: none;
}

.dashboard-market-watch-wrap-desktop {
    display: block;
}

.dashboard-status-head {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 1rem;
}

.dashboard-status-legend {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.45rem;
}

.dashboard-market-watch-wrap {
    overflow-x: auto;
    padding-bottom: 0.15rem;
}

.dashboard-market-watch-table {
    width: 100%;
    min-width: 76rem;
    border-collapse: separate;
    border-spacing: 0;
}

.dashboard-market-watch-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: rgba(249, 244, 236, 0.98);
}

.dashboard-market-watch-table tbody tr:nth-child(odd) {
    background: rgba(255, 255, 255, 0.42);
}

.dashboard-market-watch-table tbody tr:hover {
    background: rgba(186, 141, 70, 0.08);
}

.dashboard-market-watch-category,
.dashboard-market-watch-company {
    font-weight: 600;
}

.dashboard-status-change {
    font-size: 0.78rem;
}

.dashboard-status-empty {
    min-height: 7.5rem;
    display: grid;
    align-items: center;
}

.dashboard-spotlight-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.dashboard-duo-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
    align-items: stretch;
}

.dashboard-duo-grid > * {
    min-width: 0;
}

.dashboard-spotlight-shell {
    display: grid;
    gap: 0.9rem;
    height: 100%;
    overflow: hidden;
    padding: 1rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: linear-gradient(180deg, rgba(252, 248, 241, 0.96), rgba(239, 227, 209, 0.9));
}

.dashboard-spotlight-card {
    display: grid;
    gap: 0.9rem;
    width: 100%;
    padding: 1rem 1.05rem;
    text-align: left;
    color: var(--text);
    border-radius: 1.2rem;
    border: 1px solid var(--line);
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98), rgba(241, 231, 214, 0.95));
    box-shadow: 0 1rem 2.2rem rgba(21, 35, 58, 0.05);
}

.dashboard-member-spotlight {
    background: linear-gradient(180deg, rgba(248, 249, 255, 0.98), rgba(230, 238, 250, 0.96));
}

.dashboard-whale-spotlight {
    background: linear-gradient(180deg, rgba(251, 248, 241, 0.98), rgba(243, 233, 217, 0.96));
}

.dashboard-watch-spotlight {
    background: linear-gradient(180deg, rgba(248, 252, 246, 0.98), rgba(232, 241, 225, 0.96));
}

.dashboard-spotlight-card h3 {
    margin: 0;
    font-size: 1.05rem;
    color: var(--text);
}

.dashboard-spotlight-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.4rem;
}

.dashboard-mini-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    min-height: 1.7rem;
    padding: 0.2rem 0.58rem;
    border-radius: 999px;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 255, 255, 0.72);
    color: var(--text);
    font-size: 0.72rem;
    font-weight: 600;
}

.dashboard-mini-badge.is-positive {
    color: #14532d;
    background: rgba(220, 252, 231, 0.96);
    border-color: rgba(34, 197, 94, 0.28);
}

.dashboard-mini-badge.is-negative {
    color: #881337;
    background: rgba(255, 228, 230, 0.96);
    border-color: rgba(244, 63, 94, 0.25);
}

.global-market-ticker {
    position: fixed;
    top: calc(var(--shell-header-height) + 0.4rem);
    left: 0;
    right: 0;
    z-index: 1200;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.65rem;
    align-items: center;
    min-height: var(--shell-ticker-height);
    margin-top: 0;
    padding: 0.22rem 0.85rem;
    border-bottom: 1px solid rgba(21, 35, 58, 0.08);
    background:
        linear-gradient(90deg, rgba(24, 36, 54, 0.96), rgba(16, 88, 87, 0.92)),
        linear-gradient(180deg, rgba(255, 251, 245, 0.9), rgba(241, 231, 214, 0.82));
    color: #f7f1e6;
    overflow: hidden;
    border-radius: 0;
    box-shadow: 0 0.75rem 1.5rem rgba(21, 35, 58, 0.08);
}

.global-market-ticker-label {
    display: inline-flex;
    align-items: baseline;
    gap: 0.35rem;
    white-space: nowrap;
}

.global-market-ticker-label span {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.global-market-ticker-label small {
    font-size: 0.62rem;
    color: rgba(247, 241, 230, 0.78);
}

.global-market-ticker-updated {
    color: #fff;
}

.global-market-ticker-rail {
    position: relative;
    overflow: hidden;
}

.global-market-ticker-track {
    display: flex;
    gap: 0.6rem;
    width: max-content;
    animation: global-market-ticker-scroll 384s linear infinite;
}

.global-market-ticker:hover .global-market-ticker-track {
    animation-play-state: paused;
}

.global-market-ticker-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
    padding: 0.18rem 0.42rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    white-space: nowrap;
    font-size: 0.69rem;
}

.global-market-ticker-chip.is-up {
    box-shadow: inset 3px 0 0 rgba(74, 222, 128, 0.75);
}

.global-market-ticker-chip.is-down {
    box-shadow: inset 3px 0 0 rgba(251, 113, 133, 0.75);
}

.global-market-ticker-symbol {
    font-size: 0.67rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.go-to-top-button {
    position: fixed;
    right: 1.25rem;
    bottom: calc(var(--shell-footer-height) + 1rem);
    z-index: 1200;
    padding: 0.8rem 1rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 251, 245, 0.98), rgba(243, 234, 219, 0.96));
    color: var(--text);
    box-shadow: 0 1rem 2rem rgba(21, 35, 58, 0.16);
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.go-to-top-button.visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.dashboard-spotlight-copy {
    display: grid;
    gap: 0.35rem;
    color: var(--muted);
    font-size: 0.86rem;
}

.dashboard-spotlight-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.65rem;
}

.dashboard-spotlight-metric {
    display: grid;
    gap: 0.2rem;
    padding: 0.7rem 0.75rem;
    border-radius: 0.95rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.64);
}

.dashboard-spotlight-metric span {
    color: var(--muted);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.dashboard-spotlight-metric strong {
    color: var(--text);
    font-size: 0.92rem;
}

.dashboard-spotlight-rail {
    padding-bottom: 0.2rem;
}

.dashboard-spotlight-rail .dashboard-marquee-track {
    gap: 0.6rem;
    animation-duration: 28s;
}

.dashboard-spotlight-chip {
    display: grid;
    gap: 0.18rem;
    min-width: 10.5rem;
    padding: 0.72rem 0.8rem;
    border-radius: 0.95rem;
    border: 1px solid rgba(21, 35, 58, 0.09);
    background: rgba(255, 255, 255, 0.72);
    color: var(--text);
    text-align: left;
}

.dashboard-spotlight-chip.active {
    border-color: rgba(186, 141, 70, 0.36);
    background: linear-gradient(180deg, rgba(255, 250, 241, 0.98), rgba(245, 236, 220, 0.94));
    box-shadow: 0 0.8rem 1.8rem rgba(21, 35, 58, 0.07);
}

.dashboard-spotlight-chip-title {
    font-weight: 700;
    font-size: 0.82rem;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dashboard-spotlight-chip-meta {
    color: var(--muted);
    font-size: 0.72rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@keyframes dashboard-marquee-scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-50% - 0.375rem));
    }
}

@keyframes global-market-ticker-scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-50% - 0.3rem));
    }
}

.chart-surface {
    padding: 1rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: linear-gradient(180deg, rgba(252, 248, 241, 0.96), rgba(239, 227, 209, 0.9));
}

.chart-card-head {
    display: grid;
    gap: 0.18rem;
    margin-bottom: 0.75rem;
}

.chart-card-head h3 {
    margin: 0;
    font-size: 0.98rem;
    font-weight: 700;
    color: var(--text);
}

.dashboard-signal-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.75rem;
    padding: 0.22rem 0.58rem;
    border-radius: 999px;
    font-family: var(--mono);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.dashboard-signal-special {
    color: #1b1304;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.98), rgba(251, 191, 36, 0.92));
}

.dashboard-signal-portfolio {
    color: #fff2f5;
    background: rgba(244, 63, 94, 0.2);
    border-color: rgba(251, 113, 133, 0.42);
}

.dashboard-signal-member {
    color: #e0f2fe;
    background: rgba(59, 130, 246, 0.2);
    border-color: rgba(96, 165, 250, 0.42);
}

.dashboard-signal-whale {
    color: #d1fae5;
    background: rgba(20, 184, 166, 0.2);
    border-color: rgba(45, 212, 191, 0.42);
}

.dashboard-signal-watchlist {
    color: #dbeafe;
    background: rgba(14, 165, 233, 0.18);
    border-color: rgba(56, 189, 248, 0.4);
}

.dashboard-signal-tracked {
    color: #dbeafe;
    background: rgba(148, 163, 184, 0.18);
}

.dashboard-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    margin-top: 1rem;
}

.dashboard-news-feed-shell {
    display: grid;
    gap: 1rem;
    padding: clamp(1rem, 1.5vw, 1.25rem);
    border: 1px solid rgba(21, 35, 58, 0.08);
    border-radius: 1.65rem;
    background:
        radial-gradient(circle at top left, rgba(186, 141, 70, 0.12), transparent 24%),
        radial-gradient(circle at top right, rgba(15, 143, 135, 0.1), transparent 22%),
        linear-gradient(180deg, rgba(255, 252, 247, 0.94), rgba(243, 234, 219, 0.96));
    box-shadow: 0 1.2rem 3rem rgba(21, 35, 58, 0.08);
}

.dashboard-news-head {
    margin-bottom: 0.1rem;
}

.dashboard-news-feature {
    display: grid;
    gap: 0.9rem;
    padding: 1.15rem;
    border-radius: 1.45rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.1), transparent 24%),
        radial-gradient(circle at bottom left, rgba(15, 143, 135, 0.07), transparent 28%),
        linear-gradient(180deg, rgba(255, 253, 249, 0.98), rgba(242, 233, 217, 0.95));
    box-shadow:
        0 1.1rem 2.6rem rgba(21, 35, 58, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    cursor: pointer;
    transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease;
}

.dashboard-news-feature:hover,
.dashboard-news-feature:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(186, 141, 70, 0.28);
    box-shadow:
        0 1.35rem 2.9rem rgba(21, 35, 58, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.dashboard-news-feature-head,
.dashboard-news-story-head {
    display: flex;
    justify-content: space-between;
    gap: 0.6rem;
    flex-wrap: wrap;
    align-items: center;
}

.dashboard-news-feature-title {
    margin: 0;
    font-family: var(--display-serif);
    font-size: clamp(1.45rem, 3vw, 2.2rem);
    line-height: 1.03;
    letter-spacing: -0.05em;
    color: var(--text);
    text-wrap: balance;
}

.dashboard-news-feature-summary,
.dashboard-news-story-summary {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.dashboard-news-feature-foot,
.dashboard-news-story-foot {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
}

.dashboard-news-state {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    min-height: 1.7rem;
    padding: 0.18rem 0.55rem;
    border-radius: 999px;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.64);
    color: var(--text);
    font-size: 0.72rem;
    font-weight: 600;
}

.dashboard-news-state-seal {
    width: 1rem;
    height: 1rem;
    object-fit: contain;
}

.dashboard-news-state-text {
    font-family: var(--mono);
    letter-spacing: 0.08em;
}

.dashboard-news-story-list {
    display: grid;
    gap: 0.85rem;
}

.dashboard-news-story-card {
    display: grid;
    gap: 0.7rem;
    padding: 1rem 1.05rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.7);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
    cursor: pointer;
    transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease, background-color 150ms ease;
}

.dashboard-news-story-card:hover,
.dashboard-news-story-card:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(186, 141, 70, 0.22);
    background: rgba(255, 253, 249, 0.95);
    box-shadow: 0 1rem 2.2rem rgba(21, 35, 58, 0.08);
}

.dashboard-news-story-title {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.35;
    color: var(--text);
}

.dashboard-news-feature.is-up,
.dashboard-news-story-card.is-up {
    border-color: rgba(34, 197, 94, 0.2);
}

.dashboard-news-feature.is-down,
.dashboard-news-story-card.is-down {
    border-color: rgba(244, 63, 94, 0.2);
}

.dashboard-news-feature.is-neutral,
.dashboard-news-story-card.is-neutral {
    border-color: rgba(96, 165, 250, 0.16);
}

.activity-date-note {
    margin-top: 0.35rem;
}

.search-flyout-panel {
    width: min(46rem, calc(100vw - 1rem));
}

.search-flyout-toolbar {
    display: grid;
    gap: 0.85rem;
    margin-bottom: 1rem;
}

.search-result-row {
    width: 100%;
    text-align: left;
    border: 1px solid var(--line);
    background: color-mix(in srgb, var(--surface) 84%, var(--bg) 16%);
    color: var(--text);
}

.portfolio-section-title {
    font-size: 1.12rem !important;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.portfolio-subsection-title {
    margin: 0 0 0.55rem;
    font-size: 0.92rem;
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: -0.01em;
}

/* ==============================
   BUTTONS
================================*/
.btn-gradient,
.btn-glass,
.btn-outline-light,
.btn-outline-warning,
.btn-primary,
.btn-secondary,
.btn-light,
.btn-warning,
.btn-info,
.btn-success,
.btn-danger {
    border-radius: 999px;
    padding-inline: 1.05rem;
    min-height: 3.1rem;
    min-width: 3.1rem;
    font-weight: 700;
    letter-spacing: 0;
    box-shadow: var(--surface-shadow);
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
    touch-action: manipulation;
}

.btn-gradient {
    color: #fffaf4;
    background: linear-gradient(135deg, var(--brand-a), var(--brand-b));
    border: none;
    font-weight: 700;
}

.btn-glass {
    color: var(--text);
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(21, 35, 58, 0.2);
}

.btn:hover,
.btn:focus {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(21, 35, 58, 0.12);
}

.what-if-typeahead {
    position: relative;
}

.what-if-typeahead-menu {
    position: absolute;
    top: calc(100% + 0.4rem);
    left: 0;
    right: 0;
    z-index: 30;
    display: grid;
    gap: 0.35rem;
    padding: 0.5rem;
    border-radius: 0.9rem;
    background: rgba(9, 16, 27, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28);
}

.what-if-typeahead-option {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0.85rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 0.8rem;
    background: rgba(255, 255, 255, 0.08);
    color: #f5f7fb;
    text-align: left;
}

.what-if-typeahead-option small {
    color: rgba(245, 247, 251, 0.72);
}

.what-if-typeahead-option:hover,
.what-if-typeahead-option:focus {
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.2);
}

/* ==============================
   TABLE
================================*/
.rich-table {
    --bs-table-bg: transparent;
    --bs-table-striped-bg: transparent;
    --bs-table-hover-bg: rgba(186, 141, 70, 0.08);
    --bs-table-border-color: rgba(21, 35, 58, 0.08);
    --bs-table-color: var(--text);
    --bs-table-striped-color: var(--text);
    --bs-table-hover-color: var(--text);
    --bs-table-active-color: var(--text);
    margin-bottom: 0;
}

.rich-table thead th {
    color: #556274;
}

.table-sort {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border: 0;
    padding: 0.14rem 0.42rem;
    background: transparent;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
    cursor: pointer;
    border-radius: 999px;
    transition: color 140ms ease, background-color 140ms ease, box-shadow 140ms ease;
}

.table-sort:hover,
.table-sort.is-active {
    color: var(--text);
}

.table-sort:hover {
    background: rgba(25, 83, 83, 0.06);
}

.table-sort.is-active {
    background: rgba(25, 83, 83, 0.1);
    box-shadow: inset 0 0 0 1px rgba(25, 83, 83, 0.18);
}

.table-sort__label {
    display: inline-flex;
    align-items: center;
}

.table-sort__icon {
    font-size: 0.78em;
    opacity: 0.72;
    color: rgba(85, 98, 116, 0.82);
}

.table-sort.is-active .table-sort__icon {
    opacity: 1;
    color: #195353;
}

.rich-table th.text-end .table-sort,
.market-ticker-live__row--header .text-end .table-sort {
    width: 100%;
    justify-content: flex-end;
}

.market-ticker-live__row--header .table-sort.is-active {
    background: rgba(25, 83, 83, 0.08);
    box-shadow: inset 0 0 0 1px rgba(25, 83, 83, 0.16);
}

.rich-table tbody td {
    color: var(--text);
}

#filings .rich-table {
    font-size: 0.96rem;
}

#filings .rich-table thead th {
    font-size: 0.8rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

#filings .rich-table tbody td {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.9rem;
}

#filings .rich-table .fw-semibold,
#filings .rich-table .mono,
#filings .rich-table .pill {
    font-size: 0.86rem;
}

#filings .rich-table .table-meta,
#filings .rich-table .party-badge {
    font-size: 0.75rem;
}

.recent-filings-acquisition-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 0.7rem;
    margin-bottom: 1rem;
}

.recent-filings-acquisition-card {
    display: grid;
    gap: 0.35rem;
    padding: 0.75rem 0.85rem;
    border-radius: 0.7rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 255, 255, 0.92);
}

.live-updates-correlation-card .ticker-analysis-correlation-chip {
    margin-top: 0.15rem;
}

.recent-filings-acquisition-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.6rem;
}

.recent-filings-acquisition-head strong {
    font-size: 0.88rem;
    color: var(--text);
}

.recent-filings-acquisition-head span {
    font-size: 0.72rem;
    color: color-mix(in srgb, var(--text) 72%, white 28%);
    white-space: nowrap;
}

.recent-filings-acquisition-bar-track {
    width: 100%;
    height: 0.38rem;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.22);
    overflow: hidden;
}

.recent-filings-acquisition-bar-fill {
    height: 100%;
    min-width: 0;
    border-radius: inherit;
    background: linear-gradient(90deg, #2563eb 0%, #38bdf8 100%);
}

.member-tile-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.whale-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
}

.whale-dashboard-tile {
    align-content: start;
}

.whale-dashboard-title {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    flex-wrap: wrap;
}

.whale-dashboard-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.whale-dashboard-tickers {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.whale-dashboard-chip {
    padding: 0.45rem 0.65rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    color: var(--text);
}

.whale-dashboard-row,
.portfolio-signal-row {
    width: 100%;
    border: 1px solid rgba(21, 35, 58, 0.1);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.68);
    color: inherit;
    text-align: left;
}

.whale-dashboard-row:hover,
.portfolio-signal-row:hover,
.whale-dashboard-chip:hover {
    border-color: rgba(186, 141, 70, 0.26);
    background: rgba(255, 255, 255, 0.9);
}

.portfolio-signal-list {
    gap: 0.85rem;
}

.portfolio-signal-ticker {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
}

.member-tile {
    display: grid;
    gap: 0.8rem;
    width: 100%;
    padding: 1rem 1.05rem;
    text-align: left;
    color: var(--text);
    background: linear-gradient(180deg, rgba(255, 251, 245, 0.96), rgba(243, 234, 219, 0.92));
    border: 1px solid var(--line);
    border-radius: 1.2rem;
    box-shadow: 0 1rem 2.2rem rgba(21, 35, 58, 0.05);
}

.member-tile-head,
.member-tile-meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.member-tile-count {
    color: #ba8d46;
    font-family: var(--mono);
    font-size: 0.68rem;
    white-space: nowrap;
}

.member-tile-meta {
    color: var(--muted);
    font-size: 0.62rem;
    font-family: var(--mono);
}

.member-tile-activity {
    color: var(--text);
    font-size: 0.7rem;
    line-height: 1.35;
}

.member-tile-filings {
    display: grid;
    gap: 0.45rem;
    max-height: 16rem;
    overflow-y: auto;
    padding-top: 0.2rem;
}

.member-tile-filing {
    display: grid;
    gap: 0.35rem;
    width: 100%;
    padding: 0.65rem 0.75rem;
    text-align: left;
    color: var(--text);
    background: rgba(255, 255, 255, 0.58);
    border: 1px solid rgba(21, 35, 58, 0.08);
    border-radius: 0.9rem;
}

.member-tile-filing-main,
.member-tile-filing-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem;
}

.member-tile-filing-meta {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.6rem;
}

/* ==============================
   PILLS
================================*/
.pill {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.8rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
}

.pill-buy {
    background: rgba(74, 222, 128, 0.14);
    color: var(--success);
}

.pill-sell {
    background: rgba(251, 113, 133, 0.14);
    color: var(--danger);
}

.pill-neutral {
    background: rgba(148, 163, 184, 0.14);
    color: var(--muted);
}

/* ==============================
   QUOTE / MEMBER CARDS
================================*/
.quote-card,
.member-card {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 1rem;
    align-items: center;
    padding: 1rem 1.1rem;
    border-radius: 1.2rem;
    background: linear-gradient(135deg, rgba(79, 209, 197, 0.08), rgba(96, 165, 250, 0.08));
    border: 1px solid rgba(148, 163, 184, 0.14);
}

.quote-card {
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: start;
}

.quote-card-main {
    min-width: 0;
}

.quote-card-side {
    min-width: 5.5rem;
}

.member-card {
    grid-template-columns: auto 1fr auto;
}

.member-avatar {
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    display: grid;
    place-items: center;
    color: #08111f;
    font-weight: 700;
    background: linear-gradient(135deg, var(--brand-a), var(--brand-b));
}

.member-count {
    color: var(--brand-c);
    font-family: var(--mono);
    font-size: 0.8rem;
}

.member-flag {
    text-align: right;
}

.member-hit {
    margin-top: 0.35rem;
    color: var(--success);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.member-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
}

/* ==============================
   TICKER
================================*/
.ticker-ribbon {
    overflow: hidden;
}

.ticker-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.9rem;
}

.ticker-stack {
    display: grid;
    grid-template-columns: repeat(10, 84px);
    gap: 0.35rem;
    justify-content: space-between;
    align-content: flex-start;
}

.hot-ticker-stack {
    margin-bottom: 0.85rem;
}

.watchlist-input {
    min-width: 13rem;
}

.ticker-chip {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto auto;
    gap: 0.04rem;
    width: 95px;
    min-width: 95px;
    height: 65px;
    padding: 0.11rem 0.12rem;
    border-radius: 0.38rem;
    background: linear-gradient(180deg, rgba(17, 26, 45, 0.92), rgba(7, 13, 24, 0.92));
    border: 1px solid rgba(148, 163, 184, 0.16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
    overflow: hidden;
    box-sizing: border-box;
}

.ticker-chip-neutral {
    border-left: 4px solid rgba(148, 163, 184, 0.4);
}

.ticker-chip-member-dem {
    border-color: rgba(96, 165, 250, 0.55);
    border-left: 4px solid #60a5fa;
    box-shadow: inset 0 0 0 1px rgba(96, 165, 250, 0.14);
    background: linear-gradient(135deg, rgba(96, 165, 250, 0.24), rgba(17, 26, 45, 0.92));
}

.ticker-chip-member-rep {
    border-color: rgba(251, 113, 133, 0.55);
    border-left: 4px solid #fb7185;
    box-shadow: inset 0 0 0 1px rgba(251, 113, 133, 0.14);
    background: linear-gradient(135deg, rgba(251, 113, 133, 0.24), rgba(17, 26, 45, 0.92));
}

.ticker-chip-member-other {
    border-color: rgba(245, 158, 11, 0.55);
    border-left: 4px solid #f59e0b;
    box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.14);
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.24), rgba(17, 26, 45, 0.92));
}

.ticker-chip .text-end {
    text-align: left !important;
}

.ticker-chip .quote-symbol {
    font-size: 0.43rem;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ticker-chip .table-meta {
    font-size: 0.28rem;
    line-height: 0.95;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ticker-chip .mono.fw-semibold {
    font-size: 0.43rem;
    line-height: 1;
    flex: 0 0 auto;
    white-space: nowrap;
}

.ticker-kpi-top {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.08rem;
    line-height: 1;
    min-width: 0;
}

.ticker-symbol-group {
    display: inline-flex;
    align-items: center;
    gap: 0.1rem;
    min-width: 0;
    overflow: hidden;
    flex: 1 1 auto;
}

.ticker-action {
    display: inline-flex;
    align-items: center;
    margin-left: 0.03rem;
    padding: 0.01rem 0.06rem;
    border-radius: 999px;
    font-size: 0.21rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1;
    flex: 0 0 auto;
}

.ticker-action-buy {
    color: var(--success);
    background: rgba(74, 222, 128, 0.12);
}

.ticker-action-sell {
    color: var(--danger);
    background: rgba(251, 113, 133, 0.12);
}

.ticker-action-other {
    color: var(--muted);
    background: rgba(148, 163, 184, 0.12);
}

.ticker-filer-line {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.04rem;
    align-items: center;
    overflow: hidden;
    min-width: 0;
}

    .ticker-filer-line > span:first-child {
        min-width: 0;
        flex: 1 1 auto;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.ticker-member-party {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0.4rem;
    height: 0.32rem;
    padding: 0 0.07rem;
    flex: 0 0 auto;
    border-radius: 999px;
    font-size: 0.18rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.ticker-filer-name {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ticker-kpi-metrics {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.03rem;
    justify-content: space-between;
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.22rem;
    line-height: 1;
    min-width: 0;
}

    .ticker-kpi-metrics span {
        min-width: 0;
        max-width: 48%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.ticker-party-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.03rem 0.14rem;
    border-radius: 999px;
    font-size: 0.32rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.ticker-party-dem {
    color: #dbeafe;
    background: rgba(96, 165, 250, 0.22);
}

.ticker-party-rep {
    color: #ffe4e6;
    background: rgba(251, 113, 133, 0.22);
}

.ticker-party-other {
    color: #fef3c7;
    background: rgba(245, 158, 11, 0.22);
}

.ticker-chip-glow-buy {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(74, 222, 128, 0.18), 0 0 22px rgba(74, 222, 128, 0.18);
}

.ticker-chip-glow-sell {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(251, 113, 133, 0.18), 0 0 22px rgba(251, 113, 133, 0.18);
}

.ticker-chip-flash-buy {
    animation: ticker-flash-buy 1.8s ease-in-out infinite;
    will-change: box-shadow, transform;
}

.ticker-chip-flash-sell {
    animation: ticker-flash-sell 1.8s ease-in-out infinite;
    will-change: box-shadow, transform;
}

.ticker-chip-flash-neutral {
    animation: ticker-flash-neutral 1.8s ease-in-out infinite;
    will-change: box-shadow, transform;
}

@keyframes ticker-flash-buy {
    0%, 100% {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(74, 222, 128, 0.18), 0 0 0 0 rgba(74, 222, 128, 0.1);
        transform: translateY(0);
    }

    50% {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(74, 222, 128, 0.48), 0 0 14px rgba(74, 222, 128, 0.42);
        transform: translateY(-1px);
    }
}

@keyframes ticker-flash-sell {
    0%, 100% {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(251, 113, 133, 0.18), 0 0 0 0 rgba(251, 113, 133, 0.1);
        transform: translateY(0);
    }

    50% {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(251, 113, 133, 0.48), 0 0 14px rgba(251, 113, 133, 0.42);
        transform: translateY(-1px);
    }
}

@keyframes ticker-flash-neutral {
    0%, 100% {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(245, 158, 11, 0.18), 0 0 0 0 rgba(245, 158, 11, 0.1);
        transform: translateY(0);
    }

    50% {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(245, 158, 11, 0.44), 0 0 12px rgba(245, 158, 11, 0.38);
        transform: translateY(-1px);
    }
}

/* ==============================
   MOVER CARD / HEADER
================================*/
.mover-card {
    display: flex;
    flex-direction: column;
    padding: 0.5rem !important;
}

    .mover-card .list-group {
        flex-grow: 1;
    }

.mover-header {
    background: linear-gradient(135deg, #1a1f2b, #0d1117);
    padding: 0.35rem 0.5rem !important;
    border-bottom: 2px solid rgba(0, 150, 255, 0.4);
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.05), 0 4px 10px rgba(0, 0, 0, 0.6);
    position: relative;
    z-index: 2;
}

    .mover-header::after {
        content: "";
        position: absolute;
        bottom: -1px;
        left: 0;
        width: 100%;
        height: 2px;
        background: linear-gradient(90deg, #00aaff55, #6610f255);
        filter: blur(2px);
    }

.mover-symbol {
    font-size: 1.15rem;
    text-shadow: 0 0 8px rgba(0, 150, 255, 0.7);
}

.mover-price {
    opacity: 0.85;
}

.mover-change {
    font-size: 1.15rem;
    font-weight: 600;
    text-shadow: 0 0 6px rgba(0,0,0,0.5);
}
  
 
/* ==============================
   LIVE PULSE DOT
================================*/
.live-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #22c55e;
    margin-left: 8px;
    animation: pulseLive 1.4s infinite ease-in-out;
}

.live-pulse {
    width: 8px;
    height: 8px;
    background: #ff3;
    border-radius: 50%;
    animation: pulse 1.2s infinite ease-in-out;
}

@keyframes pulse {
    0%, 100% {
        transform: scale(0.8);
        opacity: 0.6;
    }

    50% {
        transform: scale(1.3);
        opacity: 1;
    }
}

@keyframes pulseLive {
    0%, 100% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.6);
        opacity: 0.4;
    }
}

/* ==============================
   PARTY FRAME / GLOW
================================*/
.party-frame {
    position: relative;
    overflow: visible !important;
    background-color: transparent !important;
    border-radius: 8px;
    z-index: 2;
}

    .party-frame::before {
        content: "";
        position: absolute;
        inset: -6px;
        border-radius: inherit;
        z-index: -1;
        filter: blur(12px);
        opacity: 0.7;
        transition: opacity 0.3s ease;
    }

.party-glow-rep::before {
    background: rgba(239, 68, 68, 0.7);
    animation: pulse-rep 2.5s infinite ease-in-out;
}

.party-glow-dem::before {
    background: rgba(59, 130, 246, 0.7);
    animation: pulse-dem 2.5s infinite ease-in-out;
}

.party-glow-ind::before {
    background: rgba(168, 85, 247, 0.7);
    animation: pulse-ind 2.5s infinite ease-in-out;
}

.party-frame.list-group-item {
    padding: 0.35rem 0.75rem !important;
    min-height: unset !important;
}

.party-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.38rem;
    font-size: 0.75rem !important;
}

.party-badge-icon {
    width: 1.22rem;
    height: 1.22rem;
    object-fit: contain;
    border-radius: 999px;
    flex: 0 0 auto;
}

/* ==============================
   CHART COLUMNS
================================*/
.chart-columns {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 0.9rem;
    align-items: end;
    min-height: 230px;
}

.chart-column {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

.chart-value,
.chart-label,
.activity-symbol,
.activity-count {
    font-family: var(--mono);
}

.chart-value {
    color: var(--muted);
    font-size: 0.75rem;
}

.chart-bar-track {
    height: 160px;
    width: 100%;
    display: flex;
    align-items: end;
    padding: 0.4rem;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.08);
}

.chart-bar-fill {
    width: 100%;
    border-radius: 999px;
    min-height: 10%;
    background: linear-gradient(180deg, var(--brand-c), var(--brand-b), var(--brand-a));
    box-shadow: 0 12px 32px rgba(96, 165, 250, 0.2);
}

.chart-label {
    color: var(--muted);
    font-size: 0.72rem;
    text-align: center;
}

/* ==============================
   ACTIVITY
================================*/
.activity-list {
    display: grid;
    gap: 0.95rem;
}

.activity-row {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 0.9rem;
    align-items: center;
}

.activity-detail-row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1rem;
    align-items: center;
    padding: 0.9rem 1rem;
    border-radius: 1rem;
    background: rgba(148, 163, 184, 0.06);
    border: 1px solid rgba(148, 163, 184, 0.12);
}

.activity-symbol {
    min-width: 3.5rem;
    color: var(--text);
    font-weight: 600;
}

.activity-track {
    height: 0.8rem;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(148, 163, 184, 0.08);
}

.activity-fill {
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--brand-a), var(--brand-b));
}

.activity-count {
    color: var(--muted);
    font-size: 0.78rem;
}

/* ==============================
   WATCHLIST
================================*/
.watchlist-transactions {
    display: grid;
    gap: 0.45rem;
    margin-top: 0.7rem;
}

.watchlist-transaction {
    padding-top: 0.45rem;
    border-top: 1px solid rgba(148, 163, 184, 0.12);
}

.watchlist-transaction-head,
.watchlist-transaction-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.35rem;
}

.watchlist-transaction-meta {
    margin-top: 0.2rem;
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.72rem;
}

.watchlist-filer {
    display: inline-flex;
    align-items: center;
    gap: 0.18rem;
    min-width: 0;
    font-size: 0.78rem;
    font-weight: 600;
}

/* ==============================
   TRADE TILES / FLYOUT
================================*/
.dashboard-trade-tile-stack {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    margin-top: 1rem;
    align-items: stretch;
}

.trade-tile-card {
    width: 100%;
    text-align: left;
    color: var(--text) !important;
    background: #212529 !important;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
    min-height: 0;
    cursor: pointer;
    overflow: hidden;
    font-size: 0.82rem;
}

.trade-tile-card:hover {
    transform: translateY(-2px);
    border-color: rgba(108, 117, 125, 0.85) !important;
    box-shadow: 0 18px 40px rgba(2, 8, 23, 0.28);
}

.trade-tile-card.is-up {
    box-shadow: inset 3px 0 0 rgba(74, 222, 128, 0.85);
}

.trade-tile-card.is-down {
    box-shadow: inset 3px 0 0 rgba(251, 113, 133, 0.85);
}

.trade-tile-status-row,
.trade-event-top,
.trade-event-meta,
.trade-flyout-symbol-row,
.trade-flyout-highlight-top,
.trade-flyout-highlight-meta,
.trade-flyout-kpis {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.trade-tile-symbol-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
}

.trade-tile-flag,
.trade-tile-status,
.trade-tile-action {
    display: inline-flex;
    align-items: center;
    padding: 0.24rem 0.55rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.trade-tile-flag {
    color: #08111f;
    background: linear-gradient(135deg, var(--brand-c), #ffd166);
}

.trade-tile-company,
.trade-flyout-header p,
.trade-event-meta,
.trade-flyout-highlight-meta {
    color: var(--muted);
    font-size: 0.78rem;
}

.trade-tile-main {
    min-width: 0;
    flex: 1 1 auto;
}

.trade-tile-title-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.1rem;
    font-size: 0.8rem;
}

.trade-tile-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin-top: 0.25rem;
}

.trade-kpi-label,
.trade-flyout-kpi span {
    color: var(--muted);
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.trade-mini-badge {
    font-size: 0.6rem !important;
    padding: 0.18rem 0.38rem !important;
}

.trade-tile-company {
    font-size: 0.67rem;
    line-height: 1.2;
}

.trade-tile-kpis {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.35rem;
    align-items: stretch;
    width: 100%;
}

.trade-tile-kpi-chip {
    display: grid;
    gap: 0.15rem;
    padding: 0.38rem 0.45rem;
    border-radius: 0.55rem;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(108, 117, 125, 0.45);
    min-width: 0;
    overflow: hidden;
    width: 100%;
    align-self: stretch;
    justify-self: stretch;
}

.trade-tile-kpi-chip-full {
    grid-column: 1 / -1;
}

.trade-tile-kpi-chip strong {
    color: var(--text);
    font-size: 0.84rem;
    font-family: var(--mono);
    min-width: 0;
    overflow-wrap: anywhere;
    line-height: 1.15;
}

.trade-tile-kpi-chip-alert {
    position: relative;
    overflow: hidden;
}

.trade-tile-kpi-chip-alert::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
}

.trade-ribbon-gainer {
    background: rgba(74, 222, 128, 0.12);
    border-color: rgba(74, 222, 128, 0.35);
}

.trade-ribbon-gainer::before {
    background: var(--success);
}

.trade-ribbon-loser {
    background: rgba(251, 113, 133, 0.12);
    border-color: rgba(251, 113, 133, 0.35);
}

.trade-ribbon-loser::before {
    background: var(--danger);
}

.trade-tile-yahoo {
    font-size: 0.68rem !important;
    color: var(--text) !important;
}

.trade-tile-chart {
    height: 2rem;
    padding: 0.2rem 0.3rem;
    border-radius: 0.55rem;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(108, 117, 125, 0.45);
}

.trade-sparkline-canvas {
    width: 100%;
    height: 100%;
}

.trade-sparkline-canvas-lg {
    min-height: 100%;
}

.mover-gainer {
    color: var(--success);
    background: rgba(74, 222, 128, 0.14);
}

.mover-loser {
    color: var(--danger);
    background: rgba(251, 113, 133, 0.14);
}

.mover-none {
    color: var(--muted);
    background: rgba(148, 163, 184, 0.12);
}

.action-buy {
    color: var(--success);
    background: rgba(74, 222, 128, 0.14);
}

.action-sell {
    color: var(--danger);
    background: rgba(251, 113, 133, 0.14);
}

.action-neutral {
    color: var(--muted);
    background: rgba(148, 163, 184, 0.12);
}

.trade-flyout-shell {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: var(--flyout-shell-z, 9999);
    overflow: hidden;
}

.trade-flyout-shell.open {
    pointer-events: auto;
}

.trade-flyout-backdrop {
    position: fixed;
    inset: 0;
    z-index: var(--flyout-backdrop-z, 10000);
    background: color-mix(in srgb, var(--text) 24%, transparent);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.trade-flyout-backdrop.show,
.trade-flyout-shell.open .trade-flyout-backdrop {
    opacity: 1;
}

.trade-flyout-panel {
    position: fixed;
    top: 0;
    right: 0;
    z-index: var(--flyout-panel-z, 10001);
    width: min(42rem, calc(100vw - 1rem));
    height: 100vh;
    padding: 0.85rem 1.25rem calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1.25rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
    scrollbar-color: var(--brand-a) var(--surface);
    scroll-padding-top: 1rem;
    scroll-padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 0.75rem);
    background: linear-gradient(180deg, var(--surface), var(--bg));
    border-left: 1px solid var(--line);
    border-radius: 1.25rem 0 0 1.25rem;
    box-shadow: -24px 0 80px color-mix(in srgb, var(--text) 14%, transparent);
    transform: translateX(100%);
    transition: transform 0.22s ease, opacity 0.22s ease;
    visibility: hidden;
}

.trade-flyout-panel::-webkit-scrollbar {
    width: 0.78rem;
}

.trade-flyout-panel::-webkit-scrollbar-track {
    background: var(--surface);
    border-left: 1px solid var(--line);
}

.trade-flyout-panel::-webkit-scrollbar-thumb {
    border-radius: 999px;
    border: 0.18rem solid var(--surface);
    background: linear-gradient(180deg, var(--brand-a), var(--brand-b));
}

.trade-flyout-panel::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, var(--brand-c), var(--brand-b));
}

.trade-flyout-panel > :last-child {
    margin-bottom: 0.5rem;
}

.portfolio-flyout-panel .trade-event-row {
    text-decoration: none;
}

.portfolio-trade-row {
    cursor: default;
}

.trade-flyout-panel.show,
.trade-flyout-shell.open .trade-flyout-panel {
    transform: translateX(0);
    visibility: visible;
}

.trade-flyout-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 0.35rem 3.25rem 0.85rem 0;
    background: linear-gradient(180deg, var(--surface), rgba(255, 255, 255, 0));
}

.trade-flyout-header h3 {
    margin: 0;
    font-size: 1.4rem;
    color: var(--text);
    font-family: var(--display-serif);
}

.trade-flyout-close {
    align-self: auto;
    margin-top: 0;
    position: absolute;
    top: 0;
    right: 0;
}

.trade-flyout-close,
.market-ticker-live__flyout-close,
.notification-close,
.shell-mobile-menu-close {
    width: 2.5rem;
    height: 2.5rem;
    min-width: 2.5rem;
    min-height: 2.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(21, 35, 58, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    color: var(--text);
    padding: 0;
    font-size: 0;
    line-height: 1;
    overflow: hidden;
    text-indent: -9999px;
    white-space: nowrap;
    box-shadow: 0 10px 24px rgba(21, 35, 58, 0.08);
    transition: transform 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.trade-flyout-close::before,
.trade-flyout-close::after,
.market-ticker-live__flyout-close::before,
.market-ticker-live__flyout-close::after,
.notification-close::before,
.notification-close::after,
.shell-mobile-menu-close::before,
.shell-mobile-menu-close::after {
    content: "";
    position: absolute;
    width: 1rem;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
}

.trade-flyout-close::before,
.market-ticker-live__flyout-close::before,
.notification-close::before,
.shell-mobile-menu-close::before {
    transform: rotate(45deg);
}

.trade-flyout-close::after,
.market-ticker-live__flyout-close::after,
.notification-close::after,
.shell-mobile-menu-close::after {
    transform: rotate(-45deg);
}

.trade-flyout-close:hover,
.trade-flyout-close:focus-visible,
.market-ticker-live__flyout-close:hover,
.market-ticker-live__flyout-close:focus-visible,
.notification-close:hover,
.notification-close:focus-visible,
.shell-mobile-menu-close:hover,
.shell-mobile-menu-close:focus-visible {
    color: var(--brand-a);
    border-color: rgba(186, 141, 70, 0.28);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 14px 28px rgba(21, 35, 58, 0.12);
    transform: scale(1.04);
}

.trade-flyout-close:active,
.market-ticker-live__flyout-close:active,
.notification-close:active,
.shell-mobile-menu-close:active {
    transform: scale(0.96);
}

.page-alert-card {
    margin: 1rem 0 1.1rem;
    padding: 1rem;
    border-radius: 1rem;
    border: 1px solid var(--line);
    background: var(--surface);
    color: var(--text);
}

.page-alert-card.is-focused {
    border-color: var(--brand-a);
    box-shadow: 0 0 0 1px rgba(186, 141, 70, 0.28), 0 0 32px rgba(186, 141, 70, 0.16);
}

.page-alert-card-head h3 {
    margin: 0 0 0.2rem;
    font-size: 1rem;
}

.page-alert-card-head p {
    margin: 0;
    color: var(--muted);
    font-size: 0.86rem;
}

.page-alert-entry {
    display: grid;
    grid-template-columns: 11rem minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    margin-top: 0.85rem;
}

.page-alert-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.8rem;
}

@media (max-width: 768px) {
    .page-alert-entry {
        grid-template-columns: 1fr;
    }
}

.alert-inbox-shell {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 10020;
}

.alert-inbox-shell.open {
    pointer-events: auto;
}

.alert-inbox-backdrop {
    position: absolute;
    inset: 0;
    background: color-mix(in srgb, var(--text) 26%, transparent);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.alert-inbox-shell.open .alert-inbox-backdrop {
    opacity: 1;
}

.alert-inbox-panel {
    position: absolute;
    top: calc(var(--shell-header-height) + 0.5rem);
    right: 0.5rem;
    bottom: calc(var(--shell-footer-height) + 0.5rem);
    width: min(30rem, calc(100vw - 1rem));
    padding: 1rem 1rem calc(var(--shell-footer-height) + 1.25rem);
    overflow-y: auto;
    border-radius: 1.2rem 0 0 1.2rem;
    border: 1px solid var(--line);
    background: linear-gradient(180deg, var(--surface), var(--bg));
    box-shadow: -24px 0 80px color-mix(in srgb, var(--text) 14%, transparent);
    transform: translateX(110%);
    transition: transform 0.22s ease;
    color: var(--text);
}

.alert-inbox-shell.open .alert-inbox-panel {
    transform: translateX(0);
}

.alert-inbox-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    position: relative;
    padding-right: 3.25rem;
}

.alert-inbox-head h3 {
    margin: 0;
    color: var(--text);
}
.alert-inbox-build {
    margin-top: 0.25rem;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    color: color-mix(in srgb, var(--text) 68%, white);
    opacity: 0.88;
}

.alert-inbox-actions {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
    margin-left: auto;
    padding-right: 3rem;
    min-height: 2.5rem;
}

.alert-inbox-actions > .btn,
.alert-inbox-actions > .trade-flyout-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6.75rem;
    min-height: 2.25rem;
}

.alert-inbox-actions > .trade-flyout-close {
    min-width: 2.5rem;
    position: absolute;
    top: 0;
    right: 0;
}

.alert-inbox-mailboxes {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-bottom: 1rem;
}

.alert-inbox-mailbox {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.35rem 0.72rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.75);
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    cursor: pointer;
}

.alert-inbox-mailbox.is-selected {
    background: rgba(25, 83, 83, 0.1);
    border-color: rgba(25, 83, 83, 0.22);
    color: var(--text);
    box-shadow: inset 0 0 0 1px rgba(25, 83, 83, 0.08);
}

.alert-inbox-mailbox-count {
    min-width: 1.25rem;
    padding: 0.08rem 0.35rem;
    border-radius: 999px;
    background: rgba(21, 35, 58, 0.08);
    color: var(--text);
    font-family: var(--mono);
    font-size: 0.68rem;
    text-align: center;
}

.alert-inbox-item {
    display: grid;
    gap: 0.6rem;
}

.alert-inbox-list {
    gap: 0.8rem;
}

.alert-inbox-card {
    display: grid;
    gap: 0.6rem;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--text);
    text-align: left;
}

.alert-inbox-item.is-unread {
    border: 1px solid rgba(186, 141, 70, 0.28);
    background: linear-gradient(180deg, var(--surface), rgba(209, 172, 111, 0.16));
    box-shadow: 0 0 0 1px rgba(186, 141, 70, 0.12);
}

.alert-inbox-item.is-read {
    opacity: 0.96;
    background: rgba(255, 255, 255, 0.52);
    border: 1px solid var(--line);
}

.alert-inbox-meta {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    color: var(--muted);
}

.alert-inbox-folder-chip {
    display: inline-flex;
    align-items: center;
    padding: 0.18rem 0.55rem;
    border-radius: 999px;
    background: rgba(25, 83, 83, 0.1);
    border: 1px solid rgba(25, 83, 83, 0.15);
    color: var(--text);
    font-family: var(--mono);
    font-size: 0.68rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.alert-inbox-unread-dot {
    width: 0.72rem;
    height: 0.72rem;
    border-radius: 999px;
    background: var(--brand-a);
    box-shadow: 0 0 0.9rem rgba(186, 141, 70, 0.38);
}

.alert-inbox-item-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.alert-inbox-item-actions > .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6.75rem;
    min-height: 2.25rem;
}

.cookie-notice-banner {
    display: grid;
    gap: 0.5rem;
    padding: 0.85rem 1rem;
    border: 1px solid rgba(21, 35, 58, 0.16);
    border-radius: 0.8rem;
    background: rgba(255, 255, 255, 0.78);
    color: var(--text);
}

.cookie-notice-banner strong {
    font-size: 0.88rem;
}

.promo-qr-preview {
    width: min(18rem, 100%);
    max-width: 18rem;
    aspect-ratio: 1;
    border-radius: 0.45rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: #fff;
    padding: 0.65rem;
    object-fit: contain;
}

.cookie-notice-banner p {
    margin: 0;
    color: var(--muted);
    line-height: 1.45;
}

.cookie-notice-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
}

.cookie-notice-links a,
.shell-footer-links a {
    color: var(--brand-b);
    text-decoration: none;
}

.cookie-notice-links a:hover,
.shell-footer-links a:hover {
    text-decoration: underline;
}

.social-hub-icon-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
}

.social-hub-icon-link {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    min-width: 5.5rem;
    text-decoration: none;
    color: var(--color-text);
}

.social-hub-icon-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #ffffff;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
    transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.social-hub-icon-sprite {
    width: 1rem;
    height: 1rem;
    display: block;
    color: #ffffff;
}

.social-hub-icon-label {
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: #111111;
}

.social-hub-icon-link:hover .social-hub-icon-badge,
.social-hub-icon-link:focus-visible .social-hub-icon-badge {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.24);
}

.shell-footer-socials {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    margin-left: auto;
}

.shell-footer-socials-title {
    font-size: 0.68rem;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

.shell-footer-socials-list {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.shell-footer-socials-item {
    display: inline-flex;
}

.shell-footer-socials-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.12);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.12);
    color: #0f172a;
}

.shell-footer-socials-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.shell-footer-socials-sprite {
    width: 1rem;
    height: 1rem;
    display: block;
    color: inherit;
    fill: currentColor;
}

.shell-footer-socials-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.shell-footer-socials-link.platform-facebook,
.shell-footer-socials-link.platform-facebook .shell-footer-socials-sprite { color: #1877f2 !important; }
.shell-footer-socials-link.platform-instagram,
.shell-footer-socials-link.platform-instagram .shell-footer-socials-sprite { color: #c13584 !important; }
.shell-footer-socials-link.platform-x,
.shell-footer-socials-link.platform-x .shell-footer-socials-sprite { color: #111111 !important; }
.shell-footer-socials-link.platform-linkedin,
.shell-footer-socials-link.platform-linkedin .shell-footer-socials-sprite { color: #0a66c2 !important; }
.shell-footer-socials-link.platform-youtube,
.shell-footer-socials-link.platform-youtube .shell-footer-socials-sprite { color: #d90429 !important; }
.shell-footer-socials-link.platform-tiktok,
.shell-footer-socials-link.platform-tiktok .shell-footer-socials-sprite { color: #111111 !important; }
.shell-footer-socials-link.platform-threads,
.shell-footer-socials-link.platform-threads .shell-footer-socials-sprite { color: #111111 !important; }
.shell-footer-socials-link.platform-truthsocial,
.shell-footer-socials-link.platform-truthsocial .shell-footer-socials-sprite { color: #4f46e5 !important; }
.shell-footer-socials-link.platform-default,
.shell-footer-socials-link.platform-default .shell-footer-socials-sprite { color: #0f766e !important; }

.shell-footer-socials-link.platform-facebook { background: rgba(24, 119, 242, 0.12); }
.shell-footer-socials-link.platform-instagram { background: rgba(193, 53, 132, 0.12); }
.shell-footer-socials-link.platform-x { background: rgba(15, 23, 42, 0.08); }
.shell-footer-socials-link.platform-linkedin { background: rgba(10, 102, 194, 0.12); }
.shell-footer-socials-link.platform-youtube { background: rgba(217, 4, 41, 0.12); }
.shell-footer-socials-link.platform-tiktok { background: rgba(17, 17, 17, 0.08); }
.shell-footer-socials-link.platform-threads { background: rgba(17, 17, 17, 0.08); }
.shell-footer-socials-link.platform-truthsocial { background: rgba(79, 70, 229, 0.12); }
.shell-footer-socials-link.platform-default { background: rgba(15, 118, 110, 0.12); }

.shell-footer-socials-link:hover,
.shell-footer-socials-link:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(15, 23, 42, 0.18);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16);
}

.public-shell {
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
}

.public-shell-header {
    position: sticky;
    top: 0;
    z-index: 40;
    background: rgba(248, 243, 233, 0.94);
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(16px);
}

.public-shell-header-inner {
    width: min(100%, 1680px);
    margin: 0 auto;
    padding: 0.85rem 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.public-shell-brand {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    text-decoration: none;
    color: #0f172a;
}

.public-shell-logo {
    width: 1.35rem;
    height: 1.35rem;
    object-fit: contain;
    display: block;
}

.public-shell-brand-copy {
    display: flex;
    flex-direction: column;
    line-height: 1.05;
}

.public-shell-brand-copy strong {
    font-size: 0.95rem;
}

.public-shell-brand-copy span {
    font-size: 0.76rem;
    color: #475569;
}

.public-shell-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
}

.public-shell-nav a {
    color: #0f172a;
    font-weight: 700;
    text-decoration: none;
}

.public-shell-content {
    flex: 1 1 auto;
}

.login-mode-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.login-inline-links {
    margin-top: 0.9rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    justify-content: flex-start;
}

.login-inline-links a {
    color: #0f766e;
    font-weight: 700;
    text-decoration: none;
}

.dashboard-spotlight-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

@media (max-width: 992px) {
    .dashboard-spotlight-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-spotlight-grid > * {
        min-width: 0;
    }

    .dashboard-feed-carousel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .dashboard-spotlight-grid > * {
        min-width: min(26rem, calc(60vw - 1rem));
    }

    .dashboard-feed-carousel-hint {
        display: block;
    }

    .dashboard-feed-carousel {
        display: flex;
        overflow-x: auto;
        overflow-y: visible;
        gap: 1rem;
        padding: 0.35rem clamp(1rem, 6vw, 1.6rem) 0.55rem;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: clamp(1rem, 6vw, 1.6rem);
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
    }

    .dashboard-feed-carousel > .dashboard-feed-card {
        flex: 0 0 min(84vw, 31rem);
        min-width: min(84vw, 31rem);
        max-width: min(84vw, 31rem);
        scroll-snap-align: center;
        scroll-snap-stop: always;
    }

    .dashboard-feed-card-hero {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .dashboard-feed-card-hero-side,
    .dashboard-feed-card-ticker-row {
        justify-items: start;
        text-align: left;
        align-items: start;
        padding: 1rem;
    }

    .dashboard-feed-card-stats {
        grid-template-columns: 1fr;
    }

    .dashboard-feed-card-filed {
        text-align: left;
    }

    .dashboard-feed-card {
        padding: 1.25rem 1.15rem 1.2rem;
        border-radius: 1.9rem;
        min-height: clamp(22rem, 82vw, 29rem);
        box-shadow:
            0 1.65rem 3.4rem rgba(21, 35, 58, 0.14),
            inset 0 1px 0 rgba(255, 255, 255, 0.76);
    }

    .dashboard-feed-card::after {
        inset: auto -1.75rem -2.25rem auto;
        width: 7rem;
        height: 7rem;
    }

    .dashboard-feed-card-group {
        padding: 0.95rem;
    }

    .dashboard-feed-card-headline {
        font-size: clamp(1.45rem, 5vw, 2rem);
    }

    .dashboard-feed-card-headline .member-label {
        gap: 0.5rem;
    }

    .dashboard-feed-card-headline .member-label-photo,
    .dashboard-feed-card-headline .member-label-photo-lg {
        width: 2.4rem;
        height: 2.4rem;
    }

    .dashboard-feed-card-headline .member-label-button,
    .dashboard-feed-card-headline > span:not(.member-label-button) {
        font-size: clamp(1.45rem, 5vw, 2rem);
        line-height: 1.02;
    }

    .dashboard-feed-card-deck {
        font-size: 0.86rem;
    }

    .dashboard-feed-card-hero-side-label {
        margin-left: 0;
    }
}

@media (max-width: 640px) {
    .dashboard-spotlight-grid {
        padding-bottom: 0.85rem;
    }

    .dashboard-feed-sortbar {
        gap: 0.45rem;
    }

    .dashboard-feed-sortbar-actions {
        gap: 0.3rem;
    }

    .dashboard-feed-sortbar .table-sort {
        padding-inline: 0.52rem;
        font-size: 0.64rem;
    }

    .dashboard-feed-panel-shell {
        padding: 0.8rem;
        border-radius: 1.35rem;
    }
}

@media (min-width: 769px) {
    .dashboard-feed-carousel-hint {
        display: none;
    }
}

.login-mode-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.25rem;
    padding: 0.45rem 0.85rem;
    border-radius: 999px;
    background: rgba(15, 118, 110, 0.08);
    border: 1px solid rgba(15, 118, 110, 0.18);
    color: #0f172a;
    font-size: 0.82rem;
    font-weight: 700;
    text-decoration: none;
    transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.login-mode-tab:hover,
.login-mode-tab:focus-visible {
    background: rgba(15, 118, 110, 0.14);
    border-color: rgba(15, 118, 110, 0.32);
    color: #0b3d38;
    box-shadow: 0 0 0 0.16rem rgba(45, 212, 191, 0.18);
}

.login-mode-tab.is-active {
    background: linear-gradient(135deg, rgba(15, 118, 110, 0.9), rgba(13, 148, 136, 0.88));
    border-color: rgba(15, 118, 110, 0.96);
    color: #f8fafc;
    box-shadow: 0 0.65rem 1.35rem rgba(15, 118, 110, 0.18);
}

.login-tab-panel {
    min-height: 20rem;
}

.login-passkey-panel {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.login-inline-links {
    margin-top: 0.9rem;
    display: flex;
    justify-content: flex-start;
}

.login-inline-links a {
    color: #0f766e;
    font-weight: 700;
    text-decoration: none;
}

.legal-document-shell {
    min-height: 100vh;
    padding: 2rem 1rem 3rem;
    background: var(--bg);
}

.legal-document-card {
    width: min(54rem, 100%);
    margin: 0 auto;
    padding: 1.5rem 1.5rem 2rem;
    border: 1px solid var(--line);
    border-radius: 0.9rem;
    background: var(--surface);
    color: var(--text);
}

.legal-document-card h1 {
    margin-bottom: 0.4rem;
}

.legal-document-card h2 {
    margin-top: 1.5rem;
    margin-bottom: 0.45rem;
    font-size: 1.05rem;
}

.legal-document-meta {
    color: var(--muted);
    font-size: 0.88rem;
}

.legal-document-lead {
    margin-top: 1rem;
    color: var(--text);
    line-height: 1.6;
}

.legal-document-card p {
    line-height: 1.6;
}

.social-compose-textarea {
    min-height: 8rem;
}

.alert-inbox-reader {
    margin-top: 1rem;
    border-color: var(--line);
    background: linear-gradient(180deg, var(--surface), var(--bg));
    color: var(--text);
}

.alert-inbox-reader-message {
    margin: 0.9rem 0 0;
    color: var(--text);
    line-height: 1.55;
}

.portfolio-chart-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
    align-items: stretch;
}

.ticker-analysis-chart-grid {
    margin-bottom: 1.25rem;
    clear: both;
}

.ticker-analysis-chart-grid .chart-surface {
    min-height: 20rem;
}

.ticker-analysis-chart-grid .compact-chart-wrap {
    min-height: 15rem;
    height: 15rem;
}

.ticker-perspective-overview-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
}

.ticker-perspective-search-panel {
    padding: 1rem 1.05rem;
}

.ticker-perspective-volume-chart,
.ticker-perspective-state-chart {
    display: grid;
    gap: 0.75rem;
    max-height: 34rem;
    overflow: auto;
    padding-right: 0.25rem;
}

.ticker-perspective-volume-chart {
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.ticker-perspective-state-chart {
    grid-template-columns: minmax(0, 1fr);
}

.ticker-perspective-volume-row,
.ticker-perspective-state-row {
    appearance: none;
    -webkit-appearance: none;
    display: grid;
    gap: 0.6rem;
    width: 100%;
    padding: 0.9rem 1rem;
    text-align: left;
    border-radius: 1rem;
    border: 1px solid color-mix(in srgb, var(--line) 76%, var(--brand-b) 24%);
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--brand-b) 12%, transparent), transparent 34%),
        linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, var(--brand-c) 4%), color-mix(in srgb, var(--surface) 92%, var(--bg) 8%));
    color: var(--text);
    box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 58%, transparent);
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.ticker-perspective-volume-row {
    position: relative;
    overflow: hidden;
    min-height: 12.25rem;
    padding: 1rem 1rem 0.95rem;
    grid-template-rows: auto auto auto;
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--brand-b) 16%, transparent), transparent 38%),
        radial-gradient(circle at bottom left, color-mix(in srgb, var(--brand-c) 12%, transparent), transparent 44%),
        linear-gradient(180deg, color-mix(in srgb, var(--surface) 98%, var(--brand-b) 2%), color-mix(in srgb, var(--surface) 90%, var(--bg) 10%));
    box-shadow:
        inset 0 1px 0 color-mix(in srgb, #fff 64%, transparent),
        0 12px 22px color-mix(in srgb, var(--text) 10%, transparent);
}

.ticker-perspective-volume-row::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(180deg, color-mix(in srgb, #fff 20%, transparent), transparent 24%),
        linear-gradient(90deg, color-mix(in srgb, var(--line) 26%, transparent) 1px, transparent 1px);
    background-size: 100% 100%, 18% 100%;
    opacity: 0.55;
    pointer-events: none;
}

.ticker-perspective-volume-row > * {
    position: relative;
    z-index: 1;
}

.ticker-perspective-volume-row.is-up {
    border-color: color-mix(in srgb, var(--success) 34%, var(--line) 66%);
}

.ticker-perspective-volume-row.is-down {
    border-color: color-mix(in srgb, var(--danger) 34%, var(--line) 66%);
}

.ticker-perspective-volume-row:hover,
.ticker-perspective-state-row:hover {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--brand-b) 42%, var(--line) 58%);
    box-shadow: 0 20px 34px color-mix(in srgb, var(--text) 16%, transparent);
}

.ticker-perspective-volume-row-head,
.ticker-perspective-state-row-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.ticker-perspective-volume-row-head {
    align-items: flex-start;
}

.ticker-perspective-volume-row-head .d-flex {
    flex: 1 1 auto;
    min-width: 0;
}

.ticker-perspective-volume-row-head .table-meta {
    max-width: 100%;
    color: color-mix(in srgb, var(--muted) 88%, var(--text) 12%);
}

.ticker-perspective-volume-row-head .trade-tile-action,
.ticker-perspective-volume-row-head .dashboard-mini-badge {
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--line) 70%, transparent);
}

.ticker-perspective-volume-row-meta,
.ticker-perspective-state-row-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem 1rem;
    font-size: 0.84rem;
    color: color-mix(in srgb, var(--muted) 84%, var(--text) 16%);
}

.ticker-perspective-volume-row-meta {
    justify-content: space-between;
    font-variant-numeric: tabular-nums;
}

.ticker-perspective-volume-row-meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.36rem 0.6rem;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--line) 78%, var(--brand-c) 22%);
    background: color-mix(in srgb, var(--surface) 78%, var(--brand-c) 8%);
    box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 58%, transparent);
}

.ticker-perspective-volume-bar-track,
.ticker-perspective-state-bar-track {
    height: 0.95rem;
    border-radius: 999px;
    overflow: hidden;
    background:
        linear-gradient(180deg, color-mix(in srgb, #fff 34%, transparent), transparent),
        color-mix(in srgb, var(--line) 58%, var(--surface) 42%);
    box-shadow: inset 0 1px 2px color-mix(in srgb, var(--text) 18%, transparent);
}

.ticker-perspective-volume-bar-fill,
.ticker-perspective-state-bar-fill {
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--brand-b), var(--brand-c));
    box-shadow: 0 0 18px color-mix(in srgb, var(--brand-b) 28%, transparent);
}

.ticker-perspective-volume-row.is-up .ticker-perspective-volume-bar-fill {
    background: linear-gradient(90deg, var(--success), var(--brand-b));
    box-shadow: 0 0 18px color-mix(in srgb, var(--success) 26%, transparent);
}

.ticker-perspective-volume-row.is-down .ticker-perspective-volume-bar-fill {
    background: linear-gradient(90deg, var(--danger), var(--brand-c));
    box-shadow: 0 0 18px color-mix(in srgb, var(--danger) 26%, transparent);
}

.ticker-perspective-state-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.36rem 0.62rem;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--line) 74%, var(--brand-b) 26%);
    background: color-mix(in srgb, var(--surface) 82%, var(--brand-b) 8%);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}

.ticker-perspective-state-seal {
    width: 1.35rem;
    height: 1.35rem;
    object-fit: contain;
    border-radius: 999px;
    background: color-mix(in srgb, var(--surface) 80%, #fff 20%);
}

.ticker-perspective-volume-row .text-info {
    color: var(--brand-b) !important;
}

.managed-alert-targets {
    padding: 0.85rem;
}

.alert-delivery-quick-jump {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(186, 141, 70, 0.18);
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.12), transparent 26%),
        linear-gradient(180deg, rgba(249, 244, 236, 0.98), rgba(241, 231, 214, 0.94));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.alert-delivery-quick-jump-copy {
    display: grid;
    gap: 0.3rem;
    min-width: 0;
}

.alert-delivery-quick-jump-copy h4 {
    margin: 0;
    font-size: 1.02rem;
    color: var(--text);
}

.alert-delivery-quick-jump-copy p {
    margin: 0;
    color: var(--muted);
    line-height: 1.5;
}

.alert-delivery-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.alert-delivery-legend-item {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: rgba(255, 255, 255, 0.62);
    color: var(--text);
    font-size: 0.74rem;
    font-weight: 600;
}

.alert-delivery-matrix {
    display: grid;
    gap: 0.8rem;
}

.alert-delivery-matrix-head,
.alert-delivery-matrix-row {
    display: grid;
    grid-template-columns: minmax(14rem, 1.25fr) minmax(14rem, 1fr) minmax(12rem, 1fr) minmax(12rem, 1fr) minmax(9rem, auto);
    gap: 0.8rem;
    align-items: stretch;
}

.alert-delivery-matrix-head {
    padding: 0 0.3rem;
    text-transform: uppercase;
    font-size: 0.76rem;
    letter-spacing: 0.12em;
    color: rgba(226, 232, 240, 0.72);
}

.alert-delivery-matrix-head span {
    padding: 0.15rem 0.35rem;
}

.alert-delivery-matrix-row {
    padding: 0.9rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(12, 20, 34, 0.98), rgba(8, 14, 24, 0.98));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.alert-delivery-matrix-row:hover {
    border-color: rgba(186, 141, 70, 0.3);
}

.alert-delivery-matrix-area {
    display: grid;
    gap: 0.35rem;
    align-content: start;
    padding-right: 0.35rem;
}

.alert-delivery-matrix-area h4 {
    margin: 0;
    font-size: 1.02rem;
}

.alert-delivery-matrix-channel {
    display: grid;
    gap: 0.55rem;
    align-content: start;
    padding: 0.8rem 0.85rem;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 0.95rem;
    background: rgba(15, 23, 42, 0.46);
    cursor: default;
}

.alert-delivery-matrix-channel input[type="checkbox"] {
    width: 1.1rem;
    height: 1.1rem;
    accent-color: var(--brand-b);
}

.alert-delivery-matrix-channel .form-check-input {
    margin: 0;
}

.alert-delivery-matrix-channel-label {
    display: block;
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(226, 232, 240, 0.78);
}

.alert-delivery-matrix-channel-body {
    display: grid;
    gap: 0.45rem;
}

.alert-delivery-matrix-channel .form-label {
    margin-bottom: 0;
}

.alert-delivery-matrix-actions {
    display: grid;
    align-content: start;
    justify-items: end;
    gap: 0.75rem;
    padding-left: 0.25rem;
}

.alert-delivery-matrix-actions .btn {
    white-space: nowrap;
}

.alert-delivery-channel-help {
    display: block;
    font-size: 0.76rem;
    color: var(--muted);
}

.alert-delivery-category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
    gap: 1rem;
    align-items: stretch;
}

.alert-delivery-category-card {
    display: grid;
    gap: 0.75rem;
    padding: 1rem 1.05rem;
    border-radius: 1.1rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: linear-gradient(180deg, rgba(12, 20, 34, 0.98), rgba(8, 14, 24, 0.98));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.theme-config-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
    gap: 1rem;
}

.theme-label-grid {
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
}

.theme-color-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: 0.9rem;
}

.theme-color-field {
    padding: 0.9rem 1rem;
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 1rem;
    background: rgba(15, 23, 42, 0.44);
}

.theme-color-input {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.theme-color-input .form-control-color {
    width: 3.25rem;
    min-width: 3.25rem;
    height: 2.5rem;
    padding: 0.18rem;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 0.8rem;
    background: rgba(9, 17, 30, 0.88);
}

.admin-query-grid {
    display: grid;
    grid-template-columns: minmax(15rem, 19rem) minmax(0, 1fr);
    gap: 1rem;
}

.admin-query-schema-list {
    display: grid;
    gap: 0.75rem;
    max-height: 38rem;
    overflow: auto;
    padding: 0.4rem;
    padding-right: 0.45rem;
    border-radius: 1rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: linear-gradient(180deg, rgba(8, 14, 26, 0.98), rgba(12, 21, 38, 0.98));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.admin-query-schema-item {
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
    text-align: left;
    padding: 0.9rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(148, 163, 184, 0.12) !important;
    background: linear-gradient(180deg, rgba(14, 24, 40, 0.98), rgba(8, 14, 24, 0.98)) !important;
    color: rgba(237, 243, 255, 0.96) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.admin-query-schema-item:hover {
    border-color: rgba(96, 165, 250, 0.34);
    background: linear-gradient(180deg, rgba(18, 31, 52, 0.98), rgba(10, 18, 30, 0.99));
    transform: translateY(-1px);
}

.admin-query-schema-item:focus-visible {
    outline: 2px solid rgba(96, 165, 250, 0.65);
    outline-offset: 2px;
}

.admin-query-schema-item .trade-event-filer {
    color: rgba(237, 243, 255, 0.98) !important;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.admin-query-schema-item .table-meta {
    color: rgba(159, 176, 205, 0.9) !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.72rem;
    margin-top: 0.25rem;
}

.admin-query-column-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.75rem;
}

.admin-query-column-list span {
    padding: 0.18rem 0.5rem;
    border-radius: 999px;
    background: rgba(96, 165, 250, 0.08);
    border: 1px solid rgba(96, 165, 250, 0.12);
    font-size: 0.75rem;
    color: rgba(226, 232, 240, 0.88);
}

.admin-query-column-list small {
    color: rgba(148, 163, 184, 0.8);
}

.admin-query-editor {
    min-height: 34rem;
    font-family: var(--mono);
    font-size: 0.9rem;
    line-height: 1.45;
    resize: vertical;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.ticker-analysis-shell {
    display: grid;
    gap: 1rem;
}

.ticker-analysis-controls {
    display: grid;
    gap: 0.75rem;
}

.ticker-analysis-inputs {
    display: grid;
    grid-template-columns: minmax(0, 18rem) auto;
    gap: 0.85rem;
    align-items: end;
}

.deep-research-inputs {
    grid-template-columns: minmax(0, 18rem) minmax(10rem, 12rem) minmax(12rem, 14rem) auto;
}

.perspective-search-inputs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.deep-research-search-group {
    grid-column: 1 / -1;
}

.member-perspective-lens-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 0.55rem;
}

.member-perspective-lens-item {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.7rem 0.8rem;
    border-radius: 0.8rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: rgba(15, 23, 42, 0.44);
    color: rgba(226, 232, 240, 0.94);
    font-size: 0.84rem;
}

.member-perspective-lens-item input {
    accent-color: var(--brand-a);
}

.ticker-analysis-actions {
    display: flex;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.ticker-analysis-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.ticker-analysis-correlation-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: 0.55rem;
    margin-top: 0.8rem;
}

.ticker-analysis-correlation-chip {
    display: grid;
    gap: 0.18rem;
    padding: 0.55rem 0.65rem;
    border-radius: 0.7rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 255, 255, 0.6);
}

.ticker-analysis-correlation-chip strong {
    font-size: 0.72rem;
    color: var(--text);
}

.ticker-analysis-correlation-chip span {
    font-size: 0.64rem;
    line-height: 1.15;
    color: var(--muted);
}

.ticker-analysis-score {
    color: rgba(96, 165, 250, 0.96);
    font-weight: 700;
}

.ticker-analysis-whales {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
}

.ticker-analysis-whale-chip {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    border: 1px solid rgba(245, 158, 11, 0.28);
    background: rgba(245, 158, 11, 0.1);
    color: rgba(254, 240, 138, 0.95);
    font-size: 0.78rem;
}

.landing-shell {
    margin-top: 0.75rem;
}

.landing-shell-rich {
    display: grid;
    gap: 1rem;
}

.landing-ticker-parade {
    position: relative;
    overflow: hidden;
    padding: 0.2rem 0;
    border-block: 1px solid rgba(148, 163, 184, 0.12);
    background: linear-gradient(90deg, rgba(7, 17, 31, 0.96), rgba(9, 17, 30, 0.82));
}

.landing-ticker-track {
    display: flex;
    width: max-content;
    gap: 0.65rem;
    animation: landingTickerParade 34s linear infinite;
}

.landing-ticker-chip {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    background: rgba(9, 17, 30, 0.72);
    color: rgba(237, 243, 255, 0.88);
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.landing-ticker-chip.up {
    border-color: rgba(74, 222, 128, 0.28);
    color: rgba(187, 247, 208, 0.96);
}

.landing-ticker-chip.down {
    border-color: rgba(251, 113, 133, 0.28);
    color: rgba(254, 205, 211, 0.96);
}

.landing-ticker-chip.neutral {
    border-color: rgba(96, 165, 250, 0.24);
    color: rgba(191, 219, 254, 0.95);
}

.landing-hero {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr);
    gap: 1.5rem;
    padding: 1.4rem;
}

.landing-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 10% 15%, rgba(79, 209, 197, 0.16), transparent 28%),
        radial-gradient(circle at 88% 22%, rgba(96, 165, 250, 0.18), transparent 30%),
        linear-gradient(135deg, rgba(7, 17, 31, 0.96), rgba(9, 17, 30, 0.82));
    pointer-events: none;
}

.landing-hero-rich::after {
    content: "";
    position: absolute;
    inset: 1rem;
    border-radius: 1.35rem;
    border: 1px solid rgba(255, 255, 255, 0.03);
    pointer-events: none;
}

.landing-hero > * {
    position: relative;
    z-index: 1;
}

.landing-hero-copy h1 {
    max-width: 12ch;
    margin-bottom: 0.9rem;
}

.landing-copy {
    max-width: 60ch;
    color: rgba(219, 231, 255, 0.82);
    font-size: 1.02rem;
}

.landing-actions {
    display: flex;
    gap: 0.8rem;
    flex-wrap: wrap;
    margin-top: 1.25rem;
}

.landing-stat-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 1.35rem;
}

.landing-visual {
    position: relative;
    min-height: 28rem;
}

.landing-jumbotron {
    position: relative;
    min-height: 31rem;
    overflow: hidden;
}

.landing-terminal-glow {
    position: absolute;
    border-radius: 999px;
    filter: blur(18px);
    opacity: 0.55;
}

.landing-terminal-glow-a {
    width: 11rem;
    height: 11rem;
    top: -1.5rem;
    right: 3rem;
    background: radial-gradient(circle, rgba(79, 209, 197, 0.26), transparent 70%);
}

.landing-terminal-glow-b {
    width: 9rem;
    height: 9rem;
    bottom: 2rem;
    left: 1rem;
    background: radial-gradient(circle, rgba(245, 158, 11, 0.22), transparent 70%);
}

.landing-screen-track {
    position: relative;
    z-index: 1;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(17rem, 24rem);
    gap: 1rem;
    width: max-content;
    animation: landingScreensDrift 42s linear infinite;
}

.landing-screen-card {
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 1.45rem;
    padding: 1rem;
    background:
        linear-gradient(180deg, rgba(14, 23, 38, 0.95), rgba(7, 15, 27, 0.9)),
        radial-gradient(circle at top right, rgba(96, 165, 250, 0.1), transparent 36%);
    box-shadow: 0 1.4rem 2.8rem rgba(2, 6, 23, 0.32);
    min-height: 20rem;
}

.landing-screen-card-wide {
    width: min(34rem, 76vw);
}

.landing-screen-card-photo {
    width: min(24rem, 62vw);
}

.landing-screen-head {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    align-items: flex-start;
    margin-bottom: 0.85rem;
}

.landing-screen-chrome {
    display: inline-flex;
    gap: 0.32rem;
    margin-right: auto;
}

.landing-screen-chrome span {
    width: 0.58rem;
    height: 0.58rem;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.28);
}

.landing-screen-chrome span:nth-child(1) {
    background: rgba(251, 113, 133, 0.82);
}

.landing-screen-chrome span:nth-child(2) {
    background: rgba(245, 158, 11, 0.82);
}

.landing-screen-chrome span:nth-child(3) {
    background: rgba(74, 222, 128, 0.82);
}

.landing-screen-brandbar {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    margin-bottom: 0.9rem;
    padding: 0.7rem 0.8rem;
    border-radius: 0.95rem;
    background: rgba(15, 23, 42, 0.44);
    border: 1px solid rgba(148, 163, 184, 0.1);
}

.landing-screen-logo {
    width: 2.1rem;
    height: 2.1rem;
    object-fit: contain;
}

.landing-screen-brandcopy strong,
.landing-screen-minihero strong {
    display: block;
    color: rgba(237, 243, 255, 0.96);
}

.landing-screen-brandcopy span,
.landing-screen-minihero span {
    display: block;
    color: rgba(159, 176, 205, 0.84);
    font-size: 0.78rem;
}

.landing-terminal-head,
.landing-surface-head {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    align-items: flex-start;
}

.landing-terminal-head h2 {
    margin: 0.2rem 0 0;
    font-size: 1.08rem;
}

.landing-terminal-chart {
    position: relative;
    height: 15rem;
    margin-top: 1rem;
    border-radius: 1.1rem;
    border: 1px solid rgba(148, 163, 184, 0.12);
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
        linear-gradient(180deg, rgba(7, 15, 27, 0.8), rgba(8, 16, 29, 0.96));
    background-size: 2.35rem 100%, 100% 2.35rem, auto;
    overflow: hidden;
}

.landing-chart-axis {
    position: absolute;
    inset: auto 0 2.2rem 0;
    height: 1px;
    background: rgba(148, 163, 184, 0.18);
}

.landing-chart-bars {
    position: absolute;
    inset: 1.1rem 1rem 2.5rem;
    display: flex;
    align-items: flex-end;
    gap: 0.45rem;
}

.landing-chart-bars span {
    flex: 1 1 0;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(180deg, rgba(96, 165, 250, 0.95), rgba(79, 209, 197, 0.42));
    box-shadow: 0 0.2rem 0.8rem rgba(96, 165, 250, 0.22);
}

.landing-chart-line {
    position: absolute;
    left: 0.9rem;
    right: 0.9rem;
    top: 1rem;
    bottom: 2.7rem;
    opacity: 0.94;
}

.landing-chart-line-cyan {
    background:
        linear-gradient(180deg, transparent 60%, rgba(79, 209, 197, 0.12) 60%),
        linear-gradient(135deg, transparent 0 10%, rgba(79, 209, 197, 0.98) 10% 12%, transparent 12% 22%, rgba(79, 209, 197, 0.98) 22% 24%, transparent 24% 32%, rgba(79, 209, 197, 0.98) 32% 34%, transparent 34% 50%, rgba(79, 209, 197, 0.98) 50% 52%, transparent 52% 66%, rgba(79, 209, 197, 0.98) 66% 68%, transparent 68%);
}

.landing-chart-line-blue {
    opacity: 0.74;
    background:
        linear-gradient(180deg, transparent 64%, rgba(96, 165, 250, 0.08) 64%),
        linear-gradient(135deg, transparent 0 16%, rgba(96, 165, 250, 0.95) 16% 18%, transparent 18% 28%, rgba(96, 165, 250, 0.95) 28% 30%, transparent 30% 43%, rgba(96, 165, 250, 0.95) 43% 45%, transparent 45% 59%, rgba(96, 165, 250, 0.95) 59% 61%, transparent 61% 75%, rgba(96, 165, 250, 0.95) 75% 77%, transparent 77%);
}

.landing-chart-labels {
    position: absolute;
    left: 1rem;
    right: 1rem;
    bottom: 0.75rem;
    display: flex;
    justify-content: space-between;
    color: rgba(159, 176, 205, 0.82);
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.landing-terminal-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.7rem;
    margin-top: 0.9rem;
}

.landing-terminal-metric {
    padding: 0.7rem 0.75rem;
    border-radius: 0.9rem;
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(148, 163, 184, 0.12);
}

.landing-terminal-metric span {
    display: block;
    font-size: 0.74rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(159, 176, 205, 0.82);
}

.landing-terminal-metric strong {
    display: block;
    margin-top: 0.35rem;
    font-size: 1.06rem;
}

.landing-surface-mini {
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 1.15rem;
    padding: 0.95rem;
    background: rgba(11, 20, 33, 0.84);
    min-height: 0;
}

.landing-surface-head strong {
    font-size: 0.95rem;
}

.landing-photo-grid {
    display: grid;
    gap: 0.85rem;
    margin-top: 0.85rem;
}

.landing-photo-panel {
    min-height: 7.2rem;
    border-radius: 1rem;
    border: 1px solid rgba(148, 163, 184, 0.12);
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
        linear-gradient(180deg, rgba(7, 15, 27, 0.8), rgba(8, 16, 29, 0.96));
    background-size: 1.4rem 100%, 100% 1.4rem, auto;
    overflow: hidden;
    position: relative;
}

.landing-photo-line {
    position: absolute;
    inset: 1rem;
}

.landing-photo-line-green {
    background:
        linear-gradient(180deg, transparent 64%, rgba(74, 222, 128, 0.12) 64%),
        linear-gradient(135deg, transparent 0 8%, rgba(74, 222, 128, 0.95) 8% 10%, transparent 10% 18%, rgba(74, 222, 128, 0.95) 18% 20%, transparent 20% 34%, rgba(74, 222, 128, 0.95) 34% 36%, transparent 36% 52%, rgba(74, 222, 128, 0.95) 52% 54%, transparent 54% 72%, rgba(74, 222, 128, 0.95) 72% 74%, transparent 74%);
}

.landing-photo-bars {
    position: absolute;
    inset: 1rem;
    display: flex;
    align-items: flex-end;
    gap: 0.55rem;
}

.landing-photo-bars span {
    flex: 1 1 0;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(180deg, rgba(245, 158, 11, 0.95), rgba(96, 165, 250, 0.42));
}

.landing-screen-table {
    display: grid;
    gap: 0.45rem;
    margin-top: 0.85rem;
}

.landing-screen-table.compact {
    margin-top: 0.7rem;
}

.landing-screen-row {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) auto auto;
    gap: 0.8rem;
    align-items: center;
    padding: 0.58rem 0.72rem;
    border-radius: 0.8rem;
    background: rgba(15, 23, 42, 0.44);
    border: 1px solid rgba(148, 163, 184, 0.1);
    color: rgba(226, 232, 240, 0.9);
    font-size: 0.78rem;
}

.landing-screen-row .up {
    color: rgba(134, 239, 172, 0.96);
    font-weight: 700;
}

.landing-screen-row .neutral {
    color: rgba(191, 219, 254, 0.95);
    font-weight: 700;
}

.landing-screen-minihero {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    padding: 0.8rem;
    border-radius: 0.95rem;
    background: rgba(15, 23, 42, 0.44);
    border: 1px solid rgba(148, 163, 184, 0.1);
    margin-bottom: 0.85rem;
}

.landing-screen-minihero-icon {
    width: 2.2rem;
    height: 2.2rem;
    object-fit: contain;
}

.landing-mini-chart-large {
    height: 7.2rem;
}

.landing-mini-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    margin-top: 0.9rem;
}

.landing-mini-grid div {
    padding: 0.65rem 0.7rem;
    border-radius: 0.85rem;
    background: rgba(15, 23, 42, 0.56);
    border: 1px solid rgba(148, 163, 184, 0.1);
}

.landing-mini-grid span {
    display: block;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(159, 176, 205, 0.82);
}

.landing-mini-grid strong {
    display: block;
    margin-top: 0.35rem;
}

.landing-ranking-list {
    display: grid;
    gap: 0.6rem;
    margin-top: 1rem;
}

.landing-ranking-row {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    align-items: center;
    padding: 0.7rem 0.8rem;
    border-radius: 0.85rem;
    background: rgba(15, 23, 42, 0.56);
    border: 1px solid rgba(148, 163, 184, 0.1);
}

.landing-orb {
    position: absolute;
    border-radius: 999px;
    filter: blur(8px);
    opacity: 0.8;
}

.landing-orb-a {
    width: 12rem;
    height: 12rem;
    right: 2rem;
    top: 1rem;
    background: radial-gradient(circle, rgba(79, 209, 197, 0.35), transparent 72%);
}

.landing-orb-b {
    width: 10rem;
    height: 10rem;
    left: 0.5rem;
    bottom: 1.5rem;
    background: radial-gradient(circle, rgba(245, 158, 11, 0.26), transparent 72%);
}

.landing-market-board {
    position: relative;
    margin-left: auto;
    width: min(100%, 34rem);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 1.5rem;
    padding: 1rem;
    background: rgba(7, 15, 27, 0.82);
    backdrop-filter: blur(18px);
    box-shadow: 0 1.2rem 2.4rem rgba(2, 6, 23, 0.35);
}

.landing-board-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.landing-board-header h2 {
    font-size: 1.1rem;
    margin: 0.2rem 0 0;
}

.landing-board-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.landing-board-card,
.landing-feature-card,
.landing-journey-step {
    border: 1px solid rgba(148, 163, 184, 0.14);
    background: rgba(15, 23, 42, 0.45);
    border-radius: 1.15rem;
}

.landing-board-card {
    padding: 0.95rem;
}

.landing-board-title {
    font-size: 0.78rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(159, 176, 205, 0.84);
}

.landing-board-value {
    margin-top: 0.45rem;
    font-weight: 600;
    color: rgba(237, 243, 255, 0.94);
    line-height: 1.35;
}

.landing-mini-chart {
    height: 4.8rem;
    margin-top: 0.8rem;
    border-radius: 0.95rem;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0)),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: auto, 1.1rem 1.1rem, 1.1rem 1.1rem;
    position: relative;
    overflow: hidden;
}

.landing-mini-chart::after {
    content: "";
    position: absolute;
    inset: 0.7rem 0.6rem 0.6rem;
    border-radius: 0.7rem;
    opacity: 0.96;
}

.landing-mini-chart-up::after {
    background: linear-gradient(180deg, transparent 52%, rgba(74, 222, 128, 0.16) 52%),
        linear-gradient(135deg, transparent 0 14%, rgba(74, 222, 128, 0.94) 14% 16%, transparent 16% 32%, rgba(74, 222, 128, 0.94) 32% 34%, transparent 34% 48%, rgba(74, 222, 128, 0.94) 48% 50%, transparent 50% 66%, rgba(74, 222, 128, 0.94) 66% 68%, transparent 68%);
}

.landing-mini-chart-cyan::after {
    background: linear-gradient(180deg, transparent 54%, rgba(79, 209, 197, 0.14) 54%),
        linear-gradient(135deg, transparent 0 10%, rgba(79, 209, 197, 0.94) 10% 12%, transparent 12% 24%, rgba(79, 209, 197, 0.94) 24% 26%, transparent 26% 40%, rgba(79, 209, 197, 0.94) 40% 42%, transparent 42% 62%, rgba(79, 209, 197, 0.94) 62% 64%, transparent 64%);
}

.landing-mini-chart-gold::after {
    background: linear-gradient(180deg, transparent 55%, rgba(245, 158, 11, 0.14) 55%),
        linear-gradient(135deg, transparent 0 8%, rgba(245, 158, 11, 0.94) 8% 10%, transparent 10% 18%, rgba(245, 158, 11, 0.94) 18% 20%, transparent 20% 30%, rgba(245, 158, 11, 0.94) 30% 32%, transparent 32% 48%, rgba(245, 158, 11, 0.94) 48% 50%, transparent 50% 68%, rgba(245, 158, 11, 0.94) 68% 70%, transparent 70%);
}

.landing-alert-pill {
    display: inline-flex;
    align-items: center;
    margin-top: 0.9rem;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: rgba(251, 113, 133, 0.12);
    border: 1px solid rgba(251, 113, 133, 0.28);
    color: rgba(255, 217, 223, 0.96);
    font-size: 0.8rem;
    font-weight: 600;
}

.landing-section-grid .surface-card,
.landing-journey {
    padding: 1.15rem;
}

.landing-feature-list {
    margin: 1rem 0 0;
    padding-left: 1.1rem;
    color: rgba(219, 231, 255, 0.84);
}

.landing-feature-list li + li {
    margin-top: 0.55rem;
}

.landing-journey-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.9rem;
}

.landing-journey-step {
    padding: 1rem;
}

.landing-step-index {
    display: inline-flex;
    width: 2.25rem;
    height: 2.25rem;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(79, 209, 197, 0.18), rgba(96, 165, 250, 0.2));
    color: rgba(237, 243, 255, 0.96);
    font-weight: 700;
    margin-bottom: 0.85rem;
}

.landing-story-card,
.landing-news-card {
    height: 100%;
}

.landing-story-grid {
    display: grid;
    gap: 0.95rem;
}

.landing-story-panel {
    padding: 1rem;
    border-radius: 1.15rem;
    border: 1px solid rgba(148, 163, 184, 0.12);
    background: rgba(15, 23, 42, 0.42);
}

.landing-story-label {
    font-size: 0.72rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(159, 176, 205, 0.82);
}

.landing-story-title {
    margin-top: 0.45rem;
    font-weight: 700;
    color: rgba(237, 243, 255, 0.96);
}

.landing-feed-list,
.landing-alert-stack,
.landing-news-list {
    display: grid;
    gap: 0.7rem;
    margin-top: 0.95rem;
}

.landing-feed-row,
.landing-alert-card,
.landing-news-item {
    padding: 0.8rem 0.9rem;
    border-radius: 0.95rem;
    background: rgba(11, 20, 33, 0.74);
    border: 1px solid rgba(148, 163, 184, 0.12);
}

.landing-feed-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.8rem;
    align-items: center;
}

.landing-feed-time {
    font-size: 0.72rem;
    color: rgba(159, 176, 205, 0.8);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.landing-feed-event {
    color: rgba(237, 243, 255, 0.92);
}

.landing-feed-tag {
    display: inline-flex;
    align-items: center;
    padding: 0.28rem 0.58rem;
    border-radius: 999px;
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.landing-feed-tag.up {
    background: rgba(74, 222, 128, 0.12);
    color: rgba(187, 247, 208, 0.96);
}

.landing-feed-tag.neutral {
    background: rgba(96, 165, 250, 0.12);
    color: rgba(191, 219, 254, 0.95);
}

.landing-heat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.6rem;
    margin-top: 0.95rem;
}

.landing-heat-grid span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 3.2rem;
    border-radius: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.landing-heat-grid .up {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.38), rgba(74, 222, 128, 0.14));
    color: rgba(220, 252, 231, 0.95);
}

.landing-heat-grid .down {
    background: linear-gradient(135deg, rgba(244, 63, 94, 0.34), rgba(251, 113, 133, 0.14));
    color: rgba(254, 205, 211, 0.95);
}

.landing-heat-grid .neutral {
    background: linear-gradient(135deg, rgba(96, 165, 250, 0.28), rgba(96, 165, 250, 0.1));
    color: rgba(219, 234, 254, 0.95);
}

.landing-alert-card strong,
.landing-news-item strong {
    display: block;
    color: rgba(237, 243, 255, 0.96);
}

.landing-alert-card span,
.landing-news-item p {
    display: block;
    margin-top: 0.35rem;
    color: rgba(203, 213, 225, 0.82);
}

.landing-news-source {
    display: inline-flex;
    margin-bottom: 0.45rem;
    color: rgba(159, 176, 205, 0.84);
    font-size: 0.72rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

@keyframes landingTickerParade {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@keyframes landingScreensDrift {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-41%);
    }
}

.admin-query-results {
    border-top: 1px solid rgba(148, 163, 184, 0.12);
    padding-top: 1rem;
}

.admin-query-results .table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.admin-query-flyout {
    width: min(38rem, calc(100vw - 1rem));
}

.admin-query-script-panel {
    border: 1px solid var(--line);
    border-radius: 1rem;
    padding: 1rem;
    background: color-mix(in srgb, var(--surface) 80%, var(--bg) 20%);
}

.admin-query-script-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    gap: 0.75rem;
    align-items: center;
}

.admin-query-script-check {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    color: var(--muted);
}

.admin-query-script-list {
    display: grid;
    gap: 0.6rem;
}

.admin-query-script-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.75rem 0.85rem;
    border-radius: 0.9rem;
    border: 1px solid var(--line);
    background: color-mix(in srgb, var(--surface) 76%, var(--bg) 24%);
    color: var(--text);
}

.admin-query-script-item.selected {
    border-color: color-mix(in srgb, var(--brand-b) 58%, var(--brand-a) 42%);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--brand-b) 18%, transparent) inset;
}

.admin-query-script-load {
    appearance: none;
    background: transparent;
    border: 0;
    color: inherit;
    text-align: left;
    padding: 0;
}

.admin-query-run-options {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.admin-query-erd {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.admin-query-erd-column {
    display: grid;
    gap: 0.65rem;
}

.admin-query-erd-center {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
}

.admin-query-erd-node {
    display: grid;
    gap: 0.15rem;
    padding: 0.8rem 0.9rem;
    border-radius: 0.9rem;
    border: 1px solid var(--line);
    background: color-mix(in srgb, var(--surface) 78%, var(--bg) 22%);
    color: var(--text);
    text-align: left;
}

.admin-query-erd-node.side {
    appearance: none;
    cursor: pointer;
}

.admin-query-erd-node.active {
    min-width: 10rem;
    text-align: center;
    border-color: color-mix(in srgb, var(--brand-b) 58%, var(--brand-a) 42%);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--brand-b) 18%, transparent) inset;
}

.admin-query-erd-node small {
    color: var(--muted);
}

.admin-query-table th,
.admin-query-table td {
    white-space: nowrap;
    vertical-align: top;
}

.admin-query-table {
    --bs-table-color: var(--text);
    --bs-table-bg: transparent;
    --bs-table-border-color: var(--line);
    --bs-table-striped-bg: color-mix(in srgb, var(--surface) 74%, var(--bg) 26%);
    --bs-table-striped-color: var(--text);
    --bs-table-hover-bg: color-mix(in srgb, var(--brand-a) 10%, var(--surface) 90%);
    --bs-table-hover-color: var(--text);
    background: color-mix(in srgb, var(--surface) 82%, var(--bg) 18%);
    border: 1px solid var(--line);
    border-radius: 1rem;
    overflow: hidden;
}

.admin-query-table thead th {
    background: linear-gradient(180deg, color-mix(in srgb, var(--surface) 78%, white 22%), color-mix(in srgb, var(--surface) 66%, var(--bg) 34%));
    color: var(--text);
    border-bottom: 1px solid color-mix(in srgb, var(--brand-b) 18%, var(--line) 82%);
    font-weight: 700;
}

.admin-query-table tbody td {
    background: transparent;
    color: var(--text);
}

.admin-query-results .table-wrap {
    border: 1px solid var(--line);
    border-radius: 1rem;
    background: color-mix(in srgb, var(--surface) 80%, var(--bg) 20%);
    padding: 0.15rem;
}

.trade-flyout-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.trade-flyout-kpi,
.trade-flyout-highlight,
.trade-event-row {
    border: 1px solid var(--line);
    border-radius: 1rem;
    background: color-mix(in srgb, var(--surface) 88%, var(--bg) 12%);
}

.trade-flyout-panel .card.bg-dark,
.trade-flyout-panel .list-group-item.bg-dark,
.trade-flyout-panel .bg-dark,
.trade-flyout-panel .table-dark,
.trade-flyout-panel .admin-query-script-panel {
    background: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--line) !important;
}

.trade-flyout-panel .table-dark,
.trade-flyout-panel .admin-query-table {
    --bs-table-color: var(--text);
    --bs-table-bg: transparent !important;
    --bs-table-striped-color: var(--text);
    --bs-table-hover-color: var(--text);
    --bs-table-active-color: var(--text);
    --bs-table-border-color: var(--line);
    --bs-table-striped-bg: color-mix(in srgb, var(--surface) 74%, var(--bg) 26%) !important;
    --bs-table-hover-bg: color-mix(in srgb, var(--brand-a) 10%, var(--surface) 90%) !important;
    background: transparent !important;
}

.trade-flyout-panel .table > :not(caption) > * > *,
.trade-flyout-panel .admin-query-table > :not(caption) > * > * {
    background-color: transparent !important;
    color: var(--text) !important;
    box-shadow: none !important;
}

.trade-flyout-panel .admin-query-results .table-wrap,
.trade-flyout-panel .admin-query-table,
.trade-flyout-panel .admin-query-script-panel {
    background: var(--surface) !important;
    border-color: var(--line) !important;
}

.trade-flyout-panel .text-light,
.trade-flyout-panel .card.bg-dark *,
.trade-flyout-panel .list-group-item.bg-dark * {
    color: inherit !important;
}

.trade-flyout-kpi {
    padding: 0.85rem 0.95rem;
}

.trade-flyout-kpi strong {
    display: block;
    margin-top: 0.25rem;
    font-size: 1rem;
}

.trade-flyout-sparkline {
    height: 6.5rem;
    margin-bottom: 1rem;
    padding: 0.75rem;
    border-radius: 1rem;
    background: color-mix(in srgb, var(--surface) 74%, var(--bg) 26%);
    border: 1px solid var(--line);
}

.trade-flyout-section {
    margin-bottom: 1rem;
}

.trade-flyout-section h4 {
    margin-bottom: 0.65rem;
    font-size: 0.95rem;
}

.trade-flyout-highlight {
    padding: 0.9rem 1rem;
}

.stock-flyout-action-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.portfolio-alerts-section.is-focused .trade-flyout-highlight {
    border-color: color-mix(in srgb, var(--brand-a) 52%, var(--brand-c) 48%);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--brand-a) 18%, transparent), 0 0 24px color-mix(in srgb, var(--brand-a) 14%, transparent);
}

.portfolio-alerts-banner {
    margin-bottom: 0.9rem;
    padding: 0.7rem 0.85rem;
    border-radius: 0.85rem;
    border: 1px solid rgba(186, 141, 70, 0.24);
    background: linear-gradient(135deg, rgba(255, 247, 230, 0.96), rgba(248, 238, 214, 0.98));
    color: #7a5a1e;
    font-size: 0.8rem;
    box-shadow: 0 0 16px rgba(245, 158, 11, 0.14);
}

.trade-event-list {
    display: grid;
    gap: 0.7rem;
}

.trade-event-row {
    display: grid;
    gap: 0.45rem;
    padding: 0.9rem 1rem;
    text-decoration: none;
}

.trade-event-filer {
    font-weight: 600;
    color: var(--text);
    font-size: 0.68rem;
}

.form-label,
.trade-flyout-header p,
.trade-flyout-highlight-meta,
.trade-flyout-kpi span,
.page-alert-card-head p,
.alert-inbox-meta,
.alert-inbox-item time,
.shell-userlabel,
.shell-footer-copy,
.shell-footer-links,
.table-meta,
.text-muted {
    color: color-mix(in srgb, var(--text) 72%, var(--muted) 28%) !important;
}

.trade-flyout-kpi strong,
.alert-inbox-head h3,
.login-card .form-label,
.page-alert-card-head h3,
.alert-inbox-card strong,
.alert-inbox-card .fw-semibold,
.alert-inbox-reader,
.trade-flyout-section h4 {
    color: var(--text) !important;
}

.form-control.bg-dark,
.form-select.bg-dark,
.form-control.bg-dark:focus,
.form-select.bg-dark:focus,
.form-control.bg-dark.text-light,
.form-select.bg-dark.text-light {
    background: color-mix(in srgb, var(--surface) 92%, white 8%) !important;
    color: var(--text) !important;
    border-color: color-mix(in srgb, var(--text) 18%, white 82%) !important;
    box-shadow: none !important;
}

.form-control.bg-dark::placeholder {
    color: color-mix(in srgb, var(--text) 54%, white 46%) !important;
}

.text-light,
.btn-outline-light,
.btn-outline-light:hover {
    color: var(--text) !important;
}

.bg-dark {
    background-color: rgba(255, 255, 255, 0.9) !important;
}

.table-dark {
    --bs-table-color: var(--text);
    --bs-table-bg: transparent;
    --bs-table-striped-color: var(--text);
    --bs-table-hover-color: var(--text);
    --bs-table-active-color: var(--text);
    --bs-table-border-color: rgba(21, 35, 58, 0.08);
}

.member-label {
    display: inline-flex;
    align-items: center;
    gap: 0.34rem;
    vertical-align: middle;
}

.member-label-photo {
    width: 1.35rem;
    height: 1.35rem;
    object-fit: cover;
    border-radius: 999px;
    display: block;
    flex: 0 0 auto;
    background: rgba(15, 23, 42, 0.08);
    border: 1px solid rgba(148, 163, 184, 0.32);
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.14);
}

.member-label-photo-lg {
    width: 1.7rem;
    height: 1.7rem;
}

.action-image-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.15rem;
    height: 3.15rem;
    min-width: 3.15rem;
    min-height: 3.15rem;
    padding: 0;
    border-radius: 999px !important;
    aspect-ratio: 1 / 1;
    flex: 0 0 3.15rem;
    overflow: hidden;
    touch-action: manipulation;
}

.action-image-button.btn-sm {
    width: 2.6rem;
    height: 2.6rem;
    min-width: 2.6rem;
    min-height: 2.6rem;
    flex-basis: 2.6rem;
    padding: 0;
    border-radius: 999px !important;
}

.action-image-icon {
    width: 1.5rem;
    height: 1.5rem;
    object-fit: contain;
    display: block;
}

.dashboard-logo-mark,
.page-monkey-art img,
.branding-logo-preview-image {
    width: clamp(88px, 12vw, 148px);
    height: clamp(88px, 12vw, 148px);
    max-width: 100%;
    object-fit: contain;
    object-position: center;
    aspect-ratio: 1 / 1;
    display: block;
    border-radius: 999px;
    padding: clamp(0.28rem, 0.6vw, 0.52rem);
    box-sizing: border-box;
    overflow: hidden;
    background: radial-gradient(circle at 32% 24%, rgba(255, 255, 255, 0.98) 0%, rgba(245, 249, 252, 0.96) 58%, rgba(230, 237, 244, 0.92) 100%);
    box-shadow: 0 18px 34px rgba(21, 35, 58, 0.12);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.social-monkey-post-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
}

.social-monkey-post-card {
    border: 1px solid rgba(21, 35, 58, 0.1);
    border-radius: 1.25rem;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.82);
}

.action-image-button.btn-sm .action-image-icon {
    width: 1.3rem;
    height: 1.3rem;
}

.btn:not(.action-image-button):has(> .action-image-icon),
.btn:not(.action-image-button):has(> .sprite-action-icon) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    min-width: 3rem;
    min-height: 3rem;
    padding: 0;
    border-radius: 999px !important;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    touch-action: manipulation;
}

.btn.btn-sm:not(.action-image-button):has(> .action-image-icon),
.btn.btn-sm:not(.action-image-button):has(> .sprite-action-icon) {
    width: 2.6rem;
    height: 2.6rem;
    min-width: 2.6rem;
    min-height: 2.6rem;
}

button:has(> img:only-child),
button:has(> svg:only-child),
a.btn:has(> img:only-child),
a.btn:has(> svg:only-child),
button:has(> .action-image-icon:only-child),
button:has(> .sprite-action-icon:only-child),
a.btn:has(> .action-image-icon:only-child),
a.btn:has(> .sprite-action-icon:only-child) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.15rem;
    height: 3.15rem;
    min-width: 3.15rem;
    min-height: 3.15rem;
    padding: 0 !important;
    border-radius: 999px !important;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    flex: 0 0 3.15rem;
}

button.btn-sm:has(> img:only-child),
button.btn-sm:has(> svg:only-child),
a.btn.btn-sm:has(> img:only-child),
a.btn.btn-sm:has(> svg:only-child),
button.btn-sm:has(> .action-image-icon:only-child),
button.btn-sm:has(> .sprite-action-icon:only-child),
a.btn.btn-sm:has(> .action-image-icon:only-child),
a.btn.btn-sm:has(> .sprite-action-icon:only-child) {
    width: 2.6rem;
    height: 2.6rem;
    min-width: 2.6rem;
    min-height: 2.6rem;
    flex-basis: 2.6rem;
}

.action-image-button:focus-visible,
.btn:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible,
.text-window-option:focus-visible {
    outline: 3px solid var(--focus-ring);
    outline-offset: 2px;
}

.form-control,
.form-select {
    min-height: 3.15rem;
    border-radius: 1rem;
    border-color: rgba(15, 23, 42, 0.2);
    color: var(--text);
}

.text-window-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    min-height: 2.6rem;
    padding-top: 0.2rem;
}

.text-window-option {
    appearance: none;
    border: 0;
    background: transparent;
    color: #000000 !important;
    min-height: 2.75rem;
    padding: 0.2rem 0;
    font: inherit;
    font-weight: 700;
    letter-spacing: 0.01em;
    text-decoration: none;
    cursor: pointer;
    transition: color 160ms ease, opacity 160ms ease;
}

.text-window-option:hover,
.text-window-option:focus-visible {
    color: #000000 !important;
    outline: none;
    text-decoration: underline;
}

.text-window-option.is-active {
    color: #000000 !important;
}

.text-window-option:not(:last-child)::after {
    content: "|";
    margin-left: 0.4rem;
    color: #000000 !important;
    opacity: 0.6;
}

.sticky-filter-toolbar,
.sticky-filter-toolbar *,
.sticky-filter-toolbar .form-label,
.sticky-filter-toolbar label,
.sticky-filter-toolbar .table-meta,
.sticky-filter-toolbar .text-window-filter,
.sticky-filter-toolbar .text-window-option,
.sticky-filter-toolbar .btn,
.sticky-filter-toolbar .btn-glass,
.sticky-filter-toolbar .btn-gradient,
.sticky-filter-toolbar .btn-outline-light,
.sticky-filter-toolbar .form-select,
.sticky-filter-toolbar .form-control,
.sticky-filter-toolbar .form-select option,
.sticky-filter-toolbar .form-control::placeholder {
    color: #000000 !important;
}

.sticky-filter-toolbar .text-window-option:hover,
.sticky-filter-toolbar .text-window-option:focus-visible,
.sticky-filter-toolbar .text-window-option.is-active {
    color: #000000 !important;
}

.sticky-filter-toolbar .action-image-icon,
.sticky-filter-toolbar .sprite-action-icon {
    color: #000000 !important;
    fill: currentColor;
}

.entity-share-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    border-radius: 999px;
    color: var(--brand-b);
    font-size: 0.78rem;
    line-height: 1;
    cursor: pointer;
    user-select: none;
}

.entity-share-link:hover,
.entity-share-link:focus-visible {
    background: rgba(25, 83, 83, 0.12);
    color: var(--text);
    outline: none;
}

.member-label-button {
    appearance: none;
    border: 0;
    background: transparent;
    padding: 0.1rem 0.18rem;
    margin: 0;
    color: inherit;
    font: inherit;
    text-align: left;
    line-height: inherit;
    text-decoration: none;
    cursor: pointer;
    border-radius: 0.45rem;
    touch-action: manipulation;
}

.member-label-button:hover {
    color: inherit;
}

.member-label-button:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--brand-a) 65%, white 35%);
    outline-offset: 1px;
    background: color-mix(in srgb, var(--brand-a) 14%, transparent);
}

.member-label-party-icon {
    width: 1.02rem;
    height: 1.02rem;
    object-fit: contain;
    border-radius: 999px;
    display: block;
    background: transparent;
    filter: drop-shadow(0 0 3px rgba(7, 17, 31, 0.16));
}

.party-chip,
.member-meta-party-row {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.party-chip {
    padding: 0.18rem 0.48rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(21, 35, 58, 0.1);
    color: #142238;
    line-height: 1;
}

.party-chip-compact {
    padding: 0.14rem 0.42rem;
}

.party-chip-icon {
    width: 0.95rem;
    height: 0.95rem;
    object-fit: contain;
    flex: 0 0 auto;
}

.party-chip-label {
    font-size: 0.72rem;
    font-weight: 700;
    color: #142238;
}

.member-activity-active,
.member-activity-active span,
.member-activity-active strong,
.member-activity-active b,
.member-activity-active small,
.member-activity-active:link,
.member-activity-active:visited,
.member-activity-active:hover,
.member-activity-active:focus,
span.member-activity-active,
span.member-activity-active:hover,
span.member-activity-active:focus {
    color: #000000 !important;
    background: rgba(255, 243, 205, 0.96);
    border-radius: 0.45rem;
    padding: 0.08rem 0.36rem;
    text-shadow: none;
    box-shadow: 0 0 0 1px rgba(17, 24, 39, 0.08);
    animation: none;
}

.tracked-members-tv-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.tracked-members-tv-metric {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
    padding: 0.55rem 0.7rem;
    border-radius: 0.7rem;
    background: rgba(255, 255, 255, 0.06);
}

.ticker-member-flow-kpis,
.ticker-member-flow-research-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
}

.ticker-member-flow-kpis > div,
.ticker-member-flow-research-card {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.65rem 0.75rem;
    border-radius: 0.65rem;
    background: rgba(255, 255, 255, 0.05);
}

.ticker-member-flow-kpis span,
.ticker-member-flow-research-card span {
    font-size: 0.72rem;
    color: var(--muted);
}

.ticker-member-flow-kpis strong,
.ticker-member-flow-research-card strong {
    font-size: 1rem;
    color: var(--text);
}

.ticker-member-flow-research-card small {
    color: var(--muted);
}

.ticker-member-flow-chart {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.5rem;
    align-items: end;
    min-height: 8.5rem;
}

.ticker-member-flow-chart-detail {
    margin: 0.3rem 0 0.45rem;
    gap: 0.18rem;
    min-height: 1.5rem;
}

.ticker-member-flow-month {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.12rem;
    min-width: 0;
}

.ticker-member-flow-month > span,
.ticker-member-flow-month > small {
    font-size: 0.68rem;
    line-height: 1.05;
    color: var(--muted);
    text-align: center;
}

.trade-flyout-section:has(.ticker-member-flow-chart-detail) {
    margin-bottom: 0.4rem;
}

.trade-flyout-section:has(.ticker-member-flow-chart-detail) h4 {
    margin-bottom: 0.35rem;
}

.ticker-member-flow-chart-detail .ticker-member-flow-bars {
    min-height: 0.95rem;
    gap: 0.08rem;
}

.ticker-member-flow-chart-detail .ticker-member-flow-bar {
    width: min(0.38rem, 100%);
    border-radius: 0.12rem 0.12rem 0 0;
}

.ticker-member-flow-chart-detail .ticker-member-flow-month {
    gap: 0.03rem;
}

.ticker-member-flow-chart-detail .ticker-member-flow-month > span,
.ticker-member-flow-chart-detail .ticker-member-flow-month > small {
    font-size: 0.5rem;
    line-height: 1;
}

.ticker-member-flow-bars {
    display: flex;
    align-items: end;
    justify-content: center;
    gap: 0.22rem;
    width: 100%;
    min-height: 5.5rem;
}

.ticker-member-flow-bar {
    width: min(1.1rem, 100%);
    min-height: 0;
    border-radius: 0.35rem 0.35rem 0 0;
}

.ticker-member-flow-bar-member {
    background: #2563eb;
}

.ticker-member-flow-bar-other {
    background: #94a3b8;
}

.ticker-member-flow-row-chart-wrap {
    min-width: 100%;
    min-height: 10rem;
    height: 10rem;
}

.ticker-member-flow-row-chart-wrap-tv {
    min-height: 8rem;
    height: 8rem;
}

.ticker-member-flow-chart-row td {
    padding-top: 0.2rem !important;
    padding-bottom: 0.85rem !important;
}

@media (max-width: 900px) {
    .ticker-member-flow-kpis,
    .ticker-member-flow-research-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.tracked-members-tv-metric-label {
    font-size: 0.72rem;
    letter-spacing: 0;
    text-transform: uppercase;
    color: rgba(226, 232, 240, 0.8);
}

.tracked-members-tv-investor-groups {
    display: grid;
    gap: 0.8rem;
}

.tracked-members-tv-investor-group {
    display: grid;
    gap: 0.38rem;
}

.tracked-members-tv-investor-label {
    font-size: 0.76rem;
    font-weight: 700;
    text-transform: uppercase;
    color: rgba(226, 232, 240, 0.82);
}

.tracked-members-tv-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.tracked-members-tv-chip {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.3rem 0.72rem;
    border-radius: 999px;
    background: #f8fafc;
    color: #111827;
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.2;
}

.tracked-members-tv-chip-empty {
    background: rgba(148, 163, 184, 0.22);
    color: #e2e8f0;
}

.member-shared-ticker {
    transition: text-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.ticker-label {
    display: inline-flex;
    align-items: center;
    gap: 0.28rem;
    vertical-align: middle;
}

.ticker-label-button {
    border: 0;
    padding: 0.1rem 0.18rem;
    background: transparent;
    color: inherit;
    font: inherit;
    line-height: inherit;
    cursor: pointer;
    border-radius: 0.45rem;
    touch-action: manipulation;
}

.ticker-label-button:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--brand-a) 65%, white 35%);
    outline-offset: 1px;
    background: color-mix(in srgb, var(--brand-a) 14%, transparent);
}

.tv-mode-view .entity-share-link,
.tv-mode-footer .entity-share-link {
    display: none;
}

.ticker-label-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.1rem;
    padding: 0.08rem 0.38rem;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

.ticker-label-badge-watchlist {
    background: rgba(186, 141, 70, 0.16);
    border: 1px solid rgba(186, 141, 70, 0.2);
    color: #7a561f;
}

.ticker-label-badge-portfolio {
    background: rgba(25, 83, 83, 0.14);
    border: 1px solid rgba(25, 83, 83, 0.18);
    color: #195353;
}

.ticker-label-badge-finra {
    background: rgba(15, 23, 42, 0.1);
    border: 1px solid rgba(15, 23, 42, 0.14);
    color: #111827;
}

.ticker-label-whale {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    object-fit: contain;
    background: transparent;
    filter: drop-shadow(0 0 8px rgba(45, 212, 191, 0.55));
    animation: whale-indicator-float 1.8s ease-in-out infinite;
}

.ticker-label-whale-button {
    border: 0;
    background: transparent;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.ticker-label-whale-lg {
    width: 1.35rem;
    height: 1.35rem;
}

.ticker-label-whale-special {
    filter: drop-shadow(0 0 10px rgba(251, 191, 36, 0.72));
}

#filings .member-label-party-frame {
    width: 1.05rem;
    height: 1.05rem;
}

#filings .member-label-party-icon {
    width: 0.94rem;
    height: 0.94rem;
}

.ticker-label-mover {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0.8rem;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1;
    animation: mover-indicator-pulse 1.7s ease-in-out infinite;
}

.ticker-label-mover-lg {
    font-size: 0.88rem;
}

.ticker-label-mover-gainer {
    color: #1f7a3d;
    text-shadow: none;
}

.ticker-label-mover-loser {
    color: #b42318;
    text-shadow: none;
}

.ticker-label-mover-neutral {
    color: var(--muted);
}

.whale-flyout-panel {
    border-left: 1px solid color-mix(in srgb, var(--brand-b) 42%, var(--line) 58%);
    box-shadow: -24px 0 60px color-mix(in srgb, var(--brand-b) 18%, transparent);
}

.whale-flyout-title {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
}

.whale-flyout-copy {
    font-size: 0.95rem;
    line-height: 1.65;
}

.whale-alias-badge {
    letter-spacing: 0.04em;
}

.member-shared-ticker-active {
    color: #184a8c !important;
    text-shadow: none;
    animation: none;
}

.mover-ticker-gainer-active {
    color: #1f7a3d !important;
    text-shadow: none;
}

.mover-ticker-loser-active {
    color: #b42318 !important;
    text-shadow: none;
}

.whale-ticker-active {
    color: #9ff7ff !important;
    text-shadow: 0 0 12px rgba(45, 212, 191, 0.75), 0 0 24px rgba(45, 212, 191, 0.4);
    animation: whale-ticker-pulse 1.5s ease-in-out infinite;
}

.special-whale-ticker-active {
    color: #ffd29a !important;
    text-shadow: 0 0 12px rgba(251, 191, 36, 0.8), 0 0 24px rgba(249, 115, 22, 0.36);
    animation: special-whale-ticker-pulse 1.5s ease-in-out infinite;
}

.portfolio-filing-active {
    color: #ffd54a !important;
    text-shadow: 0 0 12px rgba(250, 204, 21, 0.82), 0 0 24px rgba(239, 68, 68, 0.3);
    animation: portfolio-filing-pulse 1.7s ease-in-out infinite;
}

.portfolio-pulse-active {
    color: #ff8a8a !important;
    text-shadow: 0 0 12px rgba(248, 113, 113, 0.88), 0 0 26px rgba(220, 38, 38, 0.52);
    animation: portfolio-pulse-alert 1s ease-in-out infinite;
}

.portfolio-row-alert td {
    box-shadow: inset 0 1px 0 rgba(250, 204, 21, 0.08), inset 0 -1px 0 rgba(239, 68, 68, 0.06);
}

.whale-indicator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    line-height: 1;
    filter: drop-shadow(0 0 8px rgba(45, 212, 191, 0.55));
    animation: whale-indicator-float 1.8s ease-in-out infinite;
}

.whale-indicator-lg {
    font-size: 1rem;
}

@keyframes member-shared-ticker-pulse {
    0%, 100% {
        text-shadow: 0 0 8px rgba(96, 165, 250, 0.45), 0 0 0 rgba(96, 165, 250, 0.2);
        transform: translateY(0);
    }

    50% {
        text-shadow: 0 0 14px rgba(96, 165, 250, 0.8), 0 0 24px rgba(96, 165, 250, 0.45);
        transform: translateY(-1px);
    }
}

@keyframes whale-ticker-pulse {
    0%, 100% {
        text-shadow: 0 0 10px rgba(45, 212, 191, 0.5), 0 0 0 rgba(45, 212, 191, 0.2);
        transform: translateY(0);
    }

    50% {
        text-shadow: 0 0 18px rgba(45, 212, 191, 0.95), 0 0 28px rgba(45, 212, 191, 0.55);
        transform: translateY(-1px);
    }
}

@keyframes special-whale-ticker-pulse {
    0%, 100% {
        text-shadow: 0 0 10px rgba(251, 191, 36, 0.55), 0 0 0 rgba(249, 115, 22, 0.22);
        transform: translateY(0);
    }

    50% {
        text-shadow: 0 0 18px rgba(251, 191, 36, 0.95), 0 0 28px rgba(249, 115, 22, 0.48);
        transform: translateY(-1px);
    }
}

@keyframes portfolio-filing-pulse {
    0%, 100% {
        text-shadow: 0 0 10px rgba(250, 204, 21, 0.6), 0 0 0 rgba(239, 68, 68, 0.18);
        transform: translateY(0);
    }

    50% {
        text-shadow: 0 0 18px rgba(250, 204, 21, 0.92), 0 0 28px rgba(239, 68, 68, 0.38);
        transform: translateY(-1px);
    }
}

@keyframes portfolio-pulse-alert {
    0%, 100% {
        color: #ff9b9b;
        text-shadow: 0 0 10px rgba(248, 113, 113, 0.6), 0 0 0 rgba(220, 38, 38, 0.2);
        transform: translateY(0) scale(1);
    }

    50% {
        color: #ffd0d0;
        text-shadow: 0 0 18px rgba(248, 113, 113, 1), 0 0 30px rgba(220, 38, 38, 0.6);
        transform: translateY(-1px) scale(1.03);
    }
}

@keyframes whale-indicator-float {
    0%, 100% {
        transform: translateY(0);
        opacity: 0.9;
    }

    50% {
        transform: translateY(-1px) scale(1.06);
        opacity: 1;
    }
}

@keyframes mover-indicator-pulse {
    0%, 100% {
        transform: translateY(0) scale(0.98);
        opacity: 0.88;
    }

    50% {
        transform: translateY(-1px) scale(1.08);
        opacity: 1;
    }
}

@keyframes member-activity-name-pulse {
    0%, 100% {
        text-shadow: 0 0 8px rgba(250, 204, 21, 0.45), 0 0 0 rgba(245, 158, 11, 0.18);
        transform: translateY(0);
    }

    50% {
        text-shadow: 0 0 16px rgba(250, 204, 21, 0.9), 0 0 24px rgba(245, 158, 11, 0.42);
        transform: translateY(-1px);
    }
}

@keyframes member-activity-signal-pulse {
    0%, 100% {
        transform: scale(0.95);
        opacity: 0.85;
    }

    50% {
        transform: scale(1.14);
        opacity: 1;
    }
}

.trade-tile-bottom-meta {
    color: var(--muted);
    font-size: 0.62rem;
}

.trade-tile-card .card-body {
    padding: 0.55rem !important;
}

.trade-tile-card .list-group-item {
    padding: 0.45rem 0.55rem !important;
}

.trade-tile-card .pill {
    font-size: 0.62rem;
    padding: 0.2rem 0.45rem;
}

/* ==============================
   MISC
================================*/
.quote-symbol,
.mono {
    font-family: var(--mono);
    color: #142238;
}

.empty-state {
    padding: 2rem 0.5rem 1rem;
}

.form-control,
.form-select {
    border-radius: 1rem;
}

.small {
    font-size: 0.7rem !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

.party-frame .mt-1 {
    margin-top: 0.15rem !important;
}

.shell-mobile-submenu-head {
    display: none;
}

/* ==============================
   RESPONSIVE
================================*/
@media (max-width: 992px) {
    :root {
        --shell-header-height: 3.2rem;
        --shell-footer-height: 2.3rem;
    }

    .login-layout {
        grid-template-columns: 1fr;
        width: min(32rem, 100%);
    }

    .passkey-layout {
        grid-template-columns: 1fr;
        width: min(38rem, 100%);
    }

    .hero-panel {
        grid-template-columns: 1fr;
    }

    .market-board-stats {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .dashboard-chart-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-spotlight-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-duo-grid {
        grid-template-columns: 1fr;
    }

    .whale-dashboard-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }

    @media (orientation: landscape) {
        .dashboard-chart-grid {
            grid-template-columns: repeat(3, 1fr);
        }

        .dashboard-spotlight-grid {
            grid-template-columns: repeat(3, 1fr);
        }

        .whale-dashboard-grid {
            grid-template-columns: repeat(3, 1fr);
        }

        .dashboard-ticker-chip {
            min-width: 11.5rem;
        }
    }

    @media (orientation: portrait) {
        .dashboard-chart-grid {
            grid-template-columns: 1fr;
        }

    .dashboard-chart-grid,
    .dashboard-spotlight-grid,
    .whale-dashboard-grid {
        grid-template-columns: 1fr;
    }

        .whale-dashboard-grid {
            grid-template-columns: 1fr;
        }
    }

    .shell {
        padding: 1rem;
    }

    .hero-panel,
    .surface-card {
        border-radius: 1.25rem;
    }

    .shell-header-inner,
    .shell-footer-inner {
        padding-inline: 1rem;
    }

    .shell-nav {
        justify-content: flex-start;
    }

    .brand {
        font-size: 0.94rem;
    }

    .security-grid {
        grid-template-columns: 1fr;
    }

    .ticker-stack {
        grid-template-columns: repeat(5, 84px);
        justify-content: space-between;
    }

    .kids-story-hero,
    .kids-story-hero-login,
    .kids-story-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    :root {
        --shell-header-height: 2.38rem;
        --shell-ticker-height: 1.7rem;
        --shell-footer-height: 2.25rem;
    }

    .shell {
        padding: 0 0.75rem;
    }

    .shell-content {
        padding-top: calc(var(--shell-header-height) + var(--shell-ticker-height) + 0.75rem);
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1rem);
    }

    .surface-card {
        padding: 0.95rem;
    }

    .grid-pager-footer {
        align-items: flex-start !important;
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1.75rem);
    }

    .mt-1,
    .party-frame .mt-1 {
        margin-top: 0 !important;
    }

    .login-screen {
        padding-inline: 0.75rem;
    }

    .login-passkey-head,
    .passkey-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .kids-story-shell {
        padding-inline: 0.75rem;
    }

    .kids-story-copy,
    .kids-story-panel,
    .kids-story-book-cover {
        padding: 1.1rem;
        border-radius: 1.25rem;
    }

    .kids-character-card,
    .kids-timeline-step {
        grid-template-columns: 1fr;
    }

    .quote-card,
    .member-card,
    .shell-footer-inner,
    .section-head,
    .dashboard-ticker-chip-top,
    .dashboard-ticker-chip-meta,
    .dashboard-spotlight-head,
    .dashboard-spotlight-card-top,
    .dashboard-spotlight-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .dashboard-spotlight-badges {
        justify-content: flex-start;
    }

    .dashboard-spotlight-metrics {
        grid-template-columns: 1fr;
    }

    .shell-header-inner {
        align-items: center;
        gap: 0.28rem;
        flex-wrap: wrap;
        padding-block: 0.03rem;
        min-height: var(--shell-header-height);
    }

	    .shell-menu-toggle {
	        display: inline-flex;
	        margin-left: 0;
	        width: auto;
	        min-width: 2.85rem;
	        height: 2.35rem;
	        padding: 0 0.72rem;
	        flex-direction: row;
	        justify-content: center;
	        gap: 0;
	    }

    .shell-header-panel {
        position: fixed;
        top: var(--shell-header-height);
        right: 0;
        left: 0;
        bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px));
        width: 100vw;
        min-width: 100vw;
        max-width: 100vw;
        min-height: calc(100dvh - var(--shell-header-height) - var(--shell-footer-height) - env(safe-area-inset-bottom, 0px));
        flex: none;
        display: flex;
        z-index: 1400;
        border-radius: 1.25rem 1.25rem 0 0;
        border: 0;
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.18), transparent 28%),
            linear-gradient(180deg, rgba(255, 251, 245, 0.99), rgba(243, 238, 228, 0.99));
        box-shadow: 0 -8px 40px rgba(21, 35, 58, 0.16);
        flex-direction: column;
        align-items: stretch;
        gap: 0.4rem;
        padding: 0.5rem 0 calc(1rem + env(safe-area-inset-bottom, 0px));
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        touch-action: pan-y pinch-zoom;
        transform: translate3d(0, 100%, 0);
        opacity: 0;
        pointer-events: none;
        transition: transform 0.42s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.28s ease;
    }

    .shell-header-panel.open {
        transform: translate3d(0, 0, 0);
        opacity: 1;
        pointer-events: auto;
    }

    .shell-menu-backdrop {
        position: fixed;
        inset: 0;
        display: block;
        z-index: 1300;
        background: rgba(15, 23, 42, 0.54);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.35s ease, backdrop-filter 0.35s ease;
        -webkit-backdrop-filter: blur(0px);
        backdrop-filter: blur(0px);
    }

    .shell-menu-backdrop.open {
        opacity: 1;
        pointer-events: auto;
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
    }

    .shell-mobile-menu-head {
        display: none;
        align-items: center;
        justify-content: center;
        position: sticky;
        top: 0;
        z-index: 3;
        min-height: 3.35rem;
        padding: 0.25rem 5rem 0.25rem 1rem;
        position: sticky;
        border-bottom: 1px solid rgba(21, 35, 58, 0.08);
        background:
            linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(255, 251, 245, 0.93));
        backdrop-filter: blur(10px);
    }

    .shell-mobile-menu-head strong {
        display: none;
    }

    .shell-mobile-menu-close {
        position: absolute;
        top: 50%;
        right: 0.7rem;
        width: 3rem;
        height: 3rem;
        min-width: 3rem;
        min-height: 3rem;
        transform: translateY(-50%);
        transform-origin: center;
        animation: shellMobileCloseIn 0.22s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .shell-nav {
        width: 100%;
        justify-content: flex-start;
        gap: 0.22rem;
        flex-direction: column;
        align-items: stretch;
        padding: 0 0 0.2rem;
    }

    .shell-nav-link {
        width: 100%;
        text-align: left;
        min-height: 3.25rem;
        padding: 0.95rem 1rem;
        font-size: 0.9rem;
        line-height: 1.2;
        border-radius: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        touch-action: manipulation;
        border: 1px solid rgba(21, 35, 58, 0.1);
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(246, 240, 230, 0.92));
        box-shadow: 0 10px 24px rgba(21, 35, 58, 0.08);
        color: var(--text);
    }

    .shell-nav-link:hover {
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 244, 234, 0.98));
        border-color: rgba(186, 141, 70, 0.26);
        color: var(--text);
    }

    .shell-nav-link.active {
        color: #fff9ef;
        border-color: rgba(18, 82, 82, 0.45);
        background: linear-gradient(135deg, #195353, #ba8d46);
        box-shadow: 0 16px 30px rgba(21, 35, 58, 0.16);
    }

    .shell-nav-dropdown {
        width: 100%;
        position: relative;
    }

    .shell-nav-dropdown-menu {
        position: static;
        min-width: 0;
        margin-top: 0;
    }

    .shell-nav-dropdown-link {
        text-align: left;
        padding-left: 1rem;
    }

    .shell-mobile-submenu-head {
        display: none;
    }

    .shell-header-panel.mobile-section-open .shell-nav > .shell-nav-link,
    .shell-header-panel.mobile-section-open .shell-nav > .shell-nav-dropdown > .shell-nav-dropdown-toggle {
        opacity: 0;
        pointer-events: none;
        transform: translateX(-1rem);
    }

    .shell-header-panel.mobile-section-open .shell-nav {
        position: relative;
        min-height: 100%;
        height: 100%;
        overflow: hidden;
    }

    .shell-header-panel.mobile-section-open {
        padding-top: 0;
        overflow: hidden;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-menu-head {
        display: none;
    }

    .shell-header-panel.mobile-section-open .shell-nav-dropdown-menu.open {
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        z-index: 1402;
        display: flex;
        flex-direction: column;
        gap: 0.22rem;
        margin-top: 0;
        width: auto;
        padding: 0 0 calc(0.75rem + env(safe-area-inset-bottom, 0px));
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        touch-action: pan-y pinch-zoom;
        background:
            linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(243, 238, 228, 0.99));
        animation: shellMobileSubmenuIn 0.28s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .shell-header-panel.mobile-section-open .shell-nav-dropdown {
        position: static;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-submenu-head {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.45rem;
        justify-content: flex-start;
        position: sticky;
        top: 0;
        z-index: 4;
        padding: 0 0 0.5rem;
        margin-bottom: 0.15rem;
        border-bottom: 1px solid rgba(21, 35, 58, 0.08);
        background:
            linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(255, 251, 245, 0.93));
        backdrop-filter: blur(10px);
    }

    .shell-header-panel.application-management-open #configuration-shell-menu > .shell-mobile-submenu-head,
    .shell-header-panel.application-management-open #configuration-shell-menu > .shell-nav-link,
    .shell-header-panel.application-management-open #configuration-shell-menu > .shell-nav-dropdown > .shell-nav-dropdown-toggle {
        opacity: 0;
        pointer-events: none;
        transform: translateX(-1rem);
    }

    .shell-header-panel.live-tv-open #live-shell-menu > .shell-mobile-submenu-head,
    .shell-header-panel.live-tv-open #live-shell-menu > .shell-nav-link,
    .shell-header-panel.live-tv-open #live-shell-menu > .shell-nav-dropdown > .shell-nav-dropdown-toggle {
        opacity: 0;
        pointer-events: none;
        transform: translateX(-1rem);
    }

    .shell-header-panel.application-management-open #application-management-shell-menu {
        z-index: 5;
        background:
            linear-gradient(180deg, rgba(255, 251, 245, 0.998), rgba(243, 238, 228, 0.995));
    }

    .shell-header-panel.live-tv-open #live-tv-shell-menu {
        z-index: 5;
        background:
            linear-gradient(180deg, rgba(255, 251, 245, 0.998), rgba(243, 238, 228, 0.995));
    }

    .shell-header-panel.application-management-open #application-management-shell-menu > .shell-mobile-submenu-head {
        z-index: 6;
    }

    .shell-header-panel.live-tv-open #live-tv-shell-menu > .shell-mobile-submenu-head {
        z-index: 6;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-submenu-head strong {
        font-family: var(--display);
        font-size: 1rem;
        color: var(--text);
        text-align: center;
        width: 100%;
    }

    .shell-mobile-submenu-back {
        width: 100%;
        border: 1px solid rgba(21, 35, 58, 0.12);
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 240, 230, 0.96));
        color: var(--text);
        border-radius: 0;
        min-height: 2.75rem;
        padding: 0.8rem 1rem;
        font-family: var(--mono);
        font-size: 0.76rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        box-shadow: 0 10px 24px rgba(21, 35, 58, 0.1);
        touch-action: manipulation;
        text-align: center;
    }

    .shell-header-panel.mobile-section-open .shell-nav-dropdown-menu.open .shell-nav-link {
        animation: shellMobileSubmenuItemIn 0.3s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .shell-nav-link:active,
    .shell-mobile-submenu-back:active {
        transform: scale(0.985);
    }

    @keyframes shellMobileSubmenuIn {
        from {
            opacity: 0;
            transform: translate3d(1.2rem, 0, 0);
        }

        to {
            opacity: 1;
            transform: translate3d(0, 0, 0);
        }
    }

    @keyframes shellMobileCloseIn {
        from {
            opacity: 0;
            transform: translateY(-50%) rotate(-90deg) scale(0.7);
        }

        to {
            opacity: 1;
            transform: translateY(-50%) rotate(0deg) scale(1);
        }
    }

    @keyframes shellMobileSubmenuItemIn {
        from {
            opacity: 0;
            transform: translate3d(0, 0.7rem, 0);
        }

        to {
            opacity: 1;
            transform: translate3d(0, 0, 0);
        }
    }

    .notification-stack {
        top: calc(var(--shell-header-height) + 0.75rem);
        right: 0.75rem;
        width: calc(100vw - 1.5rem);
    }

    .shell-brandmark {
        width: auto;
        flex: 1 1 auto;
        align-items: center;
        min-height: calc(var(--shell-header-height) - 0.25rem);
        padding-top: 0;
    }

    .shell-userbar,
    .shell-footer-links {
        margin-left: 0;
        justify-content: center;
        text-align: center;
        white-space: normal;
    }

    .shell-footer-socials {
        align-self: flex-start;
        transform: translateY(-0.18rem);
    }

    .shell-alert-zone-header {
        margin-left: auto;
        margin-right: 0.1rem;
        order: 2;
        gap: 0.45rem;
    }

    .shell-header-fix-action {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
    }

    .shell-userbar {
        width: 100%;
        justify-content: space-between;
        order: -1;
        position: sticky;
        top: 0;
        z-index: 4;
        padding: 0.45rem 1rem 0.55rem;
        margin-bottom: 0.25rem;
        background: linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(255, 251, 245, 0.94));
        border-bottom: 1px solid rgba(21, 35, 58, 0.08);
        box-shadow: 0 10px 20px rgba(21, 35, 58, 0.05);
        padding-top: 0.15rem;
    }

    .shell-logout-actions {
        justify-content: flex-end;
    }

    .shell-logout-menu {
        width: auto;
        margin-left: auto;
    }

    .shell-config-toggle {
        min-width: 2.2rem;
        width: 2.2rem;
        height: 2.2rem;
    }

    .shell-logout-toggle {
        width: auto;
        justify-content: center;
        min-width: 4.4rem;
        min-height: 2.2rem;
        padding: 0.55rem 0.8rem;
        font-size: 0.72rem;
        border-radius: 0.7rem;
    }

    .shell-logout-menu .shell-nav-dropdown-menu {
        min-width: 10.25rem;
    }

    .shell-logout-option {
        min-height: 2.35rem;
        padding: 0.7rem 0.85rem;
        font-size: 0.76rem;
    }

    .shell-usercopy {
        justify-items: start;
        min-width: 0;
        flex: 1 1 auto;
    }

    .shell-config-menu,
    .shell-logout-menu {
        flex: 0 0 auto;
    }

    .shell-brand-copy {
        min-width: 0;
        display: flex;
        align-items: center;
        min-height: 100%;
    }

    .shell-brand-copy .brand {
        display: flex;
        align-items: center;
        min-height: 1.75rem;
        line-height: 1.05;
        transform: translateY(1px);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .shell-footer-inner {
        gap: 0.3rem;
        padding-block: 0.22rem;
        align-items: center;
        padding-bottom: calc(0.22rem + env(safe-area-inset-bottom, 0px));
    }

    .section-head {
        align-items: stretch;
    }

    .chart-columns {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .activity-row,
    .ticker-chip {
        grid-template-columns: 1fr;
    }

    .ticker-stack {
        max-height: none;
        grid-template-columns: repeat(3, 84px);
        justify-content: space-between;
    }

    .quote-card-side {
        min-width: 0;
    }

    .trade-flyout-kpis {
        grid-template-columns: 1fr;
    }

    .stock-flyout-action-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-search-actions {
        justify-content: flex-start;
    }

    .dashboard-head-actions {
        justify-content: flex-start;
    }

    .trade-tile-kpis {
        grid-template-columns: 1fr;
    }

    .trade-flyout-panel {
        width: calc(100vw - 1rem);
        padding: 1rem 1rem calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 3rem);
        border-radius: 1rem 0 0 1rem;
    }

    .shell-brandmark {
        align-items: center;
    }

    .shell-logo {
        width: 1.16rem;
        height: 1.16rem;
        min-width: 1.16rem;
        min-height: 1.16rem;
        padding: 0.12rem;
    }

    .shell-header-inner {
        gap: 0.42rem;
        padding: 0.16rem 0.55rem;
    }

    .shell-brandmark {
        gap: 0.35rem;
    }

    .shell-footer-links {
        gap: 0.5rem 0.85rem;
    }

    .shell-footer {
        position: fixed;
        margin-top: 0;
        transform: translateZ(0);
        will-change: transform;
        padding-bottom: env(safe-area-inset-bottom, 0px);
    }

    .eyebrow {
        letter-spacing: 0.14em;
        font-size: 0.68rem;
    }

    .brand {
        font-size: 0.68rem;
    }

    .global-market-ticker {
        top: calc(var(--shell-header-height) + 0.08rem);
        margin-top: 0;
    }

    .shell-alert-bell {
        width: 2.1rem;
        height: 2.1rem;
        border-radius: 0.75rem;
    }

    .shell-alert-bell-icon {
        width: 0.96rem;
        height: 0.96rem;
    }

    .shell-alert-bell-badge {
        min-width: 1rem;
        height: 1rem;
        font-size: 0.54rem;
    }
}

.news-track {
    display: flex;
    flex-direction: column;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.news-item {
    padding: 0.75rem;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
.org-tree-list {
    display: grid;
    gap: 1rem;
}

.org-tree-node {
    position: relative;
    margin-left: calc(var(--tree-depth, 0) * 1.35rem);
    padding: 1rem 1rem 1rem 1.1rem;
    border: 1px solid rgba(159, 176, 205, 0.18);
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(10, 19, 34, 0.92), rgba(7, 13, 24, 0.96));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.org-tree-node::before {
    content: "";
    position: absolute;
    left: -0.8rem;
    top: 1.2rem;
    bottom: 1.2rem;
    width: 2px;
    background: linear-gradient(180deg, rgba(96, 165, 250, 0.5), rgba(79, 209, 197, 0.1));
    border-radius: 999px;
}

.org-tree-node[style*="--tree-depth:0"]::before {
    display: none;
}

.org-tree-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.org-tree-members {
    display: grid;
    gap: 0.7rem;
    margin-top: 0.9rem;
}

.org-tree-member {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.75rem 0.85rem;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(159, 176, 205, 0.12);
}

.org-vote-banner {
    margin-top: 0.9rem;
    padding: 0.85rem 0.95rem;
    border-radius: 16px;
    background: rgba(127, 29, 29, 0.18);
    border: 1px solid rgba(251, 113, 133, 0.32);
}

@media (hover: none) and (pointer: coarse) and (max-width: 991.98px) {
    .dashboard-trade-tile-stack {
        gap: 0.85rem;
    }

    .trade-tile-card {
        font-size: 0.92rem;
    }

    .dashboard-spotlight-rail {
        overflow: hidden;
    }

    .dashboard-spotlight-chip {
        min-width: 12rem;
    }

    .org-tree-node {
        margin-left: calc(var(--tree-depth, 0) * 0.8rem);
        padding: 0.9rem;
    }

    .org-tree-member,
    .org-tree-head {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (max-width: 991.98px) {
    :root {
        --shell-ticker-height: 3.55rem;
    }

    .dashboard-spotlight-grid,
    .dashboard-chart-grid,
    .whale-dashboard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .global-market-ticker {
        grid-template-columns: 1fr;
    }

    .admin-query-grid {
        grid-template-columns: 1fr;
    }

    .admin-query-schema-list {
        max-height: 20rem;
    }

    .admin-query-script-toolbar {
        grid-template-columns: 1fr;
    }

    .admin-query-script-item {
        grid-template-columns: 1fr;
    }

    .admin-query-results .table-wrap {
        overflow-x: visible;
    }

    .admin-query-table {
        width: 100%;
        table-layout: fixed;
    }

    .admin-query-table th,
    .admin-query-table td {
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
        min-width: 0;
    }

    .admin-query-erd {
        grid-template-columns: 1fr;
    }

    .admin-query-erd-center {
        order: -1;
    }

    .landing-hero,
    .landing-stat-strip,
    .landing-journey-grid,
    .landing-board-grid {
        grid-template-columns: 1fr;
    }

    .landing-hero-copy h1 {
        max-width: 100%;
    }

    .landing-market-board {
        width: 100%;
    }

    .landing-screen-track {
        animation-duration: 58s;
    }

    .landing-terminal-metrics,
    .landing-mini-grid,
    .landing-heat-grid {
        grid-template-columns: 1fr 1fr;
    }

    .landing-screen-row {
        grid-template-columns: 1fr;
    }

    .ticker-analysis-inputs,
    .ticker-analysis-summary {
        grid-template-columns: 1fr;
    }

    .ticker-analysis-chart-grid .compact-chart-wrap {
        min-height: 12rem;
        height: 12rem;
    }

    .dashboard-status-head {
        grid-template-columns: 1fr;
    }

    .dashboard-status-legend {
        justify-content: flex-start;
    }
}

@media (max-width: 991.98px) and (orientation: landscape) {
    .dashboard-chart-grid,
    .dashboard-spotlight-grid,
    .whale-dashboard-grid,
    .member-tile-grid,
    .portfolio-chart-grid,
    .ticker-analysis-chart-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) and (orientation: portrait) {
    .dashboard-spotlight-grid,
    .whale-dashboard-grid,
    .member-tile-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .dashboard-chart-grid,
    .portfolio-chart-grid,
    .ticker-analysis-chart-grid {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 576px) and (max-width: 991.98px) and (orientation: portrait) {
    .dashboard-spotlight-grid,
    .whale-dashboard-grid,
    .member-tile-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-chart-grid,
    .portfolio-chart-grid,
    .ticker-analysis-chart-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .go-to-top-button {
        right: max(0.35rem, env(safe-area-inset-right, 0px)) !important;
        left: auto !important;
        bottom: calc(var(--shell-footer-height) + 4.4rem + env(safe-area-inset-bottom, 0px)) !important;
        padding: 0.68rem 0.82rem;
        font-size: 0.72rem;
        transform: translateY(12px);
    }

    .go-to-top-button.visible {
        transform: translateY(0);
    }

    .grid-pager-footer {
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 2.65rem);
    }

    .landing-actions {
        flex-direction: column;
    }

    .landing-actions .btn,
    .landing-terminal-metrics,
    .landing-mini-grid,
    .landing-heat-grid {
        width: 100%;
    }

    .landing-terminal-metrics,
    .landing-mini-grid,
    .landing-heat-grid,
    .landing-feed-row,
    .landing-screen-row {
        grid-template-columns: 1fr;
    }

    .landing-hero,
    .landing-screen-card,
    .landing-surface-mini,
    .landing-story-panel,
    .landing-journey-step,
    .landing-feature-card {
        padding: 0.95rem;
    }

    .landing-screen-card-wide,
.landing-screen-card-photo {
        width: min(86vw, 24rem);
    }
}

@media (max-width: 575.98px) {
    .dashboard-feed-carousel {
        gap: 0.8rem;
        padding: 0.25rem clamp(0.75rem, 4vw, 1rem) 0.45rem;
        scroll-padding-inline: clamp(0.75rem, 4vw, 1rem);
    }

    .dashboard-feed-carousel > .dashboard-feed-card {
        flex: 0 0 min(82vw, 27rem);
        min-width: min(82vw, 27rem);
        max-width: min(82vw, 27rem);
    }

    .dashboard-feed-card {
        gap: 0.82rem;
        padding: 1rem 0.95rem 0.98rem;
        min-height: clamp(17.75rem, 71vw, 22.5rem);
    }

    .dashboard-feed-card-hero {
        gap: 0.6rem;
    }

    .dashboard-feed-card-hero-side,
    .dashboard-feed-card-ticker-row {
        padding: 0.85rem;
    }

    .dashboard-feed-card-headline {
        font-size: clamp(1.2rem, 4.2vw, 1.6rem);
    }

    .dashboard-feed-card-headline .member-label-photo,
    .dashboard-feed-card-headline .member-label-photo-lg {
        width: 2.1rem;
        height: 2.1rem;
    }

    .dashboard-feed-card-headline .member-label-button,
    .dashboard-feed-card-headline > span:not(.member-label-button) {
        font-size: clamp(1.2rem, 4vw, 1.6rem);
    }

    .dashboard-feed-card-deck {
        gap: 0.4rem;
        font-size: 0.8rem;
    }

    .dashboard-feed-card-state {
        font-size: 0.64rem;
    }

    .dashboard-feed-card-stats {
        gap: 0.55rem;
    }

    .dashboard-feed-card-notes {
        gap: 0.28rem;
        padding-top: 0.05rem;
    }
}

.landing-finkash-shell {
    --landing-paper: #f5efe4;
    --landing-paper-strong: #ece2d0;
    --landing-ink: #172133;
    --landing-muted: #5f6980;
    --landing-gold: #b88942;
    --landing-gold-soft: #d5b27a;
    --landing-navy: #0f1a2c;
    --landing-navy-soft: #1c2940;
    margin-top: 0.75rem;
    display: grid;
    gap: 1.15rem;
    color: var(--landing-ink);
}

.landing-finkash-topbar {
    overflow: hidden;
    border-radius: 1.25rem;
    border: 1px solid rgba(184, 137, 66, 0.24);
    background: linear-gradient(90deg, #132038, #1b2a45 45%, #132038);
    color: rgba(245, 239, 228, 0.92);
    box-shadow: 0 1rem 2rem rgba(15, 26, 44, 0.18);
}

.landing-finkash-topbar-track {
    display: flex;
    gap: 2rem;
    width: max-content;
    padding: 0.72rem 1rem;
    animation: landingTickerParade 34s linear infinite;
    font-size: 0.82rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.landing-finkash-topbar-track span::before {
    content: "•";
    margin-right: 0.75rem;
    color: var(--landing-gold-soft);
}

.landing-finkash-hero,
.landing-finkash-overview,
.landing-finkash-showcase {
    display: grid;
    gap: 1.2rem;
}

.landing-finkash-hero {
    grid-template-columns: minmax(0, 1fr) minmax(22rem, 0.95fr);
    padding: 1.5rem;
    border-radius: 1.8rem;
    background:
        radial-gradient(circle at top right, rgba(184, 137, 66, 0.16), transparent 28%),
        radial-gradient(circle at left center, rgba(37, 57, 95, 0.08), transparent 26%),
        linear-gradient(180deg, #fbf7ef, #efe5d3);
    border: 1px solid rgba(184, 137, 66, 0.22);
    box-shadow: 0 1.5rem 3rem rgba(15, 26, 44, 0.12);
    overflow: hidden;
}

.landing-finkash-copy h1,
.landing-finkash-overview-copy h2,
.landing-finkash-showcase-main h2 {
    color: #142033;
    font-family: Georgia, "Times New Roman", serif;
    letter-spacing: -0.03em;
}

.landing-finkash-copy h1 {
    max-width: 12ch;
    font-size: clamp(2.6rem, 5vw, 4.5rem);
    line-height: 0.95;
    margin-bottom: 0.95rem;
}

.landing-finkash-copy p,
.landing-finkash-overview-copy p,
.landing-finkash-feature p,
.landing-finkash-showcase-side,
.landing-finkash-showcase-main {
    color: var(--landing-muted);
}

.landing-finkash-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    color: var(--landing-gold);
    font-size: 0.78rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    font-weight: 700;
}

.landing-finkash-kicker::before {
    content: "";
    width: 2.25rem;
    height: 1px;
    background: rgba(184, 137, 66, 0.55);
}

.landing-finkash-actions {
    display: flex;
    gap: 0.9rem;
    flex-wrap: wrap;
    margin-top: 1.3rem;
}

.landing-finkash-actions .btn-gradient {
    background: linear-gradient(135deg, #c79a51, #a8742f);
    border-color: rgba(168, 116, 47, 0.45);
    color: #fff7eb;
}

.landing-finkash-actions .btn-outline-light {
    color: #182338;
    border-color: rgba(24, 35, 56, 0.18);
    background: rgba(255, 255, 255, 0.52);
}

.landing-finkash-trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 1.4rem;
}

.landing-finkash-trust-card,
.landing-finkash-board-card,
.landing-finkash-feature,
.landing-finkash-showcase-main,
.landing-finkash-showcase-side,
.landing-finkash-overview-copy,
.landing-finkash-overview-board {
    border-radius: 1.25rem;
    border: 1px solid rgba(184, 137, 66, 0.16);
    background: rgba(255, 250, 242, 0.78);
    box-shadow: 0 1rem 2rem rgba(15, 26, 44, 0.08);
}

.landing-finkash-trust-card {
    padding: 0.95rem 1rem;
}

.landing-finkash-trust-card span,
.landing-finkash-board-card span,
.landing-finkash-mini-grid span,
.landing-finkash-metrics span,
.landing-finkash-screen-head span,
.landing-finkash-feature .landing-finkash-kicker {
    display: block;
}

.landing-finkash-trust-card span,
.landing-finkash-board-card span,
.landing-finkash-mini-grid span,
.landing-finkash-metrics span {
    font-size: 0.74rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #7a6d58;
}

.landing-finkash-trust-card strong,
.landing-finkash-board-card strong,
.landing-finkash-showcase-side h3,
.landing-finkash-feature h3,
.landing-finkash-overview-board h3 {
    color: var(--landing-ink);
}

.landing-finkash-jumbotron {
    position: relative;
    min-height: 34rem;
}

.landing-finkash-jumbotron::before {
    content: "";
    position: absolute;
    inset: 1rem 0.5rem 1rem 0.5rem;
    border-radius: 1.8rem;
    background: linear-gradient(180deg, rgba(15, 26, 44, 0.08), rgba(15, 26, 44, 0));
    pointer-events: none;
}

.landing-finkash-screen {
    position: absolute;
    border-radius: 1.5rem;
    padding: 1rem;
    background: linear-gradient(180deg, rgba(22, 32, 51, 0.98), rgba(14, 23, 38, 0.98));
    border: 1px solid rgba(255, 255, 255, 0.06);
    color: rgba(241, 245, 255, 0.92);
    box-shadow: 0 1.8rem 3rem rgba(15, 26, 44, 0.28);
}

.landing-finkash-screen-primary {
    left: 0;
    top: 0;
    width: min(100%, 40rem);
    min-height: 22rem;
    z-index: 3;
}

.landing-finkash-screen-secondary {
    width: min(18rem, 44vw);
    min-height: 16rem;
}

.landing-finkash-screen-secondary:nth-of-type(2) {
    right: 0.25rem;
    top: 2rem;
    z-index: 2;
}

.landing-finkash-screen-secondary:nth-of-type(3) {
    right: 3.5rem;
    bottom: 0.5rem;
    z-index: 1;
}

.landing-finkash-screen-head {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    font-size: 0.76rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(207, 216, 236, 0.78);
}

.landing-finkash-screen-head strong {
    margin-left: auto;
    letter-spacing: 0;
    text-transform: none;
    color: rgba(247, 249, 255, 0.96);
    font-size: 0.98rem;
}

.landing-finkash-screen-dots {
    display: inline-flex;
    gap: 0.32rem;
}

.landing-finkash-screen-dots span {
    width: 0.58rem;
    height: 0.58rem;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.35);
}

.landing-finkash-screen-dots span:nth-child(1) { background: #f87171; }
.landing-finkash-screen-dots span:nth-child(2) { background: #fbbf24; }
.landing-finkash-screen-dots span:nth-child(3) { background: #4ade80; }

.landing-finkash-screen-brand,
.landing-finkash-minihero {
    display: flex;
    gap: 0.8rem;
    align-items: center;
    margin-top: 0.9rem;
    padding: 0.85rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
}

.landing-finkash-screen-logo,
.landing-finkash-minihero-icon {
    width: 2.5rem;
    height: 2.5rem;
    object-fit: contain;
}

.landing-finkash-screen-brand strong,
.landing-finkash-minihero strong {
    display: block;
    color: rgba(247, 249, 255, 0.96);
}

.landing-finkash-screen-brand span,
.landing-finkash-minihero span {
    display: block;
    margin-top: 0.18rem;
    font-size: 0.78rem;
    color: rgba(194, 204, 226, 0.8);
}

.landing-finkash-chart-panel {
    position: relative;
    height: 13.5rem;
    margin-top: 1rem;
    border-radius: 1.15rem;
    background:
        linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,0.04) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01));
    background-size: 1.1rem 100%, 100% 1.1rem, auto;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.landing-finkash-bars {
    position: absolute;
    inset: 1.2rem 1rem 1.2rem;
    display: flex;
    align-items: flex-end;
    gap: 0.45rem;
}

.landing-finkash-bars span {
    flex: 1 1 0;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(180deg, rgba(215, 178, 122, 0.95), rgba(96, 165, 250, 0.38));
}

.landing-finkash-line {
    position: absolute;
    inset: 0.9rem;
    opacity: 0.95;
}

.landing-finkash-line-gold {
    background:
        linear-gradient(180deg, transparent 62%, rgba(215, 178, 122, 0.12) 62%),
        linear-gradient(135deg, transparent 0 10%, rgba(215, 178, 122, 0.98) 10% 12%, transparent 12% 24%, rgba(215, 178, 122, 0.98) 24% 26%, transparent 26% 43%, rgba(215, 178, 122, 0.98) 43% 45%, transparent 45% 63%, rgba(215, 178, 122, 0.98) 63% 65%, transparent 65% 78%, rgba(215, 178, 122, 0.98) 78% 80%, transparent 80%);
}

.landing-finkash-line-blue {
    background:
        linear-gradient(180deg, transparent 66%, rgba(96, 165, 250, 0.1) 66%),
        linear-gradient(135deg, transparent 0 16%, rgba(96, 165, 250, 0.92) 16% 18%, transparent 18% 32%, rgba(96, 165, 250, 0.92) 32% 34%, transparent 34% 50%, rgba(96, 165, 250, 0.92) 50% 52%, transparent 52% 70%, rgba(96, 165, 250, 0.92) 70% 72%, transparent 72%);
    opacity: 0.76;
}

.landing-finkash-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-top: 0.95rem;
}

.landing-finkash-metrics div,
.landing-finkash-mini-grid div,
.landing-finkash-list div,
.landing-finkash-ranking div {
    padding: 0.75rem 0.8rem;
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
}

.landing-finkash-metrics strong,
.landing-finkash-mini-grid strong,
.landing-finkash-list strong,
.landing-finkash-ranking strong {
    display: block;
    margin-top: 0.28rem;
    color: rgba(248, 250, 255, 0.96);
}

.landing-finkash-mini-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
    margin-top: 0.9rem;
}

.landing-finkash-mini-chart {
    height: 6.5rem;
    margin-top: 0.9rem;
    border-radius: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background:
        linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0)),
        linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,0.04) 1px, transparent 1px);
    background-size: auto, 1rem 1rem, 1rem 1rem;
    position: relative;
    overflow: hidden;
}

.landing-finkash-mini-chart::after {
    content: "";
    position: absolute;
    inset: 0.65rem;
    background:
        linear-gradient(180deg, transparent 56%, rgba(215, 178, 122, 0.12) 56%),
        linear-gradient(135deg, transparent 0 11%, rgba(215, 178, 122, 0.96) 11% 13%, transparent 13% 27%, rgba(96, 165, 250, 0.96) 27% 29%, transparent 29% 42%, rgba(215, 178, 122, 0.96) 42% 44%, transparent 44% 61%, rgba(96, 165, 250, 0.96) 61% 63%, transparent 63% 79%, rgba(215, 178, 122, 0.96) 79% 81%, transparent 81%);
    border-radius: 0.75rem;
}

.landing-finkash-list,
.landing-finkash-ranking {
    display: grid;
    gap: 0.6rem;
    margin-top: 0.95rem;
}

.landing-finkash-list div,
.landing-finkash-ranking div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.75rem;
}

.landing-finkash-list em {
    color: #9ae6b4;
    font-style: normal;
    font-weight: 700;
}

.landing-finkash-overview {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.landing-finkash-overview-copy,
.landing-finkash-overview-board,
.landing-finkash-showcase-main,
.landing-finkash-showcase-side,
.landing-finkash-feature {
    padding: 1.2rem;
}

.landing-finkash-pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1rem;
}

.landing-finkash-pill-row span {
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    background: rgba(184, 137, 66, 0.08);
    border: 1px solid rgba(184, 137, 66, 0.14);
    color: #6b5c43;
    font-size: 0.82rem;
}

.landing-finkash-board-head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.landing-finkash-link {
    color: #8b6736;
    text-decoration: none;
    font-weight: 700;
}

.landing-finkash-board-grid,
.landing-finkash-feature-grid {
    display: grid;
    gap: 0.95rem;
}

.landing-finkash-board-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.landing-finkash-board-card {
    padding: 1rem;
}

.landing-finkash-feature-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.landing-finkash-feature ul {
    margin: 0.95rem 0 0;
    padding-left: 1.1rem;
    color: var(--landing-muted);
}

.landing-finkash-feature li + li {
    margin-top: 0.5rem;
}

.landing-finkash-showcase {
    grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
}

.landing-finkash-feed,
.landing-finkash-alert-card + .landing-finkash-alert-card {
    margin-top: 0.95rem;
}

.landing-finkash-feed {
    display: grid;
    gap: 0.7rem;
}

.landing-finkash-feed-row,
.landing-finkash-alert-card {
    padding: 0.85rem 0.95rem;
    border-radius: 1rem;
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(184, 137, 66, 0.14);
}

.landing-finkash-feed-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.8rem;
    align-items: center;
}

.landing-finkash-feed-row span:first-child,
.landing-finkash-alert-card span {
    color: var(--landing-muted);
}

.landing-finkash-feed-row em {
    font-style: normal;
    color: #8b6736;
    font-weight: 700;
}

.landing-finkash-alert-card strong {
    display: block;
    color: var(--landing-ink);
}

.landing-finkash-alert-card span {
    display: block;
    margin-top: 0.32rem;
}

@media (max-width: 1200px) {
    .landing-finkash-hero,
    .landing-finkash-overview,
    .landing-finkash-showcase,
    .landing-finkash-feature-grid {
        grid-template-columns: 1fr;
    }

    .landing-finkash-jumbotron {
        min-height: 43rem;
    }

    .landing-finkash-screen-primary {
        width: min(100%, 100%);
    }

    .landing-finkash-screen-secondary:nth-of-type(2) {
        right: 1rem;
        top: 15rem;
    }

    .landing-finkash-screen-secondary:nth-of-type(3) {
        left: 1rem;
        right: auto;
        bottom: 0;
    }
}

@media (max-width: 900px) {
    .landing-finkash-hero {
        padding: 1.1rem;
    }

    .landing-finkash-copy h1 {
        max-width: 100%;
    }

    .landing-finkash-trust,
    .landing-finkash-metrics,
    .landing-finkash-board-grid {
        grid-template-columns: 1fr;
    }

    .landing-finkash-jumbotron {
        min-height: 50rem;
    }

    .landing-finkash-screen-primary,
    .landing-finkash-screen-secondary {
        position: relative;
        inset: auto;
        width: 100%;
        min-height: 0;
    }

    .landing-finkash-screen-secondary:nth-of-type(2),
    .landing-finkash-screen-secondary:nth-of-type(3) {
        right: auto;
        left: auto;
        top: auto;
        bottom: auto;
    }

    .landing-finkash-jumbotron {
        display: grid;
        gap: 1rem;
    }

    .landing-finkash-list div,
    .landing-finkash-ranking div,
    .landing-finkash-feed-row {
        grid-template-columns: 1fr;
    }
}

.finkash-public-shell {
    --finkash-paper: #f7f1e6;
    --finkash-paper-strong: #efe3d1;
    --finkash-sand: #e8d7bb;
    --finkash-navy: #15233a;
    --finkash-navy-soft: #23314b;
    --finkash-text: #1a2538;
    --finkash-muted: #687387;
    --finkash-gold: #ba8d46;
    --finkash-gold-soft: #d8b782;
    margin-top: 0.75rem;
    display: grid;
    gap: 1.2rem;
    color: var(--finkash-text);
    padding-inline: clamp(0.75rem, 2vw, 1.5rem);
}

.finkash-public-shell > * {
    width: min(100%, 1240px);
    margin-inline: auto;
}

.finkash-public-topline {
    overflow: hidden;
    border-radius: 1.35rem;
    background: linear-gradient(90deg, var(--finkash-navy), var(--finkash-navy-soft));
    border: 1px solid rgba(186, 141, 70, 0.22);
    box-shadow: 0 1rem 2.2rem rgba(21, 35, 58, 0.18);
}

.finkash-public-topline-inner {
    display: flex;
    gap: 2rem;
    width: max-content;
    padding: 0.8rem 1rem;
    animation: landingTickerParade 34s linear infinite;
    white-space: nowrap;
    color: rgba(247, 241, 230, 0.92);
    font-size: 0.78rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.finkash-public-topline-inner span::before {
    content: "";
    display: inline-block;
    width: 0.35rem;
    height: 0.35rem;
    margin-right: 0.8rem;
    border-radius: 999px;
    background: var(--finkash-gold-soft);
    vertical-align: middle;
}

.finkash-hero-section,
.finkash-story-section,
.finkash-trust-section {
    display: grid;
    gap: 1.25rem;
}

.finkash-hero-section {
    grid-template-columns: minmax(0, 1fr) minmax(22rem, 0.95fr);
    padding: 1.65rem;
    border-radius: 2rem;
    background:
        radial-gradient(circle at 88% 14%, rgba(186, 141, 70, 0.14), transparent 26%),
        radial-gradient(circle at 8% 88%, rgba(35, 49, 75, 0.08), transparent 26%),
        linear-gradient(180deg, #fcf8f1, var(--finkash-paper));
    border: 1px solid rgba(186, 141, 70, 0.2);
    box-shadow: 0 1.6rem 3.2rem rgba(21, 35, 58, 0.12);
}

.finkash-section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    color: var(--finkash-gold);
    font-size: 0.76rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 700;
}

.finkash-section-kicker::before {
    content: "";
    width: 2.3rem;
    height: 1px;
    background: rgba(186, 141, 70, 0.5);
}

.finkash-hero-copy h1,
.finkash-story-copy h2,
.finkash-services-head h2,
.finkash-trust-copy h2 {
    margin-top: 0.8rem;
    color: var(--finkash-navy);
    font-family: Georgia, "Times New Roman", serif;
    letter-spacing: -0.035em;
}

.finkash-hero-copy h1 {
    max-width: 11.5ch;
    font-size: clamp(2.8rem, 5vw, 4.9rem);
    line-height: 0.95;
}

.finkash-hero-copy p,
.finkash-story-copy p,
.finkash-services-head p,
.finkash-service-card p,
.finkash-trust-copy p,
.finkash-trust-item p {
    color: var(--finkash-muted);
}

.finkash-hero-actions {
    display: flex;
    gap: 0.9rem;
    flex-wrap: wrap;
    margin-top: 1.35rem;
}

.finkash-hero-actions .btn-gradient {
    background: linear-gradient(135deg, #c7994f, #a77430);
    border-color: rgba(167, 116, 48, 0.42);
    color: #fff7eb;
}

.finkash-hero-actions .btn-outline-light {
    color: var(--finkash-navy);
    border-color: rgba(21, 35, 58, 0.16);
    background: rgba(255, 255, 255, 0.46);
}

.finkash-hero-visual {
    min-width: 0;
}

.finkash-hero-carousel {
    display: grid;
    gap: 1rem;
    min-width: 0;
    width: 100%;
    max-width: 100%;
}

.finkash-hero-carousel-viewport {
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    border-radius: 1.5rem;
}

.finkash-hero-carousel-track {
    display: flex;
    width: 100%;
    max-width: 100%;
    transition: transform 0.35s ease;
    will-change: transform;
}

.finkash-hero-slide {
    flex: 0 0 100%;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
}

.finkash-hero-carousel-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem;
}

.finkash-hero-carousel-nav {
    min-height: 2.65rem;
    padding: 0 1rem;
    border-radius: 999px;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 255, 255, 0.72);
    color: #142238;
    font-weight: 700;
}

.finkash-hero-carousel-dots {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    flex: 1 1 auto;
}

.finkash-hero-carousel-dot {
    width: 0.72rem;
    height: 0.72rem;
    border-radius: 999px;
    border: 0;
    background: rgba(100, 116, 139, 0.32);
    transition: transform 0.2s ease, background 0.2s ease;
}

.finkash-hero-carousel-dot.active {
    background: linear-gradient(135deg, #c7994f, #195353);
    transform: scale(1.15);
}

.finkash-hero-screen {
    position: relative;
    border-radius: 1.5rem;
    padding: 1rem;
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98), rgba(241, 232, 217, 0.96));
    border: 1px solid rgba(21, 35, 58, 0.1);
    color: #142238;
    box-shadow: 0 1.7rem 3rem rgba(21, 35, 58, 0.14);
}

.finkash-hero-screen-main {
    z-index: 3;
}

.finkash-hero-screen-side {
    width: 100%;
    z-index: 2;
}

.finkash-hero-screen-bottom {
    width: 100%;
    z-index: 1;
}

.finkash-screen-head {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    color: #64748b;
    font-size: 0.75rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.finkash-screen-head strong {
    margin-left: auto;
    font-size: 0.98rem;
    letter-spacing: 0;
    text-transform: none;
    color: #142238;
}

.finkash-screen-dots {
    display: inline-flex;
    gap: 0.32rem;
}

.finkash-screen-dots span {
    width: 0.58rem;
    height: 0.58rem;
    border-radius: 999px;
}

.finkash-public-tabs-section {
    display: grid;
    gap: 1.15rem;
    padding: 1.35rem;
    border-radius: 1.6rem;
    background:
        radial-gradient(circle at top right, rgba(34, 197, 94, 0.12), transparent 26%),
        radial-gradient(circle at bottom left, rgba(244, 114, 182, 0.14), transparent 28%),
        linear-gradient(160deg, rgba(255, 255, 255, 0.94), rgba(250, 243, 230, 0.98));
    border: 1px solid rgba(21, 35, 58, 0.1);
    box-shadow: 0 1rem 2.4rem rgba(21, 35, 58, 0.08);
}

.public-notes-shell {
    gap: 1.5rem;
}

.public-notes-widget-grid,
.workspace-notes-widget-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.public-notes-widget-card,
.workspace-notes-widget-card {
    display: grid;
    gap: 0.75rem;
    padding: 1rem;
    border-radius: 1.2rem;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(21, 35, 58, 0.08);
    box-shadow: 0 0.8rem 1.8rem rgba(21, 35, 58, 0.07);
}

.public-notes-widget-card h3,
.public-notes-widget-card p,
.workspace-notes-widget-card h3,
.workspace-notes-widget-card p {
    margin: 0;
}

.public-notes-composer,
.workspace-notes-shell {
    padding: 1.2rem;
}

.public-notes-form-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: end;
}

.public-notes-meta {
    display: grid;
    gap: 0.2rem;
    padding: 0.75rem 0.95rem;
    border-radius: 1rem;
    background: rgba(248, 250, 252, 0.9);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.public-notes-meta-label {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #64748b;
}

.public-notes-textarea {
    min-height: 14rem;
    resize: vertical;
}

.finkash-public-tabs-copy {
    display: grid;
    gap: 0.55rem;
}

.finkash-public-tabs-copy h2 {
    margin: 0;
    color: #122235;
}

.finkash-public-tabs-copy p {
    margin: 0;
    color: #405068;
    max-width: 58rem;
}

.finkash-public-tabs-shell {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.finkash-public-tab {
    min-height: 2.85rem;
    padding: 0.7rem 1rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 118, 110, 0.18);
    background: rgba(255, 255, 255, 0.8);
    color: #11263e;
    font-size: 0.92rem;
    font-weight: 700;
    transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.finkash-public-tab:hover,
.finkash-public-tab:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(15, 118, 110, 0.38);
    box-shadow: 0 0 0 0.18rem rgba(45, 212, 191, 0.16);
}

.finkash-public-tab.is-active {
    color: #fffdf8;
    border-color: transparent;
    background: linear-gradient(135deg, #0f8f87, #ff6b6b 70%, #f59e0b);
    box-shadow: 0 1rem 1.8rem rgba(255, 107, 107, 0.18);
}

.finkash-public-tab-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(17rem, 0.95fr);
    gap: 1rem;
}

.finkash-public-tab-card {
    display: grid;
    gap: 1rem;
    min-height: 100%;
    padding: 1.2rem;
    border-radius: 1.35rem;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.finkash-public-tab-card h3,
.finkash-public-tab-card p {
    margin: 0;
}

.finkash-public-tab-pill {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 1.9rem;
    padding: 0.25rem 0.7rem;
    border-radius: 999px;
    background: rgba(15, 143, 135, 0.12);
    color: #0f766e;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.finkash-public-tab-metric-grid,
.finkash-public-tab-list,
.finkash-public-tab-steps {
    display: grid;
    gap: 0.8rem;
}

.finkash-public-tab-metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.finkash-public-tab-metric-grid div,
.finkash-public-tab-list div,
.finkash-public-tab-steps div {
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    background: rgba(248, 250, 252, 0.86);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.finkash-public-tab-metric-grid span,
.finkash-public-tab-list span,
.finkash-public-tab-steps span {
    display: block;
    color: #526076;
}

.finkash-public-tab-metric-grid strong,
.finkash-public-tab-list strong {
    display: block;
    color: #11263e;
    margin-bottom: 0.2rem;
}

.finkash-public-tab-visual,
.finkash-public-tab-card-visual {
    align-content: center;
}

.finkash-public-tab-chart {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: end;
    gap: 0.65rem;
    min-height: 12rem;
    padding: 1rem;
    border-radius: 1.2rem;
    background: linear-gradient(180deg, rgba(21, 35, 58, 0.96), rgba(15, 23, 42, 0.92));
}

.finkash-public-tab-chart span {
    border-radius: 999px 999px 0.8rem 0.8rem;
    background: linear-gradient(180deg, #f59e0b, #ff6b6b 58%, #0f8f87);
}

.finkash-public-tab-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.finkash-public-tab-chip-row span {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.32rem 0.72rem;
    border-radius: 999px;
    background: rgba(15, 143, 135, 0.1);
    color: #164e63;
    font-size: 0.82rem;
    font-weight: 700;
}

.finkash-public-social-orbit,
.finkash-public-access-panels {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    padding: 1rem;
    border-radius: 1.2rem;
    background: linear-gradient(145deg, rgba(21, 35, 58, 0.96), rgba(35, 49, 75, 0.92));
}

.finkash-public-social-orbit span,
.finkash-public-access-panels span {
    display: grid;
    place-items: center;
    min-height: 4rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.12);
    color: #fff8ef;
    font-weight: 800;
    letter-spacing: 0.03em;
}

.finkash-public-tab-steps div {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0.75rem;
}

.finkash-public-tab-steps strong {
    display: grid;
    place-items: center;
    width: 2.1rem;
    height: 2.1rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #0f8f87, #ff6b6b);
    color: #fff;
}

.finkash-screen-dots span:nth-child(1) { background: #fb7185; }
.finkash-screen-dots span:nth-child(2) { background: #fbbf24; }
.finkash-screen-dots span:nth-child(3) { background: #4ade80; }

.finkash-screen-brand {
    display: flex;
    gap: 0.8rem;
    align-items: center;
    margin-top: 0.9rem;
    padding: 0.82rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.finkash-screen-logo {
    width: 2.4rem;
    height: 2.4rem;
    object-fit: contain;
}

.finkash-screen-brand strong,
.finkash-minihero strong {
    display: block;
    color: #142238;
}

.finkash-screen-brand span,
.finkash-minihero span {
    display: block;
    margin-top: 0.18rem;
    color: #556274;
    font-size: 0.78rem;
}

.finkash-hero-chart {
    position: relative;
    height: 13rem;
    margin-top: 0.95rem;
    overflow: hidden;
    border-radius: 1.1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background:
        linear-gradient(90deg, rgba(21,35,58,0.06) 1px, transparent 1px),
        linear-gradient(180deg, rgba(21,35,58,0.06) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,0.82), rgba(245,237,223,0.98));
    background-size: 1rem 100%, 100% 1rem, auto;
}

.finkash-hero-chart-legend,
.finkash-hero-chart-axis {
    position: absolute;
    left: 1rem;
    right: 1rem;
    display: flex;
    justify-content: space-between;
    z-index: 2;
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.finkash-hero-chart-legend {
    top: 0.75rem;
    color: #556274;
}

.finkash-hero-chart-axis {
    bottom: 0.55rem;
    color: #6b7280;
}

.finkash-legend-line {
    display: inline-block;
    width: 1.1rem;
    height: 2px;
    margin-right: 0.4rem;
    vertical-align: middle;
}

.finkash-legend-line-gold {
    background: rgba(216, 183, 130, 0.96);
}

.finkash-legend-line-blue {
    background: rgba(96, 165, 250, 0.92);
}

.finkash-hero-bars {
    position: absolute;
    inset: 1rem;
    display: flex;
    align-items: flex-end;
    gap: 0.45rem;
}

.finkash-hero-bars span {
    flex: 1 1 0;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(180deg, rgba(216, 183, 130, 0.94), rgba(29, 78, 216, 0.3));
}

.finkash-hero-line {
    position: absolute;
    inset: 0.85rem;
}

.finkash-hero-line-gold {
    background:
        linear-gradient(180deg, transparent 60%, rgba(216, 183, 130, 0.14) 60%),
        linear-gradient(135deg, transparent 0 10%, rgba(216, 183, 130, 0.96) 10% 12%, transparent 12% 24%, rgba(216, 183, 130, 0.96) 24% 26%, transparent 26% 44%, rgba(216, 183, 130, 0.96) 44% 46%, transparent 46% 62%, rgba(216, 183, 130, 0.96) 62% 64%, transparent 64% 78%, rgba(216, 183, 130, 0.96) 78% 80%, transparent 80%);
}

.finkash-hero-line-blue {
    background:
        linear-gradient(180deg, transparent 64%, rgba(96, 165, 250, 0.1) 64%),
        linear-gradient(135deg, transparent 0 16%, rgba(96, 165, 250, 0.92) 16% 18%, transparent 18% 32%, rgba(96, 165, 250, 0.92) 32% 34%, transparent 34% 51%, rgba(96, 165, 250, 0.92) 51% 53%, transparent 53% 69%, rgba(96, 165, 250, 0.92) 69% 71%, transparent 71%);
    opacity: 0.76;
}

.finkash-screen-metrics,
.finkash-mini-grid,
.finkash-mini-rows {
    display: grid;
    gap: 0.7rem;
    margin-top: 0.9rem;
}

.finkash-screen-metrics {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.finkash-mini-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.finkash-screen-metrics div,
.finkash-mini-grid div,
.finkash-mini-rows div {
    padding: 0.72rem 0.8rem;
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.finkash-screen-metrics span,
.finkash-mini-grid span,
.finkash-mini-rows span,
.finkash-trust-item strong,
.finkash-service-card h3 {
    display: block;
}

.finkash-screen-metrics span,
.finkash-mini-grid span,
.finkash-mini-rows span {
    font-size: 0.7rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #64748b;
}

.finkash-screen-metrics strong,
.finkash-mini-grid strong,
.finkash-mini-rows strong {
    display: block;
    margin-top: 0.3rem;
    color: #142238;
}

.finkash-mini-chart {
    position: relative;
    height: 6.5rem;
    margin-top: 0.95rem;
    overflow: hidden;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background:
        linear-gradient(180deg, rgba(255,255,255,0.84), rgba(244,236,222,0.98)),
        linear-gradient(90deg, rgba(21,35,58,0.05) 1px, transparent 1px),
        linear-gradient(180deg, rgba(21,35,58,0.05) 1px, transparent 1px);
    background-size: auto, 1rem 1rem, 1rem 1rem;
}

.finkash-mini-chart::after {
    content: "";
    position: absolute;
    inset: 0.65rem;
    border-radius: 0.75rem;
    background: linear-gradient(180deg, rgba(216, 183, 130, 0.08), transparent 40%);
}

.finkash-hero-chip-row,
.finkash-research-party-strip,
.finkash-service-party-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 0.85rem;
}

.finkash-hero-chip,
.finkash-research-party-strip span,
.finkash-service-party-row span {
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
    padding: 0.38rem 0.62rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(21, 35, 58, 0.08);
    color: #425066;
    font-size: 0.74rem;
    font-weight: 600;
}

.finkash-hero-chip img,
.finkash-research-party-strip img,
.finkash-service-party-row img {
    width: 0.95rem;
    height: 0.95rem;
    object-fit: contain;
}

.finkash-hero-chip strong {
    color: #142238;
    font-size: 0.78rem;
}

.finkash-mini-chart-bars,
.finkash-service-mini-bars {
    position: absolute;
    inset: 0.85rem;
    display: flex;
    align-items: flex-end;
    gap: 0.42rem;
    z-index: 1;
}

.finkash-mini-chart-bars span,
.finkash-service-mini-bars span {
    flex: 1 1 0;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(180deg, rgba(216, 183, 130, 0.96), rgba(29, 78, 216, 0.22));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.45);
}

.finkash-mini-chart-note {
    position: absolute;
    left: 0.8rem;
    right: 0.8rem;
    bottom: 0.7rem;
    z-index: 2;
    color: #556274;
    font-size: 0.68rem;
    line-height: 1.25;
}

.finkash-service-visual {
    position: relative;
}

.finkash-service-mini-bars {
    position: relative;
    inset: auto;
    min-height: 3.9rem;
    margin-top: 0.2rem;
    padding-top: 0.35rem;
}

.finkash-service-line-chart {
    position: relative;
    min-height: 4.2rem;
    margin-top: 0.2rem;
    border-radius: 0.9rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background:
        linear-gradient(180deg, rgba(255,255,255,0.76), rgba(244,236,222,0.96)),
        linear-gradient(90deg, rgba(21,35,58,0.05) 1px, transparent 1px),
        linear-gradient(180deg, rgba(21,35,58,0.05) 1px, transparent 1px);
    background-size: auto, 1rem 1rem, 1rem 1rem;
    overflow: hidden;
}

.finkash-service-line-chart::before,
.finkash-service-line-chart::after {
    content: "";
    position: absolute;
    inset: 0.65rem;
    border-radius: 0.7rem;
}

.finkash-service-line-chart::before {
    background:
        linear-gradient(135deg, transparent 0 12%, rgba(216, 183, 130, 0.94) 12% 14%, transparent 14% 30%, rgba(216, 183, 130, 0.94) 30% 32%, transparent 32% 48%, rgba(216, 183, 130, 0.94) 48% 50%, transparent 50% 66%, rgba(216, 183, 130, 0.94) 66% 68%, transparent 68%);
}

.finkash-service-line-chart::after {
    opacity: 0.8;
    background:
        linear-gradient(135deg, transparent 0 18%, rgba(29, 78, 216, 0.88) 18% 20%, transparent 20% 38%, rgba(29, 78, 216, 0.88) 38% 40%, transparent 40% 58%, rgba(29, 78, 216, 0.88) 58% 60%, transparent 60% 76%, rgba(29, 78, 216, 0.88) 76% 78%, transparent 78%);
}

.finkash-promo-row,
.finkash-services-grid {
    display: grid;
    gap: 1rem;
}

.finkash-promo-row,
.finkash-story-section,
.finkash-services-section,
.finkash-trust-section {
    position: relative;
    padding: clamp(1rem, 2vw, 1.5rem);
    border-radius: 2rem;
    background: linear-gradient(180deg, rgba(255, 251, 245, 0.94), rgba(243, 234, 219, 0.84));
    border: 1px solid rgba(186, 141, 70, 0.12);
    box-shadow: 0 1rem 2.5rem rgba(21, 35, 58, 0.06);
}

.finkash-promo-row::before,
.finkash-story-section::before,
.finkash-services-section::before,
.finkash-trust-section::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    background:
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.08), transparent 24%),
        radial-gradient(circle at bottom left, rgba(35, 49, 75, 0.05), transparent 24%);
}

.finkash-promo-row > *,
.finkash-story-section > *,
.finkash-services-section > *,
.finkash-trust-section > * {
    position: relative;
    z-index: 1;
}

.finkash-promo-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.finkash-promo-card,
.finkash-service-card,
.finkash-story-copy,
.finkash-story-visual,
.finkash-trust-item {
    padding: 1.15rem;
    border-radius: 1.35rem;
    background: rgba(255, 250, 242, 0.84);
    border: 1px solid rgba(186, 141, 70, 0.15);
    box-shadow: 0 1rem 2.2rem rgba(21, 35, 58, 0.08);
}

.finkash-promo-card h3 {
    margin-top: 0.7rem;
    color: var(--finkash-navy);
    font-family: Georgia, "Times New Roman", serif;
}

.finkash-story-section {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.95fr);
}

.finkash-story-list {
    margin: 1rem 0 0;
    padding-left: 1.1rem;
    color: var(--finkash-muted);
}

.finkash-story-list li + li {
    margin-top: 0.45rem;
}

.finkash-story-visual {
    position: relative;
    display: grid;
    gap: 0.95rem;
    align-content: start;
    background:
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.12), transparent 28%),
        linear-gradient(180deg, #fcf8f1, var(--finkash-paper-strong));
}

.finkash-story-badge {
    width: fit-content;
    padding: 0.9rem 1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.65);
    border: 1px solid rgba(186, 141, 70, 0.16);
}

.finkash-story-badge strong,
.finkash-story-stats strong {
    display: block;
    color: var(--finkash-navy);
}

.finkash-story-badge span,
.finkash-story-stats span {
    color: var(--finkash-muted);
    font-size: 0.8rem;
}

.finkash-story-panel {
    display: grid;
    place-items: center;
    min-height: 15rem;
    border-radius: 1.2rem;
    background: linear-gradient(135deg, rgba(35, 49, 75, 0.08), rgba(186, 141, 70, 0.08));
    border: 1px solid rgba(186, 141, 70, 0.14);
}

.finkash-story-image {
    width: min(100%, 17rem);
    height: auto;
    object-fit: contain;
}

.finkash-story-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.finkash-story-stats div {
    padding: 0.8rem 0.85rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(186, 141, 70, 0.12);
}

.finkash-services-head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.finkash-text-link {
    color: var(--finkash-gold);
    font-weight: 700;
    text-decoration: none;
}

.finkash-services-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.finkash-service-card h3 {
    margin-top: 1rem;
    color: var(--finkash-navy);
}

.finkash-service-visual {
    min-height: 9rem;
    display: grid;
    gap: 0.55rem;
    align-content: start;
    border-radius: 1rem;
    border: 1px solid rgba(186, 141, 70, 0.12);
    background-color: #fbf7f0;
    overflow: hidden;
    padding: 0.85rem;
}

.finkash-service-visual-feed {
    background:
        linear-gradient(180deg, rgba(21, 35, 58, 0.05), rgba(21, 35, 58, 0)),
        linear-gradient(135deg, rgba(186, 141, 70, 0.16), transparent 42%),
        linear-gradient(180deg, #fcf8f1, #efe3d1);
}

.finkash-service-visual-portfolio {
    background:
        linear-gradient(180deg, rgba(96, 165, 250, 0.14), transparent 46%),
        linear-gradient(135deg, rgba(186, 141, 70, 0.12), transparent 40%),
        linear-gradient(180deg, #fbf7ef, #efe3d1);
}

.finkash-service-visual-analysis {
    background:
        linear-gradient(180deg, rgba(216, 183, 130, 0.18), transparent 46%),
        linear-gradient(135deg, rgba(35, 49, 75, 0.08), transparent 40%),
        linear-gradient(180deg, #fbf7ef, #efe3d1);
}

.finkash-service-visual-research {
    background:
        linear-gradient(180deg, rgba(35, 49, 75, 0.08), transparent 46%),
        linear-gradient(135deg, rgba(186, 141, 70, 0.14), transparent 40%),
        linear-gradient(180deg, #fbf7ef, #efe3d1);
}

.finkash-service-feed-row,
.finkash-service-stack div,
.finkash-service-compare div,
.finkash-service-research-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0.75rem;
    border-radius: 0.8rem;
    background: rgba(255, 255, 255, 0.58);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.finkash-service-feed-row span,
.finkash-service-stack span,
.finkash-service-compare span,
.finkash-service-research-row span {
    color: var(--finkash-muted);
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.finkash-service-feed-row strong,
.finkash-service-stack strong,
.finkash-service-compare strong,
.finkash-service-research-row strong {
    color: var(--finkash-navy);
    font-size: 0.88rem;
}

.finkash-service-stack,
.finkash-service-compare {
    display: grid;
    gap: 0.55rem;
}

.finkash-trust-section {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.finkash-trust-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.95rem;
}

.finkash-hero-section + .finkash-promo-row,
.finkash-promo-row + .finkash-story-section,
.finkash-story-section + .finkash-services-section,
.finkash-services-section + .finkash-trust-section {
    margin-top: 0.2rem;
}

.finkash-trust-item strong {
    color: var(--finkash-navy);
    font-size: 1rem;
}

.finkash-trust-item p {
    margin-top: 0.45rem;
}

.login-card-wide {
    width: 100%;
}

.public-access-overview {
    display: grid;
    gap: 1.5rem;
    padding: 1.75rem;
    border-radius: 1.75rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(247, 241, 230, 0.97)),
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.12), transparent 42%);
    box-shadow: 0 22px 60px rgba(21, 35, 58, 0.08);
}

.public-access-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
}

.public-access-section-head h2 {
    margin: 0.35rem 0 0;
    color: var(--finkash-navy);
    font-size: clamp(1.6rem, 1.8vw, 2.2rem);
    line-height: 1.08;
}

.public-access-section-head p {
    margin: 0.55rem 0 0;
    max-width: 62rem;
    color: var(--finkash-muted);
}

.public-access-updates-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.public-access-update-card {
    display: grid;
    gap: 0.75rem;
    min-height: 100%;
    padding: 1.15rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 255, 255, 0.76);
}

.public-access-update-card h3 {
    margin: 0;
    color: var(--finkash-navy);
    font-size: 1.05rem;
}

.public-access-update-card p {
    margin: 0;
    color: var(--finkash-muted);
    font-size: 0.96rem;
    line-height: 1.55;
}

.public-access-update-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: rgba(186, 141, 70, 0.16);
    color: var(--finkash-gold);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.public-access-matrix-shell {
    overflow-x: auto;
    border-radius: 1.35rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 255, 255, 0.72);
}

.public-access-matrix {
    width: 100%;
    min-width: 54rem;
    border-collapse: collapse;
}

.public-access-matrix th,
.public-access-matrix td {
    padding: 1rem 1.05rem;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid rgba(21, 35, 58, 0.08);
}

.public-access-matrix thead th {
    background: rgba(21, 35, 58, 0.94);
    color: #f8f4ec;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.public-access-matrix tbody tr:nth-child(even) {
    background: rgba(239, 227, 209, 0.34);
}

.public-access-matrix tbody tr:hover {
    background: rgba(186, 141, 70, 0.08);
}

.public-access-matrix td {
    color: var(--finkash-muted);
    line-height: 1.5;
}

.public-access-matrix td strong {
    color: var(--finkash-navy);
    font-size: 0.98rem;
}

.public-access-overview-compact {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.public-access-overview-compact .public-access-section-head h2 {
    font-size: clamp(1.35rem, 1.5vw, 1.85rem);
}

.public-access-overview-compact .public-access-updates-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.public-tour-note {
    margin-top: 1rem;
    padding: 0.9rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(186, 141, 70, 0.2);
    background: rgba(255, 251, 244, 0.92);
    color: var(--finkash-text);
    line-height: 1.55;
}

.public-tour-note strong {
    color: var(--finkash-navy);
}

.public-tour-shell {
    background:
        radial-gradient(circle at top left, rgba(216, 183, 130, 0.22), transparent 28%),
        linear-gradient(180deg, #f8f2e7, #f3eee4 34%, #efe7d7);
}

.public-tour-hero {
    padding: 1.25rem 0 0;
}

.public-tour-jumbotron {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 0.9fr);
    gap: 1.5rem;
    padding: 1.75rem;
    border-radius: 2rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background:
        linear-gradient(145deg, rgba(255,255,255,0.92), rgba(244,236,222,0.96)),
        radial-gradient(circle at top right, rgba(21, 35, 58, 0.08), transparent 40%);
    box-shadow: 0 30px 90px rgba(21, 35, 58, 0.12);
}

.public-tour-jumbotron-light {
    background:
        linear-gradient(145deg, rgba(255,255,255,0.9), rgba(247,241,230,0.96)),
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.12), transparent 40%);
}

.public-tour-jumbotron-dark {
    background:
        linear-gradient(135deg, rgba(21, 35, 58, 0.98), rgba(35, 49, 75, 0.96)),
        radial-gradient(circle at top right, rgba(216, 183, 130, 0.12), transparent 40%);
    color: #f8f4ec;
}

.public-tour-jumbotron-dark h2,
.public-tour-jumbotron-dark p,
.public-tour-jumbotron-dark .finkash-section-kicker {
    color: #f8f4ec;
}

.public-tour-copy h1,
.public-tour-copy h2 {
    margin: 0.4rem 0 0;
    color: var(--finkash-navy);
    font-size: clamp(2rem, 3vw, 3.35rem);
    line-height: 1.02;
}

.public-tour-copy h2 {
    font-size: clamp(1.8rem, 2.4vw, 2.8rem);
}

.public-tour-copy p {
    margin: 0.9rem 0 0;
    color: var(--finkash-muted);
    font-size: 1rem;
    line-height: 1.7;
}

.public-tour-hero-panels,
.public-tour-checklist,
.public-tour-panel-grid {
    display: grid;
    gap: 1rem;
}

.public-tour-mini-panel,
.public-tour-checklist div,
.public-tour-screen {
    padding: 1rem 1.05rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(21, 35, 58, 0.1);
    background: rgba(255, 255, 255, 0.78);
}

.public-tour-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin-bottom: 0.75rem;
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: rgba(35, 49, 75, 0.1);
    color: var(--finkash-navy);
    font-size: 0.77rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.public-tour-mini-panel h3,
.public-tour-screen-head strong,
.public-tour-checklist strong {
    display: block;
    color: var(--finkash-navy);
}

.public-tour-mini-panel h3 {
    margin: 0;
    font-size: 1.05rem;
}

.public-tour-mini-panel p,
.public-tour-checklist span,
.public-tour-screen-body p {
    margin: 0.55rem 0 0;
    color: var(--finkash-muted);
    line-height: 1.55;
}

.public-tour-checklist div {
    display: grid;
    gap: 0.3rem;
}

.public-tour-panel-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-tour-screen {
    min-height: 100%;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.84), rgba(247,241,230,0.94)),
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.14), transparent 38%);
}

.public-tour-screen-head {
    display: grid;
    gap: 0.15rem;
}

.public-tour-screen-body {
    margin-top: 1rem;
}

.kids-story-shell {
    width: min(1180px, 100%);
    margin: 0 auto;
    padding: 2rem 1rem 3rem;
    display: grid;
    gap: 1.5rem;
}

.kids-story-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.95fr);
    gap: 1.25rem;
    align-items: stretch;
}

.kids-story-hero-login {
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
}

.kids-story-copy,
.kids-story-book-cover,
.kids-story-panel {
    border: 1px solid rgba(16, 24, 40, 0.1);
    border-radius: 1.6rem;
    background:
        radial-gradient(circle at top right, rgba(232, 69, 102, 0.14), transparent 32%),
        radial-gradient(circle at bottom left, rgba(15, 143, 135, 0.12), transparent 26%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 241, 230, 0.96));
    box-shadow: var(--surface-shadow);
}

.kids-story-copy {
    padding: 1.65rem;
}

.kids-story-copy h1,
.kids-story-panel h2,
.kids-character-card h3,
.kids-timeline-step h3 {
    margin: 0;
    color: var(--text);
    font-family: var(--display);
    letter-spacing: -0.03em;
}

.kids-story-copy h1 {
    font-size: clamp(2rem, 4vw, 3.35rem);
    line-height: 0.98;
}

.kids-story-copy p,
.kids-story-panel p,
.kids-story-subtitle {
    color: color-mix(in srgb, var(--text) 72%, white 28%);
}

.kids-story-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(16, 24, 40, 0.08);
    color: var(--brand-b);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.kids-story-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.kids-story-book {
    display: flex;
}

.kids-story-book-cover {
    width: 100%;
    min-height: 100%;
    padding: 1.75rem;
    display: grid;
    align-content: center;
    gap: 0.9rem;
    background:
        radial-gradient(circle at top right, rgba(255, 209, 102, 0.3), transparent 30%),
        linear-gradient(160deg, #14364c, #1d5d64 55%, #e84566 130%);
    color: #fffaf4;
}

.kids-story-book-cover span,
.kids-story-book-cover p {
    color: rgba(255, 250, 244, 0.88);
}

.kids-story-book-cover strong {
    font-size: clamp(1.7rem, 3vw, 2.5rem);
    line-height: 1.02;
    letter-spacing: -0.03em;
}

.kids-story-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.kids-story-panel {
    padding: 1.35rem;
}

.kids-story-panel-head {
    display: grid;
    gap: 0.55rem;
    margin-bottom: 1rem;
}

.kids-character-grid,
.kids-timeline {
    display: grid;
    gap: 0.9rem;
}

.kids-character-card,
.kids-timeline-step {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.9rem;
    align-items: start;
    padding: 0.95rem 1rem;
    border-radius: 1.15rem;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(16, 24, 40, 0.08);
}

.kids-character-icon,
.kids-timeline-number {
    width: 3rem;
    height: 3rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(232, 69, 102, 0.16), rgba(15, 143, 135, 0.16));
    color: var(--text);
    font-size: 1.45rem;
    font-weight: 800;
}

.kids-story-subtitle {
    margin-top: 0.2rem;
    font-size: 0.88rem;
    font-weight: 700;
}

.kids-story-meta {
    margin-top: 0.7rem;
    font-size: 0.78rem;
    font-weight: 700;
    color: color-mix(in srgb, var(--brand-b) 78%, black 22%);
}

.public-tour-stat-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    padding: 0.72rem 0;
    border-bottom: 1px solid rgba(21, 35, 58, 0.08);
}

.public-tour-stat-row span {
    color: var(--finkash-muted);
    font-size: 0.8rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.public-tour-stat-row strong {
    color: var(--finkash-navy);
}

.social-public-share-shell {
    padding: 1.25rem 0 2rem;
}

.social-public-share-empty {
    width: min(100% - 2rem, 840px);
    margin: 1.5rem auto 0;
}

.social-public-share-hero {
    padding-top: 0.5rem;
}

.social-public-share-jumbotron {
    align-items: stretch;
}

.social-public-share-jumbotron-condensed {
    gap: 1rem;
}

.social-public-share-jumbotron-light {
    margin-top: 1.25rem;
}

.social-public-share-screen {
    display: grid;
    gap: 1rem;
}

.social-public-share-origin-card {
    display: grid;
    gap: 0.95rem;
    border-radius: 1.35rem;
    background:
        linear-gradient(165deg, rgba(255,255,255,0.9), rgba(245,238,226,0.96)),
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.12), transparent 42%);
}

.social-public-share-origin-top {
    align-items: start;
}

.social-public-share-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1rem;
}

.social-public-share-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    background: rgba(21, 35, 58, 0.08);
    color: var(--finkash-navy);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.social-public-share-chip.is-platform {
    background: rgba(186, 141, 70, 0.14);
}

.social-public-share-source-block {
    margin-top: 1rem;
}

.social-public-share-source-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 0.15rem;
}

.social-public-share-source-row-compact {
    margin-top: 0.75rem;
}

.social-public-share-source-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.38rem 0.7rem;
    border-radius: 0.75rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.74);
    color: var(--finkash-navy);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.social-public-share-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    margin-top: 1.25rem;
}

.social-public-share-preview-shell {
    display: grid;
    gap: 0.75rem;
}

.social-public-share-preview-image {
    width: min(100%, 34rem);
    border-radius: 1.25rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 1.25rem 2.75rem rgba(0, 0, 0, 0.28);
    background: rgba(8, 16, 31, 0.92);
}

.social-public-share-actions-stacked {
    flex-direction: column;
    align-items: stretch;
}

.social-public-share-quote,
.social-public-share-member,
.social-public-share-platform-copy {
    display: grid;
    gap: 0.25rem;
    padding: 1rem;
    border-radius: 1.1rem;
    background: rgba(255, 255, 255, 0.74);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.social-public-share-quote strong,
.social-public-share-member strong,
.social-public-share-platform-copy strong {
    color: var(--finkash-navy);
    font-size: 1rem;
}

.social-public-share-member {
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0.8rem;
}

.social-public-share-member img {
    width: 3rem;
    height: 3rem;
    object-fit: cover;
    border-radius: 999px;
    border: 2px solid rgba(21, 35, 58, 0.08);
}

.social-public-share-member span,
.social-public-share-platform-copy span {
    color: var(--finkash-muted);
    line-height: 1.5;
}

.social-public-share-member-profile {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1rem;
    align-items: start;
}

.social-public-share-member-profile-image {
    width: 4.25rem;
    height: 4.25rem;
    object-fit: cover;
    border-radius: 999px;
    border: 2px solid rgba(21, 35, 58, 0.08);
}

.social-public-share-member-profile-copy {
    display: grid;
    gap: 0.35rem;
}

.social-public-share-member-profile-copy span,
.social-public-share-banana-meta span {
    color: var(--finkash-muted);
    line-height: 1.5;
}

.social-media-push-page {
    background:
        radial-gradient(circle at top, rgba(239, 228, 204, 0.55), transparent 46%),
        linear-gradient(180deg, rgba(255, 252, 246, 0.98), rgba(245, 239, 227, 0.94));
    color: var(--news-ink);
}

.social-media-push-page .surface-card,
.social-media-push-page .trade-flyout-highlight,
.social-public-share-news-page .public-tour-jumbotron,
.social-public-share-news-page .public-tour-screen,
.social-public-share-news-page .public-tour-jumbotron-light {
    background: rgba(255, 252, 246, 0.94);
    border: 1px solid var(--news-rule);
    box-shadow: 0 18px 42px rgba(23, 18, 13, 0.08);
}

.social-media-push-page .section-head h2,
.social-public-share-news-page .public-tour-copy h1,
.social-public-share-news-page .public-tour-copy h2,
.social-public-share-news-page .public-tour-screen-head strong {
    font-family: var(--news-serif);
    color: var(--news-ink);
    letter-spacing: -0.03em;
}

.social-media-push-page .section-head p,
.social-public-share-news-page .public-tour-copy p,
.social-public-share-news-page .social-public-share-panel-copy,
.social-public-share-news-page .social-public-share-member-profile-copy span,
.social-public-share-news-page .social-public-share-filing-meta,
.social-public-share-news-page .table-meta {
    font-family: var(--news-sans);
}

.social-media-push-page .eyebrow,
.social-public-share-news-page .eyebrow {
    letter-spacing: 0.16em;
}

.social-public-share-banana-panel {
    gap: 0.85rem;
}

.social-public-share-banana-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-top: 0.35rem;
}

.social-public-share-banana-button {
    min-width: 3rem;
    min-height: 3rem;
    padding: 0.45rem 0.7rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 10px 24px rgba(21, 35, 58, 0.08);
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
}

.social-public-share-banana-button:hover,
.social-public-share-banana-button:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(21, 35, 58, 0.12);
    border-color: rgba(186, 141, 70, 0.32);
}

.social-public-share-banana-button.is-selected {
    background: linear-gradient(135deg, rgba(255, 245, 196, 0.96), rgba(255, 226, 138, 0.96));
    border-color: rgba(186, 141, 70, 0.44);
}

.social-public-share-banana-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    margin-top: 0.65rem;
}

.social-public-share-price {
    color: var(--finkash-navy);
    font-size: clamp(1.8rem, 2.6vw, 2.4rem);
    font-weight: 700;
    line-height: 1;
}

.social-public-share-up {
    color: #177245;
    font-weight: 700;
}

.social-public-share-down {
    color: #b24f43;
    font-weight: 700;
}

.social-public-share-stat-grid,
.social-public-share-grid {
    display: grid;
    gap: 1rem;
}

.social-public-share-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.social-public-share-stat-card {
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.68);
    border: 1px solid rgba(21, 35, 58, 0.08);
}

.social-public-share-stat-card span {
    display: block;
    color: var(--finkash-muted);
    font-size: 0.76rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.social-public-share-stat-card strong {
    display: block;
    margin-top: 0.35rem;
    color: var(--finkash-navy);
    font-size: 1rem;
}

.social-public-share-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 1.25rem;
}

.social-public-share-panel {
    min-height: 100%;
}

.social-public-share-grid-condensed {
    grid-template-columns: 1.2fr 1fr;
}

.social-public-share-lead-copy {
    max-width: 56rem;
}

.social-public-share-member-profile-compact {
    grid-template-columns: auto 1fr;
    gap: 0.85rem;
    padding: 0.9rem 0;
}

.social-public-share-quote-compact {
    gap: 0.15rem;
}

.social-public-share-ticker-list-compact {
    gap: 0.65rem;
}

.social-public-share-engagement-panel {
    display: grid;
    gap: 1rem;
}

.social-public-share-vote-block {
    display: grid;
    gap: 0.75rem;
}

.social-public-share-poll-list {
    display: grid;
    gap: 0.65rem;
}

.social-public-share-poll-option {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.9rem;
    min-height: 3.25rem;
    width: 100%;
    padding: 0.85rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(21, 35, 58, 0.12);
    background: rgba(255, 255, 255, 0.82);
    color: var(--finkash-navy);
    text-align: left;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
}

.social-public-share-poll-option:hover,
.social-public-share-poll-option:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(21, 35, 58, 0.12);
    border-color: rgba(186, 141, 70, 0.32);
}

.social-public-share-poll-option.is-selected {
    background: linear-gradient(135deg, rgba(255, 245, 196, 0.96), rgba(255, 226, 138, 0.96));
    border-color: rgba(186, 141, 70, 0.44);
}

.social-public-share-poll-option-label {
    font-weight: 700;
}

.social-public-share-poll-option-meta {
    color: var(--finkash-muted);
    font-size: 0.9rem;
}

.social-public-share-takeaways {
    gap: 0.75rem;
}

.social-public-share-stat-list {
    margin-top: 0.9rem;
}

.social-public-share-forecast {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 1rem;
    background: rgba(35, 49, 75, 0.06);
}

.social-public-share-forecast strong {
    display: block;
    margin-top: 0.2rem;
    color: var(--finkash-navy);
}

.social-public-share-forecast p,
.social-public-share-panel-copy {
    margin: 0.65rem 0 0;
    color: var(--finkash-muted);
    line-height: 1.6;
}

.social-public-share-ticker-list,
.social-public-share-filing-list {
    display: grid;
    gap: 0.85rem;
}

.social-public-share-ticker-row,
.social-public-share-filing-card {
    padding: 1rem;
    border-radius: 1.05rem;
    border: 1px solid rgba(21, 35, 58, 0.08);
    background: rgba(255, 255, 255, 0.78);
}

.social-public-share-ticker-row {
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: 1rem;
}

.social-public-share-ticker-row strong,
.social-public-share-filing-card strong {
    display: block;
    color: var(--finkash-navy);
}

.social-public-share-ticker-row span,
.social-public-share-filing-card span {
    color: var(--finkash-muted);
    line-height: 1.45;
}

.social-public-share-filing-head,
.social-public-share-filing-meta {
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: 0.8rem;
}

.social-public-share-filing-meta {
    flex-wrap: wrap;
    margin-top: 0.75rem;
    font-size: 0.9rem;
}

.social-public-share-filing-detail-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.7rem;
    margin-top: 0.85rem;
}

.social-public-share-filing-detail {
    padding: 0.7rem 0.8rem;
    border-radius: 0.85rem;
    background: rgba(35, 49, 75, 0.05);
    border: 1px solid rgba(21, 35, 58, 0.06);
}

.social-public-share-filing-code {
    display: grid;
    gap: 0.15rem;
    margin-top: 0.7rem;
}

.social-public-share-filing-code span {
    color: var(--finkash-muted);
    font-size: 0.74rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.social-public-share-filing-code strong {
    color: var(--finkash-navy);
    font-size: 0.96rem;
}

.social-public-share-filing-detail span {
    display: block;
    color: var(--finkash-muted);
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.social-public-share-filing-detail strong {
    margin-top: 0.25rem;
}

.social-public-share-footer {
    margin-top: 1.25rem;
}

@media (max-width: 900px) {
    .public-access-section-head {
        align-items: start;
        flex-direction: column;
    }

    .public-access-updates-grid,
    .public-access-overview-compact .public-access-updates-grid {
        grid-template-columns: 1fr;
    }

    .public-access-overview {
        padding: 1.2rem;
    }

    .public-tour-jumbotron,
    .public-tour-panel-grid,
    .social-public-share-grid {
        grid-template-columns: 1fr;
    }

    .social-public-share-grid-condensed {
        grid-template-columns: 1fr;
    }

    .social-public-share-stat-grid {
        grid-template-columns: 1fr;
    }

    .social-public-share-ticker-row,
    .social-public-share-filing-head,
    .social-public-share-filing-meta {
        flex-direction: column;
    }

    .social-public-share-member-profile {
        grid-template-columns: 1fr;
    }

    .social-public-share-poll-option {
        flex-direction: column;
        align-items: start;
    }

    .social-public-share-filing-detail-grid {
        grid-template-columns: 1fr 1fr;
    }
  }

@media (max-width: 1200px) {
    .finkash-hero-section,
    .finkash-story-section,
    .finkash-trust-section,
    .finkash-services-grid {
        grid-template-columns: 1fr 1fr;
    }

    .finkash-hero-section {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .finkash-promo-row,
    .finkash-services-grid,
    .finkash-trust-grid,
    .finkash-story-stats,
    .finkash-screen-metrics,
    .finkash-mini-grid {
        grid-template-columns: 1fr;
    }

    .finkash-hero-section,
    .finkash-story-section,
    .finkash-trust-section,
    .finkash-promo-row,
    .finkash-services-section {
        grid-template-columns: 1fr;
        padding: 1.1rem;
    }

    .finkash-hero-copy h1 {
        max-width: 100%;
    }

    .finkash-hero-carousel-controls {
        flex-wrap: wrap;
    }

    .finkash-hero-carousel-nav {
        flex: 1 1 auto;
        justify-content: center;
    }

    .finkash-public-tab-panel {
        grid-template-columns: 1fr;
    }

    .public-notes-widget-grid,
    .workspace-notes-widget-grid,
    .public-notes-form-grid {
        grid-template-columns: 1fr;
    }

    .finkash-services-head {
        flex-direction: column;
    }
}

.finkash-public-shell {
    margin-top: 0;
    gap: 0;
    padding-inline: 0;
    padding-bottom: 10rem;
    background: #f3eee4;
}

.finkash-public-shell > * {
    width: 100%;
    margin-inline: 0;
}

.finkash-band-inner {
    width: min(100% - 2rem, 1240px);
    margin-inline: auto;
}

.finkash-public-topline {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
    box-shadow: none;
}

.finkash-public-tabs-section {
    border-radius: 1.2rem;
    padding: 1rem;
}

.finkash-main-nav-band {
    position: sticky;
    top: 0;
    z-index: 20;
    padding: 1rem 0;
    background: rgba(248, 243, 233, 0.92);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(21, 35, 58, 0.08);
}

.finkash-main-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.finkash-main-brand,
.finkash-footer-brand {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    text-decoration: none;
}

.finkash-main-brand strong,
.finkash-footer-brand strong {
    display: block;
    color: var(--finkash-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.1rem;
}

.finkash-main-brand span {
    display: block;
    color: var(--finkash-muted);
    font-size: 0.82rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.finkash-main-brand-logo {
    width: 3rem;
    height: 3rem;
    object-fit: contain;
}

.finkash-main-links,
.finkash-footer-links {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    flex-wrap: wrap;
}

.finkash-main-links a,
.finkash-footer-links a {
    color: var(--finkash-navy);
    text-decoration: none;
    font-size: 0.92rem;
    font-weight: 600;
}

.finkash-main-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    padding: 0 1.3rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #c7994f, #a77430);
    color: #fff7eb;
    text-decoration: none;
    font-weight: 700;
    box-shadow: 0 1rem 2rem rgba(167, 116, 48, 0.24);
}

.finkash-hero-band {
    padding: 2rem 0 1.4rem;
    background:
        radial-gradient(circle at top right, rgba(186, 141, 70, 0.16), transparent 18%),
        linear-gradient(180deg, #f8f3e9, #efe4d2);
}

.finkash-promo-band {
    padding: 0 0 1.8rem;
    background: linear-gradient(180deg, #efe4d2, #f6f1e7);
}

.finkash-story-band {
    padding: 2.2rem 0;
    background: #fbf8f2;
}

.finkash-services-band {
    padding: 2.2rem 0;
    background:
        radial-gradient(circle at left center, rgba(21, 35, 58, 0.04), transparent 18%),
        #ede3d2;
}

.finkash-trust-band {
    padding: 2.2rem 0;
    background: #fbf8f2;
}

.finkash-newsletter-band {
    padding: 2.2rem 0;
    background: linear-gradient(180deg, #142238, #1d2d47);
}

.finkash-footer-band {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 100;
    padding: 1.4rem 0 2.2rem;
    background: #101b2d;
}

.finkash-hero-section,
.finkash-promo-row,
.finkash-story-section,
.finkash-services-section,
.finkash-trust-section {
    margin-top: 0;
}

.finkash-newsletter-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 28rem);
    gap: 1.2rem;
    align-items: center;
    padding: 1.6rem;
    border-radius: 2rem;
    background:
        radial-gradient(circle at top right, rgba(216, 183, 130, 0.16), transparent 22%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
    border: 1px solid rgba(216, 183, 130, 0.2);
    box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.18);
}

.finkash-newsletter-copy h2 {
    margin-top: 0.8rem;
    color: #f8f3e9;
    font-family: Georgia, "Times New Roman", serif;
}

.finkash-newsletter-copy p {
    color: rgba(235, 241, 250, 0.74);
}

.finkash-newsletter-form {
    display: grid;
    gap: 0.75rem;
}

.finkash-newsletter-form input {
    min-height: 3.4rem;
    padding: 0 1rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.08);
    color: #f8f3e9;
}

.finkash-newsletter-form input::placeholder {
    color: rgba(235, 241, 250, 0.56);
}

.finkash-newsletter-form button {
    min-height: 3.4rem;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, #d2ab65, #b7863e);
    color: #142238;
    font-weight: 800;
}

.finkash-footer {
    display: flex;
    justify-content: space-between;
    gap: 1.25rem;
    align-items: center;
}

.finkash-footer-brand p {
    margin: 0.35rem 0 0;
    max-width: 38rem;
    color: rgba(235, 241, 250, 0.64);
}

.finkash-footer-brand strong,
.finkash-footer-links a {
    color: #f8f3e9;
}

@media (max-width: 900px) {
    .finkash-main-nav,
    .finkash-footer,
    .finkash-newsletter-card {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: flex-start;
    }

    .finkash-main-links {
        display: none;
    }

    .finkash-main-cta {
        width: 100%;
    }

    .finkash-band-inner {
        width: min(100% - 1.25rem, 1240px);
    }
}

/* ==============================
   FINAL CONTRAST OVERRIDES
================================*/
.btn-gradient,
.btn-gradient:hover,
.btn-gradient:focus,
.btn-gradient:active,
.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-light,
.btn-light:hover,
.btn-light:focus,
.btn-secondary,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-warning,
.btn-warning:hover,
.btn-warning:focus,
.btn-info,
.btn-info:hover,
.btn-info:focus,
.btn-success,
.btn-success:hover,
.btn-success:focus,
.btn-danger,
.btn-danger:hover,
.btn-danger:focus,
.btn-outline-light,
.btn-outline-light:hover,
.btn-outline-light:focus,
.btn-glass,
.btn-glass:hover,
.btn-glass:focus {
    color: #142238 !important;
}

.btn-light,
.btn-primary,
.btn-secondary,
.btn-warning,
.btn-info,
.btn-success,
.btn-danger,
.btn-outline-light,
.btn-glass {
    border-color: rgba(21, 35, 58, 0.16) !important;
}

.btn-light {
    background: #fffaf0 !important;
}

.btn-primary {
    background: linear-gradient(135deg, #d8b776, #b7863e) !important;
    border-color: rgba(167, 116, 48, 0.24) !important;
}

.btn-secondary,
.btn-outline-light,
.btn-outline-warning,
.btn-glass {
    background: rgba(255, 255, 255, 0.88) !important;
}

.btn-gradient,
.btn-outline-light,
.btn-outline-warning,
.btn-primary,
.btn-secondary,
.btn-light,
.btn-warning,
.btn-info,
.btn-success,
.btn-danger,
.btn-glass {
    color: #142238 !important;
    border-color: rgba(21, 35, 58, 0.18) !important;
}

.btn-gradient:hover,
.btn-gradient:focus,
.btn-outline-light:hover,
.btn-outline-light:focus,
.btn-outline-warning:hover,
.btn-outline-warning:focus,
.btn-primary:hover,
.btn-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-light:hover,
.btn-light:focus,
.btn-warning:hover,
.btn-warning:focus,
.btn-info:hover,
.btn-info:focus,
.btn-success:hover,
.btn-success:focus,
.btn-danger:hover,
.btn-danger:focus,
.btn-glass:hover,
.btn-glass:focus {
    background: rgba(255, 255, 255, 0.98) !important;
    color: #0f1b2b !important;
    border-color: rgba(21, 35, 58, 0.24) !important;
}

.form-label,
label,
.member-label,
.ticker-label,
.shell-userlabel,
.shell-username,
.table-meta,
.trade-kpi-label,
.member-tile-meta,
.member-tile-filing-meta,
.trade-tile-company,
.trade-event-meta,
.trade-flyout-header p,
.trade-flyout-highlight-meta,
.trade-flyout-kpi span,
.text-muted,
.text-secondary {
    color: #334155 !important;
}

.dashboard-signal-badge,
.dashboard-signal-portfolio,
.dashboard-signal-member,
.dashboard-signal-whale,
.dashboard-signal-watchlist,
.dashboard-signal-tracked,
.ticker-party-badge,
.ticker-party-dem,
.ticker-party-rep,
.ticker-party-other,
.trade-tile-flag,
.trade-tile-status,
.trade-tile-action,
.trade-mini-badge,
.pill,
.party-badge,
.badge {
    color: #142238 !important;
    text-shadow: none !important;
}

.dashboard-signal-portfolio {
    background: rgba(244, 63, 94, 0.14) !important;
    border-color: rgba(190, 24, 93, 0.28) !important;
}

.dashboard-signal-member {
    background: rgba(59, 130, 246, 0.14) !important;
    border-color: rgba(37, 99, 235, 0.28) !important;
}

.dashboard-signal-whale {
    background: rgba(20, 184, 166, 0.14) !important;
    border-color: rgba(13, 148, 136, 0.28) !important;
}

.dashboard-signal-watchlist {
    background: rgba(14, 165, 233, 0.14) !important;
    border-color: rgba(14, 165, 233, 0.28) !important;
}

.dashboard-signal-tracked {
    background: rgba(148, 163, 184, 0.16) !important;
    border-color: rgba(100, 116, 139, 0.22) !important;
}

.ticker-chip,
.ticker-chip-member-dem,
.ticker-chip-member-rep,
.ticker-chip-member-other,
.trade-tile-card,
.trade-tile-kpi-chip,
.trade-tile-chart {
    background: linear-gradient(180deg, rgba(255, 251, 243, 0.98), rgba(246, 238, 224, 0.96)) !important;
    color: #142238 !important;
    border-color: rgba(21, 35, 58, 0.12) !important;
    box-shadow: 0 0.9rem 2rem rgba(21, 35, 58, 0.08) !important;
}

.ticker-chip-neutral {
    border-left-color: rgba(100, 116, 139, 0.45) !important;
}

.ticker-chip-member-dem {
    border-left-color: #2563eb !important;
}

.ticker-chip-member-rep {
    border-left-color: #dc2626 !important;
}

.ticker-chip-member-other {
    border-left-color: #b45309 !important;
}

.ticker-chip .quote-symbol,
.ticker-chip .table-meta,
.ticker-chip .mono.fw-semibold,
.ticker-kpi-metrics,
.ticker-chip .text-end,
.trade-tile-card .card-body,
.trade-tile-card .list-group-item,
.trade-tile-card .pill,
.trade-tile-yahoo,
.trade-tile-bottom-meta {
    color: #142238 !important;
}

.ticker-chip .table-meta,
.ticker-kpi-metrics,
.trade-tile-company,
.trade-tile-bottom-meta {
    color: #556274 !important;
}

.ticker-party-dem {
    background: rgba(37, 99, 235, 0.14) !important;
}

.ticker-party-rep {
    background: rgba(220, 38, 38, 0.14) !important;
}

.ticker-party-other {
    background: rgba(180, 83, 9, 0.16) !important;
}

.trade-tile-kpi-chip {
    background: rgba(255, 255, 255, 0.72) !important;
}

.trade-tile-kpi-chip strong,
.trade-tile-title-row,
.trade-tile-main,
.trade-tile-symbol-row {
    color: #142238 !important;
}

.chart-party-legend {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
    gap: 0.75rem;
    margin-top: 0.95rem;
}

.chart-party-legend-item {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.7rem 0.8rem;
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(21, 35, 58, 0.1);
}

.chart-party-legend-icon {
    width: 1.35rem;
    height: 1.35rem;
    object-fit: contain;
    flex: 0 0 auto;
    filter: drop-shadow(0 0 3px rgba(7, 17, 31, 0.14));
}

.chart-party-legend-copy {
    display: grid;
    gap: 0.12rem;
    min-width: 0;
}

.chart-party-legend-copy strong {
    color: #142238;
    font-size: 0.84rem;
    line-height: 1.1;
}

.chart-party-legend-copy span {
    color: #4f5d71;
    font-size: 0.76rem;
    line-height: 1.15;
}

.trade-flyout-panel .table-meta,
.trade-flyout-panel small,
.trade-flyout-panel .small,
.trade-flyout-panel p,
.member-tile .table-meta,
.member-tile small,
.member-tile .small,
.member-tile-activity,
.member-tile-count,
.member-tile-filing-meta,
.trade-event-row .table-meta,
.trade-event-row small,
.whale-flyout-copy,
.page-alert-card small,
.alert-inbox-card small,
.alert-inbox-reader small,
.alert-inbox-item .table-meta,
.alert-inbox-item .text-muted {
    color: var(--muted) !important;
}

.trade-flyout-panel .trade-event-filer,
.trade-flyout-panel .fw-semibold,
.member-tile .fw-semibold,
.member-tile-filing-main,
.alert-inbox-card,
.alert-inbox-reader-message {
    color: var(--text) !important;
}

.small {
    font-size: 0.7rem !important;
    color: #334155 !important;
}
.monkey-wizard-shell {
  position: fixed;
  inset: calc(var(--shell-header-height) + 0.15rem) 0 calc(var(--shell-footer-height) + 0.15rem) 0;
  z-index: 1910;
  pointer-events: none;
}

.monkey-wizard-shell.open {
  pointer-events: auto;
}

.monkey-wizard-backdrop {
  position: absolute;
  inset: 0;
  background: color-mix(in srgb, var(--text) 40%, transparent);
  opacity: 0;
  transition: opacity 0.2s ease;
}

.monkey-wizard-shell.open .monkey-wizard-backdrop {
  opacity: 1;
}

.monkey-wizard-panel {
  position: absolute;
  top: 0.35rem;
  left: 50%;
  transform: translateX(-50%) translateY(1rem);
  width: min(76rem, calc(100vw - 1rem));
  max-height: calc(100% - 0.7rem);
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 1.5rem;
  background: var(--surface);
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.18);
  padding: 1.25rem;
  opacity: 0;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.monkey-wizard-page {
  position: static;
  top: auto;
  left: auto;
  transform: none;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  max-height: none;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
  opacity: 1;
}

.monkey-wizard-shell.open .monkey-wizard-panel {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.monkey-wizard-header,
.monkey-wizard-toolbar,
.monkey-wizard-grid,
.monkey-wizard-summary,
.monkey-wizard-details {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.monkey-wizard-header {
  grid-template-columns: 1fr auto;
  align-items: start;
  margin-bottom: 1rem;
}

.monkey-wizard-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(16rem, 32vw);
  min-width: 8rem;
  padding: 0.2rem 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.monkey-wizard-brand-image {
  display: block;
  width: 100%;
  max-width: 12rem;
  height: auto;
  object-fit: contain;
}

.monkey-wizard-header p {
  margin: 0.35rem 0 0;
  color: var(--muted);
}

.monkey-wizard-toolbar {
  grid-template-columns: auto minmax(0, 18rem);
  align-items: center;
  margin-bottom: 1rem;
}

.segmented-toggle {
  display: inline-flex;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 0.2rem;
  background: color-mix(in srgb, var(--bg) 88%, white);
}

.segmented-toggle-btn {
  border: 0;
  background: transparent;
  color: var(--text);
  padding: 0.55rem 1rem;
  border-radius: 999px;
  font-weight: 600;
}

.segmented-toggle-btn.active {
  background: var(--brand-b);
  color: var(--text);
}

.monkey-wizard-grid {
  grid-template-columns: minmax(16rem, 22rem) minmax(0, 1fr);
  align-items: start;
}

.monkey-wizard-column,
.monkey-wizard-column-wide {
  min-width: 0;
  max-width: 100%;
}

.monkey-wizard-candidate-list,
.monkey-quarter-list {
  display: grid;
  gap: 0.75rem;
}

.monkey-wizard-candidate {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 1rem;
  background: color-mix(in srgb, var(--bg) 84%, white);
  color: var(--text);
  padding: 0.85rem 0.95rem;
  text-align: left;
  gap: 0.75rem;
  flex-wrap: wrap;
  overflow: hidden;
}

.monkey-wizard-candidate > div {
  min-width: 0;
  flex: 1 1 12rem;
}

.monkey-wizard-candidate strong,
.monkey-wizard-candidate .table-meta {
  overflow-wrap: anywhere;
}

.monkey-wizard-candidate.active {
  border-color: var(--brand-a);
  background: color-mix(in srgb, var(--brand-a) 14%, var(--surface));
}

.monkey-wizard-summary {
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  margin-bottom: 1rem;
}

.monkey-wizard-details {
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.monkey-wizard-panel .chart-surface,
.monkey-wizard-panel .metric-card,
.monkey-wizard-panel .trade-event-list,
.monkey-wizard-panel .trade-event-row {
  min-width: 0;
  max-width: 100%;
}

.monkey-wizard-panel .chart-card-head,
.monkey-wizard-panel .trade-event-top,
.monkey-wizard-panel .trade-event-meta,
.monkey-wizard-panel .metric-card {
  min-width: 0;
  color: var(--text);
}

.monkey-wizard-panel .chart-card-head > *:first-child,
.monkey-wizard-panel h3,
.monkey-wizard-panel strong,
.monkey-wizard-panel .trade-event-top > div,
.monkey-wizard-panel .metric-card > strong,
.monkey-wizard-panel .trade-event-filer,
.monkey-wizard-panel .mono {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
  color: var(--text) !important;
}

.monkey-wizard-panel .table-meta,
.monkey-wizard-panel small,
.monkey-wizard-panel .metric-card > small,
.monkey-wizard-panel .metric-card > span,
.monkey-wizard-panel .trade-event-meta span,
.monkey-wizard-panel .empty-state,
.monkey-wizard-panel p {
  color: var(--muted) !important;
}

.monkey-wizard-panel .trade-event-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-start;
  gap: 0.85rem;
}

.monkey-wizard-panel .trade-event-top > .mono,
.monkey-wizard-panel .trade-event-top > .trade-tile-action {
  flex: 0 0 auto;
  text-align: right;
  max-width: 7rem;
  font-size: 0.85rem;
  line-height: 1.25;
  white-space: normal;
}

.monkey-wizard-summary .metric-card {
  overflow: hidden;
}

.monkey-wizard-summary .metric-card strong,
.monkey-wizard-summary .metric-card small {
  display: block;
}

.monkey-wizard-ml-surface {
  margin-top: 1rem;
}

.monkey-wizard-ml-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  gap: 1rem;
}

.monkey-wizard-ml-summary-copy {
  display: grid;
  gap: 0.35rem;
  margin-top: 1rem;
  padding: 0.95rem 1rem;
  border-radius: 1rem;
  border: 1px solid var(--line);
  background: color-mix(in srgb, var(--brand-b) 9%, white);
}

.monkey-wizard-ml-contributions {
  margin-top: 1rem;
}

.monkey-wizard-ml-contribution-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.8rem;
  margin-top: 0.65rem;
  color: var(--muted);
}

.monkey-wizard-evidence-surface {
  margin-top: 1rem;
}

.monkey-wizard-evidence-row {
  cursor: default;
}

.monkey-wizard-evidence-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.8rem;
  margin-top: 0.65rem;
}

.monkey-quarter-row {
  display: grid;
  gap: 0.65rem;
  border-top: 1px solid var(--line);
  padding-top: 0.75rem;
}

.monkey-quarter-row:first-child {
  border-top: 0;
  padding-top: 0;
}

.monkey-quarter-copy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.monkey-quarter-copy span {
  color: var(--muted);
  font-size: 0.9rem;
}

.monkey-quarter-bars {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
  overflow: hidden;
}

.monkey-quarter-bar {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  border-radius: 999px;
  padding: 0.45rem 0.7rem;
  color: var(--text);
  font-size: 0.84rem;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
  background: color-mix(in srgb, var(--surface) 92%, var(--line));
}

.monkey-quarter-bar::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--bar-width, 0%);
  border-radius: inherit;
  z-index: -1;
}

.monkey-quarter-bar.buy {
  color: color-mix(in srgb, var(--text) 94%, var(--success));
}

.monkey-quarter-bar.sell {
  color: color-mix(in srgb, var(--text) 94%, var(--danger));
}

.monkey-quarter-bar.net.positive {
  color: color-mix(in srgb, var(--text) 94%, var(--brand-b));
}

.monkey-quarter-bar.net.negative {
  color: color-mix(in srgb, var(--text) 94%, var(--danger));
}

.monkey-quarter-bar.buy::before {
  background: color-mix(in srgb, var(--success) 18%, var(--surface));
}

.monkey-quarter-bar.sell::before {
  background: color-mix(in srgb, var(--danger) 15%, var(--surface));
}

.monkey-quarter-bar.net.positive::before {
  background: color-mix(in srgb, var(--brand-b) 18%, var(--surface));
}

.monkey-quarter-bar.net.negative::before {
  background: color-mix(in srgb, var(--danger) 18%, var(--surface));
}

@media (max-width: 991.98px) {
  .monkey-wizard-toolbar,
  .monkey-wizard-grid,
  .monkey-wizard-summary,
  .monkey-wizard-details {
    grid-template-columns: 1fr;
  }

  .monkey-wizard-panel {
    width: calc(100vw - 0.75rem);
    padding: 1rem;
  }

  .monkey-wizard-panel .trade-event-top {
    grid-template-columns: 1fr;
  }

  .monkey-wizard-panel .trade-event-top > .mono,
  .monkey-wizard-panel .trade-event-top > .trade-tile-action {
    max-width: 100%;
    text-align: left;
  }
}

@media (max-width: 991.98px) {
    .dashboard-chart-grid,
    .dashboard-spotlight-grid,
    .whale-dashboard-grid,
    .portfolio-chart-grid,
    .ticker-analysis-chart-grid,
    .member-tile-grid {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: visible;
        gap: 0.95rem;
        padding: 0.35rem 1rem 0.6rem;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 1rem;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        align-items: stretch;
    }

    .dashboard-chart-grid > *,
    .dashboard-spotlight-grid > *,
    .whale-dashboard-grid > *,
    .portfolio-chart-grid > *,
    .ticker-analysis-chart-grid > *,
    .member-tile-grid > * {
        flex: 0 0 min(78vw, 34rem);
        min-width: min(78vw, 34rem);
        max-width: min(78vw, 34rem);
        scroll-snap-align: center;
        scroll-snap-stop: always;
    }

    .dashboard-trade-tile-stack {
        display: flex;
        flex-direction: column;
        gap: 0.85rem;
        overflow: visible;
        padding: 0;
        margin-top: 1rem;
    }

    .dashboard-trade-tile-stack > * {
        width: 100%;
        min-width: 0;
        max-width: none;
        flex: 0 0 auto;
    }

    .dashboard-market-watch-wrap-desktop {
        display: none;
    }

    .dashboard-market-watch-sortbar {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 0.55rem;
        margin-bottom: 0.25rem;
    }

    .dashboard-market-watch-sortbar .dashboard-feed-sortbar-actions {
        flex: 1 1 100%;
    }

    .dashboard-market-watch-cards {
        display: flex;
        flex-wrap: nowrap;
        gap: 1rem;
        overflow-x: auto;
        overflow-y: visible;
        padding: 0.35rem 1rem 0.6rem;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 1rem;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        align-items: stretch;
    }

    .dashboard-market-watch-card {
        flex: 0 0 min(78vw, 34rem);
        min-width: min(78vw, 34rem);
        max-width: min(78vw, 34rem);
        display: grid;
        gap: 0.85rem;
        padding: 1.1rem 1.1rem 1.15rem;
        border-radius: 1.7rem;
        border: 1px solid rgba(21, 35, 58, 0.12);
        background:
            radial-gradient(circle at top left, rgba(186, 141, 70, 0.12), transparent 24%),
            radial-gradient(circle at bottom right, rgba(15, 143, 135, 0.08), transparent 28%),
            linear-gradient(180deg, rgba(255, 252, 247, 0.99), rgba(242, 233, 217, 0.95));
        box-shadow:
            0 1.2rem 2.8rem rgba(21, 35, 58, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.72);
        scroll-snap-align: center;
        scroll-snap-stop: always;
        position: relative;
        overflow: hidden;
        isolation: isolate;
    }

    .dashboard-market-watch-card::before {
        content: "";
        position: absolute;
        inset: 0 auto auto 0;
        width: 100%;
        height: 0.42rem;
        background: linear-gradient(90deg, var(--brand-a), var(--brand-b), var(--brand-c));
        opacity: 0.9;
        pointer-events: none;
    }

    .dashboard-market-watch-card-head {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 0.75rem;
        padding-bottom: 0.35rem;
        border-bottom: 1px solid rgba(21, 35, 58, 0.08);
    }

    .dashboard-market-watch-card-title {
        font-family: var(--display-serif);
        font-size: clamp(1.3rem, 4.2vw, 1.8rem);
        line-height: 1.04;
        letter-spacing: -0.05em;
        text-wrap: balance;
    }

    .dashboard-market-watch-card-company {
        color: var(--muted);
        font-size: 0.84rem;
        line-height: 1.45;
    }

    .dashboard-market-watch-card-context {
        padding-top: 0.05rem;
    }

    .dashboard-market-watch-card-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.65rem;
    }

    .dashboard-market-watch-card-stat {
        display: grid;
        gap: 0.12rem;
        min-width: 0;
        padding: 0.75rem 0.8rem;
        border-radius: 1rem;
        border: 1px solid rgba(21, 35, 58, 0.08);
        background: rgba(255, 255, 255, 0.62);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
    }

    .dashboard-market-watch-card-stat-label {
        color: var(--muted);
        font-family: var(--mono);
        font-size: 0.58rem;
        letter-spacing: 0.14em;
        text-transform: uppercase;
    }

    .dashboard-market-watch-card-stat strong {
        min-width: 0;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 991.98px) {
    .dashboard-chart-grid,
    .dashboard-spotlight-grid,
    .whale-dashboard-grid,
    .portfolio-chart-grid,
    .ticker-analysis-chart-grid {
        gap: 1rem;
        padding-inline: clamp(1rem, 6vw, 1.6rem);
    }

    .dashboard-chart-grid > *,
    .dashboard-spotlight-grid > *,
    .whale-dashboard-grid > *,
    .portfolio-chart-grid > *,
    .ticker-analysis-chart-grid > * {
        flex-basis: min(84vw, 34rem);
        min-width: min(84vw, 34rem);
        max-width: min(84vw, 34rem);
    }

    .dashboard-market-watch-sortbar {
        padding-inline: clamp(0.15rem, 1vw, 0.35rem);
    }

    .dashboard-market-watch-cards {
        gap: 1rem;
        padding-inline: clamp(1rem, 6vw, 1.6rem);
    }

    .dashboard-market-watch-card {
        flex-basis: min(84vw, 34rem);
        min-width: min(84vw, 34rem);
        max-width: min(84vw, 34rem);
        padding: 1.15rem 1.1rem 1.2rem;
        border-radius: 1.85rem;
    }

    .dashboard-market-watch-card-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-market-watch-card-title {
        font-size: clamp(1.45rem, 5vw, 2rem);
    }

    .dashboard-market-watch-card-stat {
        padding: 0.8rem 0.85rem;
    }

    .dashboard-status-panel {
        padding: 1rem;
        border-radius: 1.65rem;
    }

    .shell-welcome-menu {
        display: none;
    }

    .shell-desktop-menu {
        display: none !important;
    }

    .shell-header-panel {
        position: fixed;
        inset: 0;
        width: 100vw;
        min-width: 100vw;
        max-width: 100vw;
        min-height: 100dvh;
        max-height: 100dvh;
        z-index: 2100;
        border: 0;
        border-radius: 0;
        padding: calc(env(safe-area-inset-top, 0px) + 0.75rem) 0 calc(env(safe-area-inset-bottom, 0px) + 0.95rem);
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.18), transparent 28%),
            radial-gradient(circle at top left, rgba(15, 143, 135, 0.12), transparent 24%),
            linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(243, 238, 228, 0.99));
        box-shadow: 0 30px 80px rgba(21, 35, 58, 0.26);
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        touch-action: pan-y pinch-zoom;
        transform: translate3d(0, 1rem, 0) scale(0.992);
        opacity: 0;
        pointer-events: none;
        transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.22s ease;
    }

    .shell-header-panel.open {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 1;
        pointer-events: auto;
    }

    .shell-menu-backdrop {
        inset: 0;
        z-index: 2090;
        background: rgba(15, 23, 42, 0.58);
    }

    .shell-mobile-menu-head {
        display: none;
        align-items: center;
        justify-content: flex-end;
        position: sticky;
        top: 0;
        z-index: 4;
        min-height: 4rem;
        padding: calc(env(safe-area-inset-top, 0px) + 0.35rem) 1rem 0.85rem;
        border-bottom: 1px solid rgba(21, 35, 58, 0.08);
        background:
            linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(255, 251, 245, 0.93));
        backdrop-filter: blur(14px);
    }

    .shell-mobile-menu-head strong {
        display: none;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-menu-head {
        display: none;
    }

    .shell-mobile-menu-close {
        position: absolute;
        top: 50%;
        right: 0.75rem;
        width: 3rem;
        height: 3rem;
        min-width: 3rem;
        min-height: 3rem;
        transform: translateY(-50%);
        transform-origin: center;
        animation: shellMobileCloseIn 0.22s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .shell-nav {
        width: 100%;
        justify-content: flex-start;
        gap: 0.7rem;
        flex-direction: column;
        align-items: stretch;
        padding: 0 1rem;
    }

    .shell-nav-link {
        width: 100%;
        text-align: left;
        min-height: 3.25rem;
        padding: 0.95rem 1rem;
        font-size: 0.86rem;
        line-height: 1.2;
        border-radius: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        touch-action: manipulation;
        border: 1px solid rgba(21, 35, 58, 0.1);
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(246, 240, 230, 0.92));
        box-shadow: 0 10px 24px rgba(21, 35, 58, 0.08);
        color: var(--text);
    }

    .shell-nav-link:hover {
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 244, 234, 0.98));
        border-color: rgba(186, 141, 70, 0.26);
        color: var(--text);
    }

    .shell-nav-link.active {
        color: #fff9ef;
        border-color: rgba(18, 82, 82, 0.45);
        background: linear-gradient(135deg, #195353, #ba8d46);
        box-shadow: 0 16px 30px rgba(21, 35, 58, 0.16);
    }

    .shell-nav-dropdown-toggle::after {
        display: none;
    }

    .shell-nav-dropdown {
        width: 100%;
        position: relative;
        border: 1px solid rgba(21, 35, 58, 0.1);
        border-radius: 1.25rem;
        background: rgba(255, 255, 255, 0.68);
        box-shadow: 0 16px 30px rgba(21, 35, 58, 0.08);
        overflow: hidden;
    }

    .shell-nav-dropdown-toggle {
        width: 100%;
        justify-content: space-between;
        min-height: 3.45rem;
        padding: 0.95rem 1rem;
        border-radius: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        font-size: 0.72rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .shell-nav-dropdown-toggle::after {
        width: 0.55rem;
        height: 0.55rem;
        margin-left: auto;
        border-right-width: 2px;
        border-bottom-width: 2px;
    }

    .shell-nav-dropdown-menu {
        position: static;
        display: none;
        min-width: 0;
        margin: 0;
        padding: 0 0.5rem 0.6rem;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        width: 100%;
    }

    .shell-nav-dropdown-menu.open {
        display: grid;
        gap: 0.35rem;
    }

    .shell-nav-dropdown-link {
        width: 100%;
        text-align: left;
        min-height: 3rem;
        padding: 0.85rem 0.95rem;
        border-radius: 0.95rem;
        border: 1px solid rgba(21, 35, 58, 0.08);
        background: rgba(255, 255, 255, 0.82);
        box-shadow: none;
    }

    .shell-mobile-submenu-head {
        display: none;
    }

    .shell-header-panel.mobile-section-open {
        padding-top: calc(env(safe-area-inset-top, 0px) + 0.75rem);
        overflow-y: auto;
    }

    .shell-header-panel.mobile-section-open .shell-nav {
        position: static;
        min-height: 0;
        height: auto;
        overflow: visible;
    }

    .shell-header-panel.mobile-section-open .shell-nav > .shell-nav-link,
    .shell-header-panel.mobile-section-open .shell-nav > .shell-nav-dropdown > .shell-nav-dropdown-toggle {
        opacity: 1;
        pointer-events: auto;
        transform: none;
    }

    .shell-header-panel.mobile-section-open .shell-nav-dropdown-menu.open {
        position: static;
        width: 100%;
        margin: 0;
        display: grid;
        gap: 0.35rem;
        padding: 0 0.5rem 0.6rem;
        overflow: visible;
        animation: none;
        background: transparent;
        z-index: auto;
    }

    .shell-header-panel.mobile-subsection-open .shell-mobile-account-card,
    .shell-header-panel.mobile-subsection-open .shell-mobile-logout-group,
    .shell-header-panel.mobile-subsection-open .shell-mobile-app-group:not(.is-open) {
        display: none;
    }

    .shell-mobile-app-sheet {
        display: flex;
        flex-direction: column;
        gap: 0.8rem;
        width: min(100%, 46rem);
        margin: 0 auto;
        padding: 0 1rem calc(1.25rem + env(safe-area-inset-bottom, 0px));
        min-height: 100%;
        max-height: none;
        overflow: visible;
    }

    .shell-mobile-sheet-handle {
        display: flex;
        justify-content: center;
        padding: 0.5rem 0 0.25rem;
        flex: 0 0 auto;
    }

    .shell-mobile-sheet-handle-bar {
        display: block;
        width: 2.25rem;
        height: 0.28rem;
        border-radius: 999px;
        background: rgba(0, 0, 0, 0.18);
    }

    @keyframes shellMobileItemFadeIn {
        from {
            opacity: 0;
            transform: translate3d(0, 0.75rem, 0);
        }
        to {
            opacity: 1;
            transform: translate3d(0, 0, 0);
        }
    }

    .shell-header-panel.open .shell-mobile-account-card {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.05s both;
    }

    .shell-header-panel.open .shell-mobile-app-links--featured {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.1s both;
    }

    .shell-header-panel.open .shell-mobile-app-sections > .shell-mobile-app-group:nth-child(1) {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.15s both;
    }

    .shell-header-panel.open .shell-mobile-app-sections > .shell-mobile-app-group:nth-child(2) {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.2s both;
    }

    .shell-header-panel.open .shell-mobile-app-sections > .shell-mobile-app-group:nth-child(3) {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.25s both;
    }

    .shell-header-panel.open .shell-mobile-app-sections > .shell-mobile-app-group:nth-child(4) {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.3s both;
    }

    .shell-header-panel.open .shell-mobile-app-sections > .shell-mobile-app-group:nth-child(5) {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.35s both;
    }

    .shell-header-panel.open .shell-mobile-logout-group {
        animation: shellMobileItemFadeIn 0.35s cubic-bezier(0.22, 1, 0.36, 1) 0.4s both;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-sheet {
        width: 100%;
        max-width: 100%;
        padding-inline: 0;
        padding-top: 0.25rem;
        min-height: 100dvh;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .shell-mobile-app-sections {
        display: grid;
        gap: 0.8rem;
        min-height: 0;
        flex: 1 1 auto;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-sections {
        display: block;
        min-height: 100dvh;
    }

    .shell-mobile-account-card {
        display: grid;
        gap: 0.22rem;
        padding: 1.05rem 1rem 1.1rem;
        border-radius: 1.45rem;
        border: 1px solid rgba(21, 35, 58, 0.1);
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.14), transparent 26%),
            radial-gradient(circle at bottom left, rgba(15, 143, 135, 0.08), transparent 30%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 236, 224, 0.96));
        box-shadow:
            0 18px 34px rgba(21, 35, 58, 0.09),
            inset 0 1px 0 rgba(255, 255, 255, 0.8);
        position: relative;
    }

    .shell-mobile-account-card::before {
        content: "";
        position: absolute;
        inset: 0 auto auto 0;
        width: 100%;
        height: 0.36rem;
        background: linear-gradient(90deg, var(--brand-a), var(--brand-b), var(--brand-c));
        opacity: 0.95;
        pointer-events: none;
        border-radius: 1.45rem 1.45rem 0 0;
    }

    .shell-mobile-account-label {
        color: var(--muted);
        font-family: var(--mono);
        font-size: 0.58rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .shell-mobile-account-username {
        font-size: 1rem;
        line-height: 1.2;
        letter-spacing: -0.02em;
    }

    .shell-mobile-account-copy {
        color: var(--muted);
        font-size: 0.84rem;
        line-height: 1.45;
    }

    .shell-mobile-app-group {
        display: grid;
        gap: 0;
        padding: 0;
        border: 1px solid rgba(21, 35, 58, 0.1);
        border-radius: 1.35rem;
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.08), transparent 24%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(248, 242, 234, 0.88));
        box-shadow: 0 14px 28px rgba(21, 35, 58, 0.07);
        overflow: hidden;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open {
        display: flex;
        flex-direction: column;
        min-height: calc(100dvh - 6.25rem);
        margin: 0;
        border-radius: 0;
        border-left: 0;
        border-right: 0;
        border-bottom: 0;
        box-shadow: none;
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.08), transparent 20%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 241, 232, 0.97));
    }

	    .shell-mobile-app-group-title {
	        display: flex;
	        align-items: center;
	        justify-content: space-between;
	        gap: 0.8rem;
	        width: 100%;
	        border: 0;
	        padding: 0.95rem 1rem 0.95rem 2rem;
	        color: var(--text);
	        font-family: var(--display);
	        font-size: 0.92rem;
	        font-weight: 700;
	        letter-spacing: -0.01em;
        text-transform: none;
	        user-select: none;
	        background: transparent;
	        text-align: left;
	        cursor: pointer;
	    }

    .shell-mobile-app-group-title.active,
    .shell-mobile-app-group.is-open > .shell-mobile-app-group-title {
        color: var(--text);
        border-bottom: 1px solid rgba(21, 35, 58, 0.08);
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(250, 244, 235, 0.84));
        box-shadow:
            inset 0.35rem 0 0 rgba(25, 83, 83, 0.34),
            0 10px 22px rgba(21, 35, 58, 0.05),
            0 0 0 1px rgba(18, 82, 82, 0.16);
        transform: translateX(0.06rem);
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-group-title {
        position: sticky;
        top: 0;
        z-index: 3;
        min-height: 4.2rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(249, 243, 234, 0.98));
        box-shadow:
            inset 0.4rem 0 0 rgba(25, 83, 83, 0.4),
            0 10px 22px rgba(21, 35, 58, 0.05);
    }

    .shell-mobile-app-group-title--static {
        cursor: default;
    }

    .shell-mobile-app-group-title--static::after {
        display: none;
    }

    .shell-mobile-app-toggle-chip {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        min-width: 3.5rem;
        padding: 0.32rem 0.7rem;
        border-radius: 999px;
        border: 1px solid rgba(21, 35, 58, 0.1);
        background: rgba(255, 255, 255, 0.72);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88);
        color: rgba(21, 35, 58, 0.72);
        font-size: 0.49rem;
        font-weight: 700;
        letter-spacing: 0.18em;
        line-height: 1;
        text-transform: uppercase;
        transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
    }

    .shell-mobile-app-group-title.active .shell-mobile-app-toggle-chip,
    .shell-mobile-app-group.is-open > .shell-mobile-app-group-title .shell-mobile-app-toggle-chip {
        color: #fff9ef;
        border-color: rgba(18, 82, 82, 0.34);
        background: linear-gradient(135deg, #195353, #ba8d46);
        box-shadow: 0 10px 20px rgba(21, 35, 58, 0.12);
    }

    .shell-mobile-app-links {
        display: flex;
        flex-direction: column;
        gap: 0.45rem;
        padding: 0.85rem 1rem 0.95rem;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-links {
        flex: 1 1 auto;
        overflow-y: auto;
        padding-bottom: calc(1.25rem + env(safe-area-inset-bottom, 0px));
    }

    .shell-mobile-app-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 3rem;
        padding: 0.88rem 0.95rem;
        border-radius: 1rem;
        border: 1px solid rgba(21, 35, 58, 0.08);
        background: rgba(255, 255, 255, 0.86);
        color: var(--text);
        box-shadow: 0 10px 22px rgba(21, 35, 58, 0.06);
        font-size: 0.92rem;
        font-weight: 600;
        letter-spacing: -0.01em;
        line-height: 1.2;
        text-decoration: none;
        touch-action: manipulation;
        transition: transform 0.18s ease, background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
    }

    .shell-mobile-app-link::after {
        content: "";
        display: none;
    }

    .shell-mobile-app-link:hover {
        border-color: rgba(186, 141, 70, 0.24);
        background: rgba(255, 255, 255, 0.98);
        box-shadow: 0 14px 28px rgba(21, 35, 58, 0.08);
        color: var(--text);
    }

    .shell-mobile-app-link.active {
        color: #fff9ef;
        border-color: rgba(18, 82, 82, 0.42);
        background: linear-gradient(135deg, #195353, #ba8d46);
        box-shadow: 0 16px 30px rgba(21, 35, 58, 0.15);
        padding-left: 1.1rem;
        transform: translateX(0.18rem);
        font-weight: 700;
    }

    .shell-mobile-app-link.shell-logout-option {
        border-color: rgba(157, 52, 22, 0.14);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 244, 240, 0.96));
        color: #9d3416;
    }

    .shell-mobile-logout-group {
        position: sticky;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 0.35rem);
        z-index: 4;
        margin-top: 0.1rem;
        backdrop-filter: blur(14px);
        box-shadow:
            0 -10px 24px rgba(21, 35, 58, 0.08),
            0 14px 28px rgba(21, 35, 58, 0.08);
    }

    .shell-mobile-account-link {
        justify-content: space-between;
    }

    .trade-flyout-shell {
        inset: 0 !important;
    }

    .trade-flyout-panel {
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        max-width: 100vw !important;
        border-radius: 0 !important;
        padding: calc(env(safe-area-inset-top, 0px) + 0.9rem) 1rem calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1rem) !important;
        box-shadow: none !important;
    }

    .trade-flyout-shell.open .trade-flyout-panel,
    .trade-flyout-panel.show {
        transform: translateX(0) !important;
    }

    .search-flyout-panel,
    .admin-query-flyout {
        width: 100% !important;
        max-width: 100% !important;
    }

    .alert-inbox-panel {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100vw;
        max-width: 100vw;
        border-radius: 0;
        padding: calc(env(safe-area-inset-top, 0px) + 1rem) 1rem calc(env(safe-area-inset-bottom, 0px) + 1rem);
    }

    .market-ticker-live__flyout-shell {
        align-items: stretch;
        justify-content: stretch;
    }

    .market-ticker-live__flyout {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        border-left: 0;
        box-shadow: none;
        padding: calc(env(safe-area-inset-top, 0px) + 1rem) 1rem calc(env(safe-area-inset-bottom, 0px) + 1.15rem);
    }

    .research-agent-panel {
        position: absolute;
        inset: 0;
        width: 100vw;
        max-width: 100vw;
        max-height: 100dvh;
        border-radius: 0;
        padding: calc(env(safe-area-inset-top, 0px) + 1rem) 1rem calc(env(safe-area-inset-bottom, 0px) + 1rem);
    }

.whale-flyout-panel {
    border-left: 0;
    box-shadow: none;
}
}

@media (min-width: 992px) {
    .shell-menu-toggle,
    .shell-menu-backdrop,
    .shell-mobile-menu-head,
    .shell-mobile-account-shell,
    .shell-mobile-app-sheet,
    .shell-mobile-bottom-nav {
        display: none !important;
    }

    .shell-welcome-menu {
        display: flex !important;
    }

    .shell-welcome-menu .shell-menu-toggle {
        display: inline-flex !important;
    }

    .shell-desktop-menu {
        display: flex !important;
    }

    .shell-header-panel {
        position: static !important;
        inset: auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 0 !important;
        max-height: none !important;
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.7rem !important;
        padding: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
        transform: none !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    .shell-nav {
        width: auto !important;
        justify-content: center !important;
        gap: 0.3rem !important;
        flex-direction: row !important;
        align-items: center !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .shell-nav-link {
        width: auto !important;
        min-height: 3rem !important;
        padding: 0.3rem 0.6rem !important;
        border-radius: 999px !important;
        border: 1px solid rgba(21, 35, 58, 0.04) !important;
        background: transparent !important;
        box-shadow: none !important;
        font-size: 0.68rem !important;
        line-height: 1 !important;
    }

    .shell-nav-dropdown {
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    .shell-nav-dropdown-toggle {
        min-height: 3rem !important;
        padding: 0.3rem 0.6rem !important;
        background: transparent !important;
    }

    .shell-nav-dropdown-menu {
        position: absolute !important;
        top: calc(100% + 0.35rem) !important;
        left: 0 !important;
        min-width: 14rem !important;
        margin: 0 !important;
        padding: 0.45rem !important;
        border: 1px solid rgba(21, 35, 58, 0.1) !important;
        border-radius: 0.9rem !important;
        background: rgba(255, 251, 245, 0.98) !important;
        box-shadow: 0 20px 40px rgba(21, 35, 58, 0.14) !important;
        width: auto !important;
    }

    .shell-welcome-menu .shell-nav-dropdown-menu {
        right: 0 !important;
        left: auto !important;
        max-height: min(34rem, calc(100dvh - var(--shell-header-height) - 1rem)) !important;
        overflow-y: auto !important;
    }

.shell-nav-dropdown-menu.open {
        display: grid !important;
        gap: 0.3rem !important;
    }
}

.dashboard-trade-tile-stack,
.dashboard-spotlight-grid {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: stretch;
}

.dashboard-trade-tile-stack > *,
.dashboard-spotlight-grid > * {
    width: 100%;
    min-width: 0;
}

@media (max-width: 991.98px) {
    .shell-menu-backdrop {
        inset: 0 !important;
    }

    .shell-header-panel.open {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 100vw !important;
        min-width: 100vw !important;
        max-width: 100vw !important;
        min-height: 100dvh !important;
    }

    .shell-welcome-menu {
        display: none !important;
    }

    .shell-desktop-menu {
        display: none !important;
    }

    .shell-header-panel.mobile-section-open {
        position: fixed !important;
        inset: 0 !important;
        z-index: 2100 !important;
        padding: 0.35rem 0.65rem calc(0.75rem + env(safe-area-inset-bottom, 0px)) !important;
        overflow: hidden !important;
        background:
            linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(243, 238, 228, 0.99)) !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-sheet {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 100dvh !important;
        padding: 0.2rem 0.5rem calc(1rem + env(safe-area-inset-bottom, 0px)) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open {
        position: fixed !important;
        inset: 0 !important;
        margin: 0 !important;
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        z-index: 2101 !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-links {
        max-height: none !important;
        overflow-y: auto !important;
        padding-bottom: calc(1.15rem + env(safe-area-inset-bottom, 0px)) !important;
    }
}

@media (max-width: 991.98px) {
    .shell-header-panel.mobile-section-open .shell-mobile-menu-head {
        display: none !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.75rem !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 6 !important;
        min-height: 3.75rem !important;
        padding: 0.55rem 0.85rem !important;
        border-bottom: 1px solid rgba(21, 35, 58, 0.08) !important;
        background: linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(255, 251, 245, 0.94)) !important;
        backdrop-filter: blur(10px);
    }

    .shell-header-panel.mobile-section-open .shell-mobile-menu-head-title {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.55rem !important;
        min-width: 0;
        flex: 1 1 auto;
        margin: 0;
        padding: 0.85rem 0.95rem !important;
        border: 1px solid rgba(21, 35, 58, 0.08) !important;
        border-radius: 0 !important;
        background: rgba(255, 255, 255, 0.9) !important;
        box-shadow: 0 10px 22px rgba(21, 35, 58, 0.06) !important;
        color: var(--text);
        font-family: var(--display);
        font-size: 1rem;
        font-weight: 700;
        letter-spacing: -0.02em;
        line-height: 1.1;
        text-align: left;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        cursor: pointer;
        touch-action: manipulation;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-menu-head-title:hover,
    .shell-header-panel.mobile-section-open .shell-mobile-menu-head-title:focus-visible {
        border-color: rgba(186, 141, 70, 0.26) !important;
        background: rgba(255, 255, 255, 0.98) !important;
        color: var(--text);
    }

    .shell-mobile-menu-head-icon {
        display: inline-flex;
        flex: 0 0 auto;
        width: 0.55rem;
        height: 0.55rem;
        border-left: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        transform-origin: center;
        opacity: 0.9;
    }

    .shell-mobile-menu-head-title-text {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-menu-close {
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        margin-left: auto !important;
        flex: 0 0 auto !important;
    }

    .shell-mobile-app-toggle-chip {
        display: none !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group-title {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.6rem !important;
        width: 100% !important;
        min-height: 3.25rem !important;
        padding: 0.78rem 0.9rem !important;
        border-radius: 0 !important;
        border-width: 1px 0 !important;
        border-style: solid !important;
        border-color: rgba(21, 35, 58, 0.08) !important;
        background: rgba(255, 255, 255, 0.94) !important;
        box-shadow: none !important;
        color: var(--text) !important;
        font-family: inherit !important;
        font-size: 0.92rem !important;
        font-weight: 600 !important;
        letter-spacing: -0.01em !important;
        text-transform: none !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group-title-label {
        min-width: 0;
        flex: 1 1 auto;
        text-align: left;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-toggle-chip {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 0.18rem;
        min-width: 0;
        padding: 0.2rem 0.42rem !important;
        border-radius: 999px;
        border: 1px solid rgba(21, 35, 58, 0.1);
        background: rgba(255, 255, 255, 0.72);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86);
        color: rgba(21, 35, 58, 0.82);
        font-size: 0.46rem;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        white-space: nowrap;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-toggle-chip::before {
        content: "";
        width: 0.34rem;
        height: 0.34rem;
        flex: 0 0 auto;
        border-left: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        transform-origin: center;
        opacity: 0.82;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group-title.active,
    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-group-title {
        color: #fff9ef !important;
        border-color: rgba(18, 82, 82, 0.42) !important;
        background: linear-gradient(135deg, #195353, #ba8d46) !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-group-title {
        justify-content: flex-start !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 7 !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-group-title .shell-mobile-app-toggle-chip {
        display: inline-flex !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group {
        border-radius: 0 !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open {
        position: fixed !important;
        inset: 0 !important;
        margin: 0 !important;
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        z-index: 2101 !important;
        display: flex !important;
        flex-direction: column !important;
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.08), transparent 20%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 241, 232, 0.97)) !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-links {
        flex: 1 1 auto !important;
        overflow-y: auto !important;
        padding-bottom: calc(1.15rem + env(safe-area-inset-bottom, 0px)) !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-submenu-head {
        display: none !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-sheet {
        padding: 0 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-sections {
        gap: 0 !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-links {
        gap: 0 !important;
        padding: 0 !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-link {
        width: 100% !important;
        min-height: 3.6rem !important;
        padding: 0.98rem 1rem !important;
        border-radius: 0 !important;
        border-width: 0 0 1px !important;
        border-style: solid !important;
        border-color: rgba(21, 35, 58, 0.08) !important;
        background: rgba(255, 255, 255, 0.94) !important;
        box-shadow: none !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-link:hover {
        border-color: rgba(186, 141, 70, 0.24) !important;
        background: rgba(255, 255, 255, 0.98) !important;
        box-shadow: none !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-link.active {
        color: #fff9ef !important;
        border-color: rgba(18, 82, 82, 0.42) !important;
        background: linear-gradient(135deg, #195353, #ba8d46) !important;
        box-shadow: 0 16px 30px rgba(21, 35, 58, 0.15) !important;
        transform: none !important;
        font-weight: 700 !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-logout-group {
        border-radius: 0 !important;
        margin-top: 0 !important;
    }

    .ticker-perspective-overview-grid,
    .alert-delivery-matrix-head,
    .alert-delivery-matrix-row,
    .alert-delivery-category-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .alert-delivery-quick-jump {
        flex-direction: column;
        align-items: stretch;
    }

    .alert-delivery-matrix-head {
        display: none;
    }

    .alert-delivery-matrix-row {
        gap: 0.9rem;
    }

    .alert-delivery-matrix-actions {
        justify-items: start;
        padding-left: 0;
    }

    .ticker-perspective-volume-chart,
    .ticker-perspective-state-chart {
        max-height: 28rem;
    }

    .ticker-perspective-volume-chart {
        grid-template-columns: minmax(0, 1fr);
    }
}

.shell-nav-link.active,
.shell-nav-dropdown-toggle.active,
.shell-nav-dropdown-link.active,
.shell-mobile-app-group-title.active,
.shell-mobile-app-link.active,
.shell-nav-link[aria-current="page"],
.shell-nav-dropdown-toggle[aria-current="page"],
.shell-nav-dropdown-link[aria-current="page"],
.shell-mobile-app-group-title[aria-current="page"],
.shell-mobile-app-link[aria-current="page"] {
    color: #fff9ef !important;
    border-color: rgba(18, 82, 82, 0.42) !important;
    background: linear-gradient(135deg, #195353, #ba8d46) !important;
    box-shadow: 0 16px 30px rgba(21, 35, 58, 0.15) !important;
    font-weight: 700 !important;
}

@media (max-width: 991.98px) {
    .shell {
        --shell-footer-height: 5.42rem;
    }

    .shell-menu-toggle {
        display: none !important;
    }

    .shell-footer {
        display: none !important;
    }

    .shell-content {
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1.25rem) !important;
    }

    .shell-mobile-bottom-nav {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 2350;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 0.28rem;
        min-height: var(--shell-footer-height);
        padding: 0.38rem max(0.55rem, env(safe-area-inset-right, 0px)) calc(1.5rem + env(safe-area-inset-bottom, 0px)) max(0.55rem, env(safe-area-inset-left, 0px));
        border-top: 1px solid rgba(23, 18, 13, 0.14);
        background:
            linear-gradient(180deg, rgba(255, 252, 245, 0.94), rgba(242, 234, 221, 0.98)),
            radial-gradient(circle at 12% 0%, rgba(15, 143, 135, 0.12), transparent 38%),
            radial-gradient(circle at 84% 0%, rgba(186, 141, 70, 0.16), transparent 36%);
        box-shadow: 0 -18px 42px rgba(21, 35, 58, 0.18);
        backdrop-filter: blur(18px);
    }

    .shell-mobile-bottom-nav-item {
        appearance: none;
        display: grid;
        justify-items: center;
        align-content: center;
        gap: 0.24rem;
        min-width: 0;
        min-height: 3.18rem;
        padding: 0.31rem 0.16rem;
        border: 1px solid rgba(21, 35, 58, 0.08);
        border-radius: 0.95rem;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(246, 239, 228, 0.86));
        color: color-mix(in srgb, var(--text) 78%, var(--muted) 22%);
        box-shadow: 0 9px 20px rgba(21, 35, 58, 0.08);
        font-family: var(--mono);
        font-size: clamp(0.58rem, 2.6vw, 0.68rem);
        font-weight: 800;
        letter-spacing: 0.04em;
        line-height: 1;
        text-align: center;
        text-decoration: none;
        text-transform: uppercase;
        touch-action: manipulation;
        transition: transform 0.16s ease, background 0.16s ease, color 0.16s ease, border-color 0.16s ease;
    }

    .shell-mobile-bottom-nav-item:hover,
    .shell-mobile-bottom-nav-item:focus-visible {
        border-color: rgba(186, 141, 70, 0.28);
        background: rgba(255, 255, 255, 0.98);
        color: var(--text);
    }

    .shell-mobile-bottom-nav-item:active {
        transform: translateY(1px) scale(0.985);
    }

    .shell-mobile-bottom-nav-item.active,
    .shell-mobile-bottom-nav-item[aria-current="page"] {
        color: #fff9ef;
        border-color: rgba(18, 82, 82, 0.42);
        background: linear-gradient(135deg, #195353, #ba8d46);
        box-shadow: 0 12px 24px rgba(21, 35, 58, 0.18);
    }

    .shell-mobile-bottom-nav-icon {
        width: 1.58rem;
        height: 1.58rem;
        object-fit: contain;
        filter: drop-shadow(0 6px 8px rgba(21, 35, 58, 0.16));
        transform: translateY(0);
        transition: transform 0.16s ease, filter 0.16s ease;
    }

    .shell-mobile-bottom-nav-item.active .shell-mobile-bottom-nav-icon,
    .shell-mobile-bottom-nav-item[aria-current="page"] .shell-mobile-bottom-nav-icon {
        filter: drop-shadow(0 8px 10px rgba(0, 0, 0, 0.18));
        transform: translateY(-1px) scale(1.08);
    }

    .shell-menu-backdrop {
        bottom: 0 !important;
    }

    .shell-header-panel.open,
    .shell-header-panel.mobile-section-open {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        min-height: 100dvh !important;
        max-height: 100dvh !important;
        transition: transform 0.42s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.28s ease !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open {
        bottom: 0 !important;
        min-height: 100dvh !important;
    }

    .shell-mobile-logout-group {
        bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 0.35rem) !important;
    }

    .research-agent-launcher {
        bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 4.25rem) !important;
        left: max(0.55rem, env(safe-area-inset-left, 0px)) !important;
        padding: 0.48rem 0.66rem;
        border-radius: 0.95rem;
    }

    .research-agent-launcher-icon {
        flex-basis: 1.45rem;
        width: 1.45rem !important;
        height: 1.45rem !important;
        max-width: 1.45rem !important;
        max-height: 1.45rem !important;
    }

    .research-agent-launcher-label {
        font-size: 0.78rem;
        line-height: 1;
    }

    .go-to-top-button {
        bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 4.85rem) !important;
        right: max(0.55rem, env(safe-area-inset-right, 0px)) !important;
    }
}

.dashboard-news-layout {
    grid-template-columns: minmax(0, 1.75fr) minmax(20rem, 0.85fr);
    gap: 1.1rem;
}

.dashboard-news-feed-shell,
.dashboard-news-rail-card {
    background:
        linear-gradient(180deg, rgba(255, 255, 252, 0.99), rgba(248, 245, 239, 0.98));
    border-color: rgba(15, 23, 42, 0.1);
}

.dashboard-news-feed-shell {
    border-top: 3px solid rgba(21, 35, 58, 0.9);
    border-radius: 0.8rem;
}

.dashboard-news-masthead {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-end;
    padding-bottom: 0.9rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.14);
}

.dashboard-news-masthead-brand {
    display: grid;
    gap: 0.35rem;
}

.dashboard-news-masthead-brand .eyebrow {
    letter-spacing: 0.22em;
}

.dashboard-news-masthead-brand h2 {
    margin: 0;
    font-family: var(--display-serif);
    font-size: clamp(1.5rem, 2.4vw, 2.6rem);
    line-height: 0.98;
    letter-spacing: -0.06em;
    color: var(--text);
}

.dashboard-news-masthead-brand p {
    margin: 0;
    max-width: 60ch;
    color: var(--muted);
    line-height: 1.55;
}

.dashboard-news-masthead-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.45rem;
}

.dashboard-news-feature {
    padding: 1rem;
    border-radius: 0.95rem;
    background:
        radial-gradient(circle at top right, rgba(217, 164, 65, 0.08), transparent 18%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 242, 235, 0.96));
}

.dashboard-news-feature-layout {
    grid-template-columns: minmax(16rem, 1.35fr) minmax(0, 0.95fr) minmax(15rem, 0.72fr);
}

.dashboard-news-feature-summary {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.dashboard-news-story-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.dashboard-news-story-card {
    padding: 0.9rem 0.95rem 0.95rem;
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.82);
    border-top: 2px solid rgba(21, 35, 58, 0.1);
}

.dashboard-news-story-title {
    font-family: var(--display-serif);
    font-size: 1.02rem;
    letter-spacing: -0.03em;
    line-height: 1.16;
}

.dashboard-news-story-summary {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.dashboard-news-story-card--hero,
.dashboard-news-story-card--wide {
    grid-column: span 2;
}

.dashboard-news-story-card--compact {
    padding: 0.82rem 0.88rem 0.88rem;
}

.dashboard-news-story-card--compact .dashboard-news-story-title {
    font-size: 0.95rem;
}

.dashboard-news-story-card--compact .dashboard-news-story-summary {
    -webkit-line-clamp: 2;
}

.dashboard-news-story-card--feature .dashboard-news-story-summary {
    -webkit-line-clamp: 3;
}

.dashboard-news-story-card--hero .dashboard-news-story-summary {
    -webkit-line-clamp: 4;
}

.dashboard-news-story-card--hero .dashboard-news-story-head,
.dashboard-news-story-card--wide .dashboard-news-story-head {
    margin-bottom: 0.1rem;
}

.dashboard-news-rail {
    display: grid;
    gap: 1rem;
    align-content: start;
    position: sticky;
    top: calc(var(--shell-header-height) + 1rem);
}

.dashboard-news-rail-card {
    display: grid;
    gap: 1rem;
    padding: 0.95rem;
    border-radius: 0.95rem;
    box-shadow: 0 0.85rem 1.6rem rgba(15, 23, 42, 0.06);
}

.dashboard-news-rail-head p {
    margin: 0;
    color: var(--muted);
    line-height: 1.5;
}

.dashboard-news-rail-grid {
    display: grid;
    gap: 0.8rem;
}

.dashboard-news-rail-chart-surface {
    padding: 0.8rem;
    border-radius: 0.9rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: rgba(255, 255, 255, 0.84);
}

.dashboard-news-rail-chart-surface .chart-card-head h3 {
    font-size: 0.96rem;
}

.dashboard-news-rail-chart-surface .chart-canvas-wrap {
    min-height: 11.5rem;
}

@media (max-width: 1199.98px) {
    .dashboard-news-story-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .dashboard-news-layout {
        grid-template-columns: 1fr;
    }

    .dashboard-news-rail {
        position: static;
    }

    .dashboard-news-feed-shell,
    .dashboard-news-rail-card {
        padding: 0.9rem;
    }

    .dashboard-news-masthead {
        flex-direction: column;
        align-items: stretch;
    }

    .dashboard-news-masthead-meta {
        justify-content: flex-start;
    }

    .dashboard-news-feature-layout,
    .dashboard-news-story-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-news-story-card--hero,
    .dashboard-news-story-card--wide {
        grid-column: auto;
    }
}

/* News page: newspaper front page styling */
.news-page {
    --news-paper: #f6efdf;
    --news-paper-alt: #efe4cc;
    --news-ink: #17120d;
    --news-muted: rgba(23, 18, 13, 0.68);
    --news-rule: rgba(23, 18, 13, 0.14);
    --news-accent: #8b1e13;
    --news-accent-soft: rgba(139, 30, 19, 0.12);
    --news-serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, "Times New Roman", serif;
    --news-sans: "Aptos", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    width: 100%;
    max-width: none;
    position: relative;
    margin: 0 auto;
    padding: clamp(1rem, 2vw, 2rem);
    color: var(--news-ink);
    font-family: var(--news-serif);
    background:
        radial-gradient(circle at 18% 12%, rgba(255, 255, 255, 0.55), transparent 30%),
        radial-gradient(circle at 85% 10%, rgba(139, 30, 19, 0.06), transparent 24%),
        linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(243, 233, 213, 0.98));
    border: 1px solid rgba(23, 18, 13, 0.06);
    box-shadow: 0 18px 40px rgba(23, 18, 13, 0.06);
}

.news-page a {
    color: inherit;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.15em;
}

.news-loading,
.news-empty-state {
    display: grid;
    gap: 0.55rem;
    padding: 1.3rem 1.35rem;
    background: rgba(255, 252, 244, 0.92);
    border: 1px solid var(--news-rule);
    color: var(--news-ink);
}

.news-loading {
    border-top: 3px double var(--news-ink);
    border-bottom: 3px double var(--news-ink);
}

.news-loading__eyebrow,
.news-masthead__eyebrow,
.news-section__eyebrow,
.news-story__kicker,
.news-rail__panel-head,
.news-rail__brief-list li::marker {
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-family: var(--news-sans);
    font-size: 0.72rem;
    font-weight: 700;
}

.news-loading__title,
.news-empty-state {
    font-family: var(--news-serif);
}

.news-loading__title {
    font-size: clamp(1.2rem, 2vw, 1.7rem);
    line-height: 1.15;
}

.news-loading__copy,
.news-empty-state {
    color: var(--news-muted);
    font-family: var(--news-sans);
    line-height: 1.5;
}

.news-empty-state--error {
    color: #7b2118;
    background: #fff7f4;
    border-color: rgba(123, 33, 24, 0.22);
}

.news-empty-state--inline {
    padding: 1rem 1.1rem;
}

.news-masthead {
    display: grid;
    gap: 1rem;
    padding: 1rem 0 1.2rem;
    margin-bottom: 1.25rem;
    border-top: 4px double var(--news-ink);
    border-bottom: 4px double var(--news-ink);
}

.news-masthead__topline {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    font-family: var(--news-sans);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--news-muted);
}

.news-masthead__body {
    display: grid;
    grid-template-columns: minmax(0, 2.55fr) minmax(260px, 0.75fr);
    gap: 1rem 1.6rem;
    align-items: stretch;
}

.news-masthead__copy {
    display: grid;
    gap: 0.65rem;
}

.news-masthead__copy h1 {
    margin: 0;
    max-width: 22ch;
    font-size: clamp(2.8rem, 5.4vw, 6.15rem);
    line-height: 0.92;
    letter-spacing: -0.04em;
    font-weight: 700;
    text-wrap: balance;
}

.news-masthead__copy p {
    margin: 0;
    max-width: 86ch;
    font-family: var(--news-sans);
    font-size: 1.02rem;
    line-height: 1.6;
    color: var(--news-muted);
}

.news-masthead__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    align-content: start;
    padding: 1rem;
    background: rgba(255, 252, 247, 0.92);
    border: 1px solid var(--news-rule);
    border-top: 3px solid var(--news-ink);
}

.news-masthead__facts div {
    display: grid;
    gap: 0.2rem;
    padding-bottom: 0.35rem;
    border-bottom: 1px solid rgba(23, 18, 13, 0.1);
}

.news-masthead__facts span {
    font-family: var(--news-sans);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--news-muted);
}

.news-masthead__facts strong {
    font-size: 1.02rem;
    font-weight: 700;
}

.news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(300px, 0.8fr);
    gap: 1.25rem 1.5rem;
    align-items: start;
}

.news-main {
    display: grid;
    gap: 1.25rem;
}

.news-card,
.news-story,
.news-rail__panel {
    background: rgba(255, 252, 246, 0.92);
    color: var(--news-ink);
}

.news-lead {
    display: grid;
    grid-template-columns: minmax(280px, 0.94fr) minmax(0, 1.06fr);
    border-top: 3px double var(--news-ink);
    border-bottom: 3px double var(--news-ink);
    border-left: 0;
    border-right: 0;
    background: transparent;
    padding: 0;
}

.news-lead__visual {
    display: grid;
    align-content: start;
    gap: 0.75rem;
    padding: 1rem 1rem 1rem 0;
    border-right: 1px solid var(--news-rule);
    background:
        linear-gradient(180deg, rgba(239, 228, 204, 0.68), rgba(255, 252, 246, 0.95));
}

.news-lead__image {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border: 1px solid rgba(23, 18, 13, 0.16);
    filter: grayscale(0.1) contrast(1.05) saturate(0.9);
}

.news-lead__ticker-block {
    display: grid;
    gap: 0.6rem;
    padding: 1.2rem;
    min-height: 100%;
    background:
        linear-gradient(135deg, rgba(139, 30, 19, 0.08), transparent 28%),
        linear-gradient(180deg, #fcf8ef, #efe3c9);
    border: 1px solid rgba(23, 18, 13, 0.14);
}

.news-lead__kicker {
    font-family: var(--news-sans);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.72rem;
    color: var(--news-accent);
    font-weight: 700;
}

.news-lead__ticker {
    font-size: clamp(2.5rem, 5vw, 5rem);
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: -0.06em;
}

.news-lead__company {
    font-family: var(--news-sans);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--news-muted);
}

.news-lead__stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.8rem;
    margin: 0;
}

.news-lead__stat {
    display: grid;
    gap: 0.2rem;
    padding-top: 0.65rem;
    border-top: 1px solid rgba(23, 18, 13, 0.12);
}

.news-lead__stat span {
    font-family: var(--news-sans);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--news-muted);
}

.news-lead__stat strong {
    font-family: var(--news-serif);
    font-size: 1.1rem;
    line-height: 1.2;
}

.news-lead__stat--detail {
    grid-column: 1 / -1;
}

.news-lead__copy {
    display: grid;
    align-content: start;
    gap: 0.9rem;
    padding: 1rem 0 1rem 1rem;
}

.news-lead__primary {
    display: grid;
    align-content: start;
    gap: 0.9rem;
    min-width: 0;
}

.news-lead__headline {
    margin: 0;
    font-size: clamp(1.9rem, 3vw, 3.4rem);
    line-height: 0.98;
    letter-spacing: -0.035em;
}

.news-lead__headline a {
    text-decoration: none;
}

.news-lead__summary {
    margin: 0;
    max-width: 72ch;
    column-count: 2;
    column-gap: 1.3rem;
    font-size: 1rem;
    line-height: 1.7;
}

.news-lead__secondary {
    align-self: start;
}

.news-story__kicker {
    color: var(--news-accent);
}

.news-story__tagline {
    font-family: var(--news-serif);
    font-size: 0.9rem;
    font-style: italic;
    line-height: 1.45;
    color: var(--news-accent);
}

.news-story__tagline--lead {
    font-size: 1.02rem;
}

.news-story__tagline--secondary {
    font-size: 0.94rem;
}

.news-story-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
    align-items: start;
}

.news-story {
    display: grid;
    gap: 0.65rem;
    grid-column: span 4;
    padding: 0.95rem 0 1rem;
    border-top: 1px solid var(--news-rule);
}

.news-story--wide {
    grid-column: span 7;
}

.news-story--compact {
    grid-column: span 5;
}

.news-story__image {
    margin-bottom: 0.15rem;
}

.news-story__image img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border: 1px solid rgba(23, 18, 13, 0.12);
    filter: grayscale(0.08) contrast(1.03);
}

.news-story__image--portrait img {
    aspect-ratio: 5 / 4;
}

.news-story__headline {
    margin: 0;
    font-size: clamp(1.2rem, 1.65vw, 1.8rem);
    line-height: 1.02;
    letter-spacing: -0.025em;
}

.news-story__summary {
    margin: 0;
    font-family: var(--news-sans);
    font-size: 0.96rem;
    line-height: 1.65;
    color: var(--news-muted);
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-story__stats {
    display: grid;
    gap: 0.35rem;
    padding-top: 0.5rem;
    border-top: 1px solid rgba(23, 18, 13, 0.12);
}

.news-story__stat {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    font-family: var(--news-sans);
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.news-story__stat span {
    color: var(--news-muted);
}

.news-story__stat strong {
    font-family: var(--news-serif);
    font-size: 1rem;
    text-transform: none;
    letter-spacing: normal;
    color: var(--news-ink);
}

.news-story__stat-detail {
    font-family: var(--news-sans);
    font-size: 0.82rem;
    line-height: 1.5;
    color: var(--news-muted);
}

.news-story__meta {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    font-family: var(--news-sans);
    font-size: 0.74rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--news-muted);
}

.news-story__link,
.news-lead__link {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 0.35rem;
    font-family: var(--news-sans);
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--news-accent);
}

.news-story__link::after,
.news-lead__link::after {
    content: "→";
    font-size: 0.88em;
}

.news-section {
    display: grid;
    gap: 0.85rem;
    padding-top: 0.35rem;
}

.news-section--paper-feed {
    padding-top: 0.6rem;
}

.news-section--portfolio-atlas {
    gap: 1rem;
    overflow: hidden;
}

.news-section--market-depth {
    gap: 1rem;
    margin-top: 1.8rem;
    padding-top: 1rem;
    border-top: 2px solid var(--news-ink);
}

.news-section--portfolio-activity {
    gap: 1rem;
    margin-top: 1.8rem;
    padding-top: 1rem;
    border-top: 2px solid var(--news-ink);
}

.news-section--portfolio-gains {
    gap: 1rem;
    margin-top: 1.8rem;
    padding-top: 1rem;
    border-top: 2px solid var(--news-ink);
}

.news-section--portfolio-selloffs {
    gap: 1rem;
    margin-top: 1.8rem;
    padding-top: 1rem;
    border-top: 2px solid var(--news-ink);
}

.news-section--portfolio-trade-intensity {
    gap: 1rem;
    margin-top: 1.8rem;
    padding-top: 1rem;
    border-top: 2px solid var(--news-ink);
}

.news-atlas-spread {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
    gap: 1.1rem;
    align-items: start;
    min-width: 0;
}

.news-atlas-spread--depth {
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
}

.news-story-grid--activity {
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.news-story-grid--activity .news-story {
    grid-column: span 4;
}

.news-story-grid--gains {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
}

.news-story-grid--gains .news-story {
    grid-column: span 4;
}

.news-story-grid--selloffs {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
}

.news-story-grid--selloffs .news-story {
    grid-column: span 4;
    border-top-color: var(--news-accent);
}

.news-story-grid--trade-intensity {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
}

.news-story-grid--trade-intensity .news-story {
    grid-column: span 4;
}

.news-atlas-panel {
    display: grid;
    gap: 0.85rem;
    align-content: start;
    padding-top: 0.1rem;
    min-width: 0;
    overflow: hidden;
}

.news-atlas-panel--depth {
    border-top: 0;
}

.news-atlas-panel__head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 1rem;
    padding-bottom: 0.35rem;
    border-bottom: 2px solid var(--news-ink);
}

.news-atlas-panel__eyebrow {
    font-family: var(--news-sans);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--news-accent);
}

.news-atlas-panel__title {
    margin-top: 0.2rem;
    font-family: var(--news-serif);
    font-size: clamp(1.3rem, 1.85vw, 2rem);
    line-height: 1.04;
    letter-spacing: -0.03em;
    overflow-wrap: anywhere;
}

.news-atlas-panel__link {
    font-family: var(--news-sans);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--news-accent);
    text-decoration: underline;
    text-underline-offset: 0.12em;
    white-space: nowrap;
}

.news-story-grid--atlas {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
    min-width: 0;
}

.news-story--atlas {
    grid-column: span 6;
    padding: 0.95rem;
    background: rgba(255, 252, 246, 0.94);
    border: 1px solid var(--news-rule);
    border-top: 3px solid var(--news-ink);
    box-shadow: 0 12px 28px rgba(23, 18, 13, 0.04);
    min-width: 0;
    overflow: hidden;
}

.news-story--atlas.news-story--wide {
    grid-column: span 12;
}

.news-story--atlas.news-story--compact {
    grid-column: span 6;
}

.news-story--atlas.news-story--tall {
    grid-column: span 6;
}

.news-story--atlas .news-story__summary {
    -webkit-line-clamp: 3;
}

.news-story__sparkline {
    width: 100%;
    height: 160px;
    display: block;
    margin-top: 0.3rem;
    overflow: hidden;
}

.news-story__sparkline-area,
.news-story__sparkline-line {
    vector-effect: non-scaling-stroke;
}

.news-story__sparkline-area {
    fill: rgba(123, 38, 24, 0.12);
}

.news-story__sparkline-line {
    fill: none;
    stroke: #7b2618;
    stroke-width: 3.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.news-story.is-up .news-story__sparkline-area {
    fill: rgba(25, 83, 83, 0.12);
}

.news-story.is-up .news-story__sparkline-line {
    stroke: #195353;
}

.news-story.is-down .news-story__sparkline-area {
    fill: rgba(123, 38, 24, 0.12);
}

.news-story.is-down .news-story__sparkline-line {
    stroke: #7b2618;
}

.news-story__sparkline-area--watchlist {
    fill: rgba(25, 83, 83, 0.11);
}

.news-story__sparkline-line--watchlist {
    stroke: #195353;
}

.news-section + .news-section {
    border-top: 1px solid var(--news-rule);
    padding-top: 1rem;
}

.news-section__head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 1rem;
    padding-bottom: 0.35rem;
    border-bottom: 2px solid var(--news-ink);
}

.news-section__head h3 {
    margin: 0.15rem 0 0;
    font-size: clamp(1.45rem, 2vw, 2.2rem);
    line-height: 1.05;
    letter-spacing: -0.03em;
}

.news-section__head > span {
    font-family: var(--news-sans);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--news-muted);
}

.news-rail {
    display: grid;
    gap: 1rem;
    position: sticky;
    top: calc(var(--shell-header-height) + 1rem);
    align-self: start;
}

.news-rail__panel {
    display: grid;
    gap: 0.85rem;
    padding: 1rem;
    border: 1px solid var(--news-rule);
    border-top: 3px solid var(--news-ink);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(246, 238, 222, 0.9));
}

.news-rail__panel-head {
    color: var(--news-accent);
}

.news-rail__facts {
    display: grid;
    gap: 0.7rem;
    margin: 0;
}

.news-rail__facts div {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: 0.45rem;
    border-bottom: 1px dashed rgba(23, 18, 13, 0.16);
}

.news-rail__facts dt,
.news-rail__facts dd {
    margin: 0;
    font-family: var(--news-sans);
    font-size: 0.84rem;
    line-height: 1.45;
}

.news-rail__facts dt {
    color: var(--news-muted);
}

.news-rail__facts dd {
    font-weight: 700;
}

.news-chart-canvas {
    width: 100%;
    min-height: 14rem;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(245, 238, 225, 0.95));
    border: 1px solid rgba(23, 18, 13, 0.12);
}

.news-chart-canvas--secondary {
    min-height: 11rem;
}

.news-rail__brief-list {
    margin: 0;
    padding-left: 1.1rem;
    display: grid;
    gap: 0.65rem;
}

.news-rail__brief-list li {
    font-family: var(--news-serif);
    line-height: 1.35;
}

.news-rail__brief-list a {
    color: var(--news-ink);
}

.news-rail__panel--movement,
.news-rail__panel--charts {
    gap: 0.9rem;
}

.news-rail__panel-subhead {
    margin-top: -0.45rem;
    font-family: var(--news-sans);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--news-muted);
}

.news-rail__movement-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
}

.news-rail__movement-column {
    display: grid;
    gap: 0.6rem;
}

.news-rail__movement-title {
    font-family: var(--news-sans);
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--news-accent);
}

.news-rail__brief-list--compact {
    gap: 0.45rem;
    padding-left: 1rem;
}

.news-rail__chart-stack {
    display: grid;
    gap: 0.8rem;
}

.news-rail__chart-card {
    display: grid;
    gap: 0.55rem;
    padding: 0.85rem 0.9rem 0.95rem;
    border: 1px solid rgba(23, 18, 13, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 238, 222, 0.92));
}

.news-rail__chart-card-head {
    font-family: var(--news-serif);
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.15;
}

.news-rail__chart-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem 0.55rem;
    align-items: baseline;
    font-family: var(--news-sans);
    font-size: 0.74rem;
    color: var(--news-muted);
}

.news-rail__chart-summary strong {
    color: var(--news-ink);
}

.news-rail__chart-svg {
    width: 100%;
    height: 6.4rem;
    display: block;
}

.news-rail__chart-area {
    fill: rgba(123, 38, 24, 0.12);
}

.news-rail__chart-area--portfolio {
    fill: rgba(123, 38, 24, 0.12);
}

.news-rail__chart-area--watchlist {
    fill: rgba(25, 83, 83, 0.12);
}

.news-rail__chart-line {
    fill: none;
    stroke: var(--news-accent);
    stroke-width: 2.75;
}

.news-rail__chart-line--watchlist {
    stroke: #195353;
}

.news-rail__chart-line--portfolio {
    stroke: #7b2618;
}

@media (max-width: 1199.98px) {
    .news-layout {
        grid-template-columns: 1fr;
    }

    .news-rail {
        position: static;
    }

    .news-lead {
        grid-template-columns: 1fr;
    }

    .news-lead__visual {
        padding: 1rem;
        border-right: 0;
        border-bottom: 1px solid var(--news-rule);
    }

    .news-lead__copy {
        padding: 1rem;
    }

    .news-lead__summary {
        column-count: 1;
    }

    .news-story-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .news-story,
    .news-story--wide,
    .news-story--compact {
        grid-column: span 6;
    }

    .news-rail__movement-grid {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 1200px) {
    .news-lead {
        grid-template-columns: minmax(340px, 0.96fr) minmax(0, 1.24fr);
    }

    .news-lead__copy {
        grid-template-columns: minmax(0, 1.36fr) minmax(300px, 0.82fr);
        gap: 1rem 1.15rem;
        align-items: start;
    }

    .news-lead__primary {
        padding-right: 1rem;
        border-right: 1px solid var(--news-rule);
    }

    .news-lead__secondary {
        margin-top: 0;
        border-top: 0;
        border-left: 1px solid var(--news-rule);
        padding: 0.1rem 0 0.1rem 1rem;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(247, 240, 226, 0.96));
    }

    .news-lead__summary {
        column-count: 1;
        max-width: none;
    }

    .news-lead__secondary .news-story__summary {
        -webkit-line-clamp: 3;
    }

    .news-story__identity {
        gap: 0.55rem 0.75rem;
    }

    .news-story__state {
        padding: 0.34rem 0.62rem;
        font-size: 0.78rem;
    }

    .news-story__state-seal {
        width: 1.4rem;
        height: 1.4rem;
    }

    .member-label-party-icon {
        width: 1.4rem;
        height: 1.4rem;
    }
}

@media (max-width: 767.98px) {
    .paper-page {
        width: 100%;
        max-width: 100vw;
        padding: 0.8rem;
    }

    .paper-page > * {
        min-width: 0;
    }

    .news-page {
        padding: 0.8rem;
    }

    .news-masthead__body {
        grid-template-columns: 1fr;
    }

    .news-masthead__facts {
        grid-template-columns: 1fr;
    }

    .news-story-grid {
        grid-template-columns: 1fr;
    }

    .news-story,
    .news-story--wide,
    .news-story--compact {
        grid-column: auto;
    }

    .news-section__head {
        flex-direction: column;
        align-items: flex-start;
    }

    .news-rail__facts div {
        gap: 0.65rem;
    }
}

@media (max-width: 767.98px), (max-width: 900px) and (hover: none) and (pointer: coarse) {
    .news-page,
    .news-page * {
        min-width: 0;
    }

    .news-masthead__body,
    .news-masthead__facts,
    .news-ticker-bar,
    .news-layout,
    .news-lead,
    .news-lead__copy,
    .news-lead__stats,
    .news-story-grid,
    .news-frontpage-spread,
    .news-frontpage-spread__side,
    .news-frontpage-side-stats,
    .news-performance-spread,
    .news-chart-spread,
    .news-chart-series-grid,
    .news-rail__movement-grid,
    .news-atlas-spread,
    .news-atlas-spread--depth,
    .news-story-drawer__hero,
    .news-story-drawer__facts {
        grid-template-columns: 1fr !important;
    }

    .news-story,
    .news-story--wide,
    .news-story--compact,
    .news-story--tall,
    .news-story-grid--activity .news-story,
    .news-story-grid--gains .news-story,
    .news-story-grid--selloffs .news-story,
    .news-story-grid--trade-intensity .news-story,
    .news-story-grid--atlas .news-story {
        grid-column: 1 / -1 !important;
    }

    .news-story,
    .news-chart-card,
    .news-chart-series-card,
    .news-frontpage-side-panel,
    .news-rail__panel,
    .news-atlas-panel {
        padding: 0.95rem;
        border: 1px solid rgba(23, 18, 13, 0.14);
        border-top: 3px solid var(--news-ink);
        background: rgba(255, 252, 246, 0.96);
        box-shadow: 0 0.45rem 1.1rem rgba(23, 18, 13, 0.06);
    }

    .news-story__summary,
    .news-story--wide .news-story__summary,
    .news-story--compact .news-story__summary,
    .news-story--tall .news-story__summary {
        display: block;
        overflow: visible;
        -webkit-line-clamp: unset;
    }

    .news-story__stat {
        display: grid;
        justify-content: stretch;
        gap: 0.2rem;
    }

    .news-lead__summary {
        column-count: 1;
    }
}

.shell-powered-by {
    display: inline-flex;
    align-items: center;
    gap: 0.28rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    white-space: nowrap;
}

.shell-powered-by-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

.shell-powered-by-logo {
    display: block;
    width: 6.1rem;
    height: 4.067rem;
    border-radius: 0;
    object-fit: contain;
    object-position: center;
    filter: saturate(1.08) drop-shadow(0 3px 6px rgba(14, 165, 233, 0.16));
}

.shell-powered-by .vtx-fix__launcher,
.shell-mobile-powered-by .vtx-fix__launcher {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 0.95rem !important;
    height: 0.95rem !important;
    min-width: 0.95rem !important;
    min-height: 0.95rem !important;
    max-width: 0.95rem !important;
    max-height: 0.95rem !important;
    overflow: visible !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.shell-powered-by .vtx-fix__launcher-icon,
.shell-mobile-powered-by .vtx-fix__launcher-icon {
    display: block !important;
    width: 0.62rem !important;
    height: 0.62rem !important;
    min-width: 0.62rem !important;
    min-height: 0.62rem !important;
    max-width: 0.62rem !important;
    max-height: 0.62rem !important;
    fill: currentColor !important;
}

.vtx-fix--overlay-host .vtx-fix__backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 4500 !important;
    display: block !important;
    width: 100vw !important;
    height: 100dvh !important;
    background: #111827 !important;
}

.vtx-fix--overlay-host .vtx-fix__panel {
    position: fixed !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    z-index: 4501 !important;
    display: block !important;
    width: min(40rem, calc(100vw - 2rem)) !important;
    max-width: calc(100vw - 2rem) !important;
    height: auto !important;
    max-height: min(43rem, calc(100dvh - 2rem)) !important;
    overflow: auto !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 1.85rem !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.68), rgba(255, 255, 255, 0) 24%),
        radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--accent, #195353) 18%, transparent), transparent 34%),
        radial-gradient(circle at 100% 8%, color-mix(in srgb, var(--accent-2, #ba8d46) 22%, transparent), transparent 38%),
        linear-gradient(145deg, #fbfaf7, #f2eee7) !important;
    color: var(--text, #17212f) !important;
    box-shadow: 0 34px 90px rgba(9, 18, 31, 0.42), 0 1px 0 rgba(255, 255, 255, 0.62) inset !important;
    white-space: normal !important;
}

.shell-mobile-powered-by {
    display: none;
}

@media (max-width: 991.98px) {
    .shell-powered-by--desktop {
        display: none !important;
    }

    .shell-mobile-powered-by {
        position: fixed;
        right: max(0.7rem, env(safe-area-inset-right, 0px));
        bottom: calc(env(safe-area-inset-bottom, 0px) + 0.02rem);
        left: max(0.7rem, env(safe-area-inset-left, 0px));
        z-index: 2360;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.38rem;
        width: fit-content;
        max-width: calc(100vw - 1.4rem);
        margin: 0 auto;
        padding: 0.08rem 0.38rem;
        border: 1px solid rgba(14, 165, 233, 0.22);
        border-radius: 999px;
        background:
            linear-gradient(135deg, rgba(9, 18, 31, 0.88), rgba(12, 40, 58, 0.82)),
            radial-gradient(circle at 35% 15%, rgba(14, 165, 233, 0.22), transparent 48%);
        box-shadow: 0 12px 28px rgba(21, 35, 58, 0.24);
        pointer-events: auto;
    }

    .shell-powered-by-logo--mobile {
        width: 3.8rem;
        height: 2.533rem;
        border-radius: 0;
    }

    .vtx-fix--overlay-host .vtx-fix__panel {
        top: 50% !important;
        width: min(31rem, calc(100vw - 1rem)) !important;
        max-width: calc(100vw - 1rem) !important;
        max-height: calc(100dvh - 1rem) !important;
        border-radius: 1.15rem !important;
    }

    .shell-mobile-powered-by .shell-powered-by-label {
        color: rgba(235, 248, 255, 0.82);
        font-size: 0.42rem;
    }

    .shell-content {
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1.45rem) !important;
    }
}

@media (min-width: 992px) {
    .shell-header-inner {
        overflow: visible !important;
    }

    .shell-brandmark {
        flex: 0 1 auto !important;
    }

    .shell-header-panel {
        position: static !important;
        inset: auto !important;
        z-index: auto !important;
        display: flex !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 0 !important;
        max-height: none !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.7rem !important;
        padding: 0 !important;
        overflow: visible !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: none !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .shell-desktop-menu {
        display: flex !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.3rem !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    .shell-mobile-app-sheet,
    .shell-mobile-account-shell,
    .shell-mobile-menu-head,
    .shell-mobile-bottom-nav,
    .shell-mobile-fix-dock,
    .shell-menu-toggle,
    .shell-menu-backdrop {
        display: none !important;
    }
}

@media (max-width: 768px) {
    :root {
        --shell-header-height: 3.15rem;
    }

    .shell-logo {
        width: 1.74rem !important;
        height: 1.74rem !important;
        min-width: 1.74rem !important;
        min-height: 1.74rem !important;
        padding: 0.18rem !important;
    }

    .shell-brandmark {
        gap: 0.52rem !important;
    }

    .brand {
        font-size: 1.02rem !important;
        line-height: 1 !important;
    }
}

@media (max-width: 991.98px) {
    .shell {
        --shell-footer-height: 6.35rem;
    }

    .shell-mobile-bottom-nav {
        padding-bottom: calc(2.08rem + env(safe-area-inset-bottom, 0px)) !important;
    }

    .shell-powered-by-logo--mobile {
        width: 4.95rem !important;
        height: 3.3rem !important;
    }

    .shell-mobile-powered-by {
        bottom: calc(env(safe-area-inset-bottom, 0px) + 0.06rem) !important;
    }

    .shell-content {
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1.75rem) !important;
    }
}

.shell-vtx-fix-inline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.shell-vtx-fix-inline .vtx-fix__launcher {
    width: 1.32rem !important;
    height: 1.32rem !important;
    min-width: 1.32rem !important;
    min-height: 1.32rem !important;
    max-width: 1.32rem !important;
    max-height: 1.32rem !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.shell-vtx-fix-inline .vtx-fix__launcher-icon {
    width: 0.96rem !important;
    height: 0.96rem !important;
    min-width: 0.96rem !important;
    min-height: 0.96rem !important;
    max-width: 0.96rem !important;
    max-height: 0.96rem !important;
    fill: currentColor !important;
}

@media (max-width: 991.98px) {
    .shell {
        --shell-footer-height: 4.65rem;
    }

    .shell-mobile-bottom-nav {
        padding-bottom: calc(0.45rem + env(safe-area-inset-bottom, 0px)) !important;
    }

    .shell-content {
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 0.9rem) !important;
    }
}
.user-feedback-diagnostics {
    max-width: 1680px;
    margin-inline: auto;
}

.user-feedback-diagnostics .diagnostic-tile {
    display: flex;
    min-height: 104px;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 75%, transparent);
    border-radius: 1.25rem;
    padding: 1rem 1.1rem;
    background:
        linear-gradient(145deg, color-mix(in srgb, var(--surface, #fff8ec) 94%, white), color-mix(in srgb, var(--surface, #fff8ec) 86%, var(--brand-a, #7b2618))),
        var(--surface, #fff8ec);
    box-shadow: 0 18px 42px color-mix(in srgb, var(--text, #2c2117) 10%, transparent);
}

.user-feedback-diagnostics .diagnostic-tile span {
    color: var(--muted, #7c6d5b);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.user-feedback-diagnostics .diagnostic-tile strong {
    color: var(--text, #2c2117);
    font-size: clamp(1.15rem, 2vw, 1.75rem);
    line-height: 1.05;
    word-break: break-word;
}

.profile-hub {
    width: min(1680px, 100%);
    margin-inline: auto;
    padding: clamp(1rem, 2vw, 1.8rem);
}

.profile-hub__hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.34fr);
    gap: clamp(1rem, 2vw, 1.6rem);
    align-items: stretch;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 82%, transparent);
    border-radius: 2rem;
    padding: clamp(1.25rem, 3vw, 2.4rem);
    background:
        radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--brand-b, #0f8f87) 18%, transparent), transparent 30%),
        radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--brand-a, #7b2618) 14%, transparent), transparent 28%),
        linear-gradient(135deg, color-mix(in srgb, var(--surface, #fff8ec) 96%, white), color-mix(in srgb, var(--surface, #fff8ec) 88%, var(--brand-b, #0f8f87)));
    box-shadow: 0 24px 60px color-mix(in srgb, var(--text, #2c2117) 10%, transparent);
}

.profile-hub__hero h1 {
    margin: 0.2rem 0 0.55rem;
    color: var(--text);
    font-family: var(--display);
    font-size: clamp(2.3rem, 6vw, 5.2rem);
    line-height: 0.92;
    letter-spacing: -0.06em;
}

.profile-hub__hero p {
    max-width: 68rem;
    margin: 0;
    color: var(--muted);
    font-size: clamp(1rem, 1.8vw, 1.28rem);
    line-height: 1.55;
}

.profile-hub__identity,
.profile-hub__quick-card,
.profile-hub__panel {
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 76%, transparent);
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--surface, #fff8ec) 96%, white), color-mix(in srgb, var(--surface, #fff8ec) 90%, var(--brand-c, #ba8d46)));
    box-shadow: 0 18px 42px color-mix(in srgb, var(--text, #2c2117) 9%, transparent);
}

.profile-hub__identity {
    display: grid;
    align-content: center;
    gap: 0.35rem;
    border-radius: 1.45rem;
    padding: 1.2rem;
}

.profile-hub__identity span,
.profile-hub__quick-card span,
.profile-hub__contacts label > span,
.profile-hub__field > span {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.profile-hub__identity strong {
    color: var(--text);
    font-size: clamp(1.35rem, 2.4vw, 2rem);
    line-height: 1.05;
    word-break: break-word;
}

.profile-hub__identity small,
.profile-hub__hint,
.profile-hub__contacts small {
    color: var(--muted);
    font-size: 0.84rem;
    line-height: 1.45;
}

.profile-hub__status {
    margin-top: 1rem;
    border: 1px solid color-mix(in srgb, var(--brand-b, #0f8f87) 28%, var(--line, #d8d0c2));
    border-radius: 1.2rem;
    padding: 0.9rem 1rem;
    background: color-mix(in srgb, var(--brand-b, #0f8f87) 10%, var(--surface, #fff8ec));
    color: var(--text);
    font-weight: 700;
}

.profile-hub__quick-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
    gap: 0.9rem;
    margin-top: 1rem;
}

.profile-hub__quick-card {
    display: grid;
    gap: 0.7rem;
    min-height: 7rem;
    align-content: space-between;
    border-radius: 1.35rem;
    padding: 1rem;
}

.profile-hub__quick-card strong {
    color: var(--text);
    font-size: clamp(1rem, 1.8vw, 1.42rem);
    line-height: 1.1;
    word-break: break-word;
}

.profile-hub__quick-card small {
    color: var(--muted);
    font-size: 0.82rem;
    line-height: 1.35;
}

.profile-hub__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(22rem, 0.72fr);
    gap: 1rem;
    margin-top: 1rem;
    align-items: start;
}

.profile-hub__panel {
    display: grid;
    gap: 1rem;
    border-radius: 1.6rem;
    padding: clamp(1rem, 2vw, 1.35rem);
}

.profile-hub__panel--wide {
    grid-row: span 2;
}

.profile-hub__panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.profile-hub__panel h2 {
    margin: 0.15rem 0 0;
    color: var(--text);
    font-family: var(--display);
    font-size: clamp(1.45rem, 3vw, 2.3rem);
    line-height: 1;
    letter-spacing: -0.04em;
}

.profile-hub__note {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.profile-hub__contacts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
}

.profile-hub__contacts label,
.profile-hub__field {
    display: grid;
    gap: 0.45rem;
}

.profile-hub__contacts .form-control,
.profile-hub__field .form-control {
    min-height: 3rem;
    border-color: color-mix(in srgb, var(--line, #d8d0c2) 82%, transparent);
    background: color-mix(in srgb, var(--surface, #fff8ec) 96%, white);
    color: var(--text);
}

.profile-alert-matrix {
    display: grid;
    gap: 0.45rem;
}

.profile-alert-matrix__row {
    display: grid;
    grid-template-columns: minmax(16rem, 1fr) repeat(3, minmax(6.5rem, 0.2fr));
    gap: 0.5rem;
    align-items: stretch;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 72%, transparent);
    border-radius: 1rem;
    padding: 0.55rem;
    background: color-mix(in srgb, var(--surface, #fff8ec) 92%, white);
}

.profile-alert-matrix__row--head {
    border-color: color-mix(in srgb, var(--text, #2c2117) 18%, var(--line, #d8d0c2));
    background: color-mix(in srgb, var(--text, #2c2117) 8%, var(--surface, #fff8ec));
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.profile-alert-matrix__area {
    display: grid;
    gap: 0.2rem;
    padding: 0.35rem 0.5rem;
}

.profile-alert-matrix__area strong {
    color: var(--text);
    font-size: 1rem;
}

.profile-alert-matrix__area span {
    color: var(--muted);
    font-size: 0.84rem;
    line-height: 1.35;
}

.profile-alert-matrix__check {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 3.1rem;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 72%, transparent);
    border-radius: 0.85rem;
    background: color-mix(in srgb, var(--surface, #fff8ec) 88%, white);
    color: var(--text);
    font-weight: 800;
}

.profile-alert-matrix__check input,
.profile-hub__switch input {
    width: 1.1rem;
    height: 1.1rem;
    accent-color: var(--brand-b, #0f8f87);
}

.profile-hub__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.profile-hub__switch {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-height: 3rem;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 76%, transparent);
    border-radius: 1rem;
    padding: 0.75rem 0.85rem;
    background: color-mix(in srgb, var(--surface, #fff8ec) 92%, white);
    color: var(--text);
    font-weight: 800;
}

.profile-hub__text-link {
    color: var(--brand-b);
    font-weight: 800;
    text-decoration: none;
}

.profile-hub__text-link:hover {
    color: var(--brand-a);
    text-decoration: underline;
}

.subscription-hub {
    width: min(1680px, 100%);
    margin-inline: auto;
    padding: clamp(1rem, 2vw, 1.8rem);
}

.subscription-hub__hero,
.subscription-hub__quick-card,
.subscription-hub__panel {
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 76%, transparent);
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--surface, #fff8ec) 97%, white), color-mix(in srgb, var(--surface, #fff8ec) 90%, var(--brand-c, #ba8d46)));
    box-shadow: 0 18px 42px color-mix(in srgb, var(--text, #2c2117) 9%, transparent);
}

.subscription-hub__hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.32fr);
    gap: clamp(1rem, 2vw, 1.6rem);
    align-items: stretch;
    border-radius: 2rem;
    padding: clamp(1.25rem, 3vw, 2.4rem);
    background:
        radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--brand-b, #0f8f87) 18%, transparent), transparent 30%),
        radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--brand-a, #7b2618) 14%, transparent), transparent 28%),
        linear-gradient(135deg, color-mix(in srgb, var(--surface, #fff8ec) 96%, white), color-mix(in srgb, var(--surface, #fff8ec) 88%, var(--brand-b, #0f8f87)));
}

.subscription-hub__hero h1 {
    margin: 0.2rem 0 0.55rem;
    color: var(--text);
    font-family: var(--display);
    font-size: clamp(2.4rem, 6vw, 5.4rem);
    line-height: 0.9;
    letter-spacing: -0.06em;
}

.subscription-hub__hero p {
    max-width: 68rem;
    margin: 0;
    color: var(--muted);
    font-size: clamp(1rem, 1.8vw, 1.28rem);
    line-height: 1.55;
}

.subscription-hub__identity {
    display: grid;
    align-content: center;
    gap: 0.35rem;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 76%, transparent);
    border-radius: 1.45rem;
    padding: 1.2rem;
    background: color-mix(in srgb, var(--surface, #fff8ec) 88%, white);
}

.subscription-hub__identity span,
.subscription-hub__quick-card span,
.subscription-hub__fact span {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.subscription-hub__identity strong,
.subscription-hub__quick-card strong,
.subscription-hub__fact strong {
    color: var(--text);
    font-size: clamp(1.2rem, 2vw, 1.8rem);
    line-height: 1.08;
    word-break: break-word;
}

.subscription-hub__identity small,
.subscription-hub__quick-card small {
    color: var(--muted);
    line-height: 1.4;
}

.subscription-hub__quick-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
    gap: 0.9rem;
    margin-top: 1rem;
}

.subscription-hub__quick-card {
    display: grid;
    gap: 0.65rem;
    min-height: 7.5rem;
    align-content: space-between;
    border-radius: 1.35rem;
    padding: 1rem;
}

.subscription-hub__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(22rem, 0.72fr);
    gap: 1rem;
    margin-top: 1rem;
    align-items: start;
}

.subscription-hub__panel {
    display: grid;
    gap: 1rem;
    border-radius: 1.6rem;
    padding: clamp(1rem, 2vw, 1.35rem);
}

.subscription-hub__panel--wide {
    grid-row: span 2;
}

.subscription-hub__panel h2 {
    margin: 0.15rem 0 0;
    color: var(--text);
    font-family: var(--display);
    font-size: clamp(1.45rem, 3vw, 2.3rem);
    line-height: 1;
    letter-spacing: -0.04em;
}

.subscription-hub__side {
    display: grid;
    gap: 1rem;
}

.subscription-hub__fact {
    display: grid;
    gap: 0.3rem;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 74%, transparent);
    border-radius: 1rem;
    padding: 0.85rem;
    background: color-mix(in srgb, var(--surface, #fff8ec) 92%, white);
}

.subscription-matrix {
    display: grid;
    gap: 0.45rem;
}

.subscription-matrix__row {
    display: grid;
    grid-template-columns: minmax(18rem, 1fr) minmax(6rem, 0.18fr) minmax(6rem, 0.18fr) minmax(8rem, 0.22fr) minmax(7rem, 0.18fr);
    gap: 0.5rem;
    align-items: stretch;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 72%, transparent);
    border-radius: 1rem;
    padding: 0.55rem;
    background: color-mix(in srgb, var(--surface, #fff8ec) 92%, white);
}

.subscription-matrix__row--head {
    border-color: color-mix(in srgb, var(--text, #2c2117) 18%, var(--line, #d8d0c2));
    background: color-mix(in srgb, var(--text, #2c2117) 8%, var(--surface, #fff8ec));
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.subscription-matrix__area {
    display: grid;
    gap: 0.2rem;
    padding: 0.35rem 0.5rem;
}

.subscription-matrix__area strong {
    color: var(--text);
    font-size: 1rem;
}

.subscription-matrix__area span,
.subscription-matrix__area small {
    color: var(--muted);
    font-size: 0.84rem;
    line-height: 1.35;
}

.subscription-matrix__value,
.subscription-matrix__chip,
.subscription-matrix__check {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 3.1rem;
    border: 1px solid color-mix(in srgb, var(--line, #d8d0c2) 72%, transparent);
    border-radius: 0.85rem;
    background: color-mix(in srgb, var(--surface, #fff8ec) 88%, white);
    color: var(--text);
    font-weight: 800;
    text-align: center;
}

.subscription-matrix__chip.is-on {
    border-color: color-mix(in srgb, var(--brand-b, #0f8f87) 42%, var(--line, #d8d0c2));
    background: color-mix(in srgb, var(--brand-b, #0f8f87) 12%, var(--surface, #fff8ec));
}

.subscription-matrix__chip.is-off {
    color: var(--muted);
}

.subscription-matrix__check input {
    width: 1.1rem;
    height: 1.1rem;
    accent-color: var(--brand-b, #0f8f87);
}

@media (max-width: 991.98px) {
    .profile-hub {
        padding: 0.85rem;
    }

    .profile-hub__hero,
    .profile-hub__layout,
    .profile-hub__contacts,
    .subscription-hub__hero,
    .subscription-hub__layout {
        grid-template-columns: 1fr;
    }

    .profile-hub__quick-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .profile-hub__panel--wide {
        grid-row: auto;
    }

    .profile-alert-matrix__row,
    .profile-alert-matrix__row--head,
    .subscription-matrix__row,
    .subscription-matrix__row--head {
        grid-template-columns: 1fr;
    }

    .profile-alert-matrix__row--head,
    .subscription-matrix__row--head {
        display: none;
    }

    .profile-alert-matrix__check,
    .subscription-matrix__value,
    .subscription-matrix__chip,
    .subscription-matrix__check {
        justify-content: space-between;
        padding-inline: 1rem;
    }
}

@media (max-width: 575.98px) {
    .profile-hub__quick-grid {
        grid-template-columns: 1fr;
    }

    .profile-hub__panel-head,
    .profile-hub__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .profile-hub__panel-head .btn,
    .profile-hub__actions .btn {
        width: 100%;
    }
}

@media (hover: none) and (pointer: coarse) and (max-width: 1180px) {
    .shell {
        --shell-footer-height: 5.42rem;
    }

    .shell-welcome-menu,
    .shell-desktop-menu,
    .shell-menu-toggle,
    .shell-footer {
        display: none !important;
    }

    .shell-header-inner {
        align-items: center;
        gap: 0.42rem;
        padding: 0.16rem max(0.55rem, env(safe-area-inset-right, 0px)) 0.16rem max(0.55rem, env(safe-area-inset-left, 0px));
        min-height: var(--shell-header-height);
    }

    .shell-brandmark {
        flex: 1 1 auto;
        min-width: 0;
    }

    .shell-alert-zone-header {
        margin-left: auto;
        order: 2;
    }

    .shell-content {
        padding-bottom: calc(var(--shell-footer-height) + env(safe-area-inset-bottom, 0px) + 1.25rem) !important;
    }

    .shell-menu-backdrop {
        position: fixed !important;
        inset: 0 !important;
        z-index: 2090 !important;
        display: block !important;
        background: rgba(15, 23, 42, 0.58) !important;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.28s ease;
    }

    .shell-menu-backdrop.open {
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    .shell-header-panel {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        min-width: 100vw !important;
        max-width: 100vw !important;
        min-height: 100dvh !important;
        max-height: 100dvh !important;
        z-index: 2100 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0.45rem !important;
        padding: calc(env(safe-area-inset-top, 0px) + 0.75rem) 0 calc(env(safe-area-inset-bottom, 0px) + 0.95rem) !important;
        border: 0 !important;
        border-radius: 0 !important;
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.18), transparent 28%),
            radial-gradient(circle at top left, rgba(15, 143, 135, 0.12), transparent 24%),
            linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(243, 238, 228, 0.99)) !important;
        box-shadow: 0 30px 80px rgba(21, 35, 58, 0.26) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        touch-action: pan-y pinch-zoom;
        transform: translate3d(0, 1rem, 0) scale(0.992) !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.22s ease;
    }

    .shell-header-panel.open {
        transform: translate3d(0, 0, 0) scale(1) !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    .shell-mobile-menu-head {
        display: none !important;
        align-items: center !important;
        justify-content: flex-end !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 6 !important;
        min-height: 3.75rem !important;
        padding: 0.55rem 0.85rem !important;
        border-bottom: 1px solid rgba(21, 35, 58, 0.08) !important;
        background: linear-gradient(180deg, rgba(255, 251, 245, 0.995), rgba(255, 251, 245, 0.94)) !important;
        backdrop-filter: blur(10px);
    }

    .shell-header-panel.mobile-section-open .shell-mobile-menu-head {
        display: none !important;
        justify-content: space-between !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-menu-head-title {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.55rem !important;
        min-width: 0;
        flex: 1 1 auto;
        padding: 0.85rem 0.95rem !important;
        border: 1px solid rgba(21, 35, 58, 0.08) !important;
        border-radius: 0 !important;
        background: rgba(255, 255, 255, 0.9) !important;
        box-shadow: 0 10px 22px rgba(21, 35, 58, 0.06) !important;
        color: var(--text);
        font-family: var(--display);
        font-size: 1rem;
        font-weight: 700;
        line-height: 1.1;
        text-align: left;
        touch-action: manipulation;
    }

    .shell-mobile-menu-close {
        width: 3rem !important;
        height: 3rem !important;
        min-width: 3rem !important;
        min-height: 3rem !important;
        touch-action: manipulation;
    }

    .shell-mobile-app-sheet {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.8rem !important;
        width: min(100%, 46rem) !important;
        max-width: 100% !important;
        min-height: 100% !important;
        margin: 0 auto !important;
        padding: 0.35rem 1rem calc(1.25rem + env(safe-area-inset-bottom, 0px)) !important;
        overflow: visible !important;
    }

    .shell-header-panel.mobile-section-open {
        overflow: hidden !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-sheet {
        width: 100% !important;
        min-height: 100dvh !important;
        padding: 0.2rem 0.5rem calc(1rem + env(safe-area-inset-bottom, 0px)) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .shell-mobile-app-sections {
        display: grid !important;
        gap: 0.8rem !important;
        min-height: 0 !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-sections {
        display: block !important;
        min-height: 100dvh !important;
    }

    .shell-mobile-app-group {
        display: grid !important;
        gap: 0 !important;
        overflow: hidden !important;
    }

    .shell-header-panel.mobile-subsection-open .shell-mobile-account-card,
    .shell-header-panel.mobile-subsection-open .shell-mobile-logout-group,
    .shell-header-panel.mobile-subsection-open .shell-mobile-app-group:not(.is-open) {
        display: none !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open {
        position: fixed !important;
        inset: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        min-height: 100dvh !important;
        margin: 0 !important;
        border-radius: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        z-index: 2101 !important;
        background:
            radial-gradient(circle at top right, rgba(186, 141, 70, 0.08), transparent 20%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 241, 232, 0.97)) !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-group-title {
        position: sticky !important;
        top: 0 !important;
        z-index: 3 !important;
        min-height: 4.2rem !important;
        padding-top: calc(env(safe-area-inset-top, 0px) + 1rem) !important;
        padding-bottom: 1rem !important;
    }

    .shell-header-panel.mobile-section-open .shell-mobile-app-group.is-open > .shell-mobile-app-links {
        max-height: none !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        padding-bottom: calc(1.15rem + env(safe-area-inset-bottom, 0px)) !important;
    }

    .shell-mobile-bottom-nav {
        position: fixed !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        z-index: 2350 !important;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 0.28rem !important;
        min-height: var(--shell-footer-height) !important;
        padding: 0.38rem max(0.55rem, env(safe-area-inset-right, 0px)) calc(1.5rem + env(safe-area-inset-bottom, 0px)) max(0.55rem, env(safe-area-inset-left, 0px)) !important;
        border-top: 1px solid rgba(23, 18, 13, 0.14) !important;
        background:
            linear-gradient(180deg, rgba(255, 252, 245, 0.94), rgba(242, 234, 221, 0.98)),
            radial-gradient(circle at 12% 0%, rgba(15, 143, 135, 0.12), transparent 38%),
            radial-gradient(circle at 84% 0%, rgba(186, 141, 70, 0.16), transparent 36%) !important;
        box-shadow: 0 -18px 42px rgba(21, 35, 58, 0.18) !important;
        backdrop-filter: blur(18px);
    }

    .shell-mobile-bottom-nav-item {
        min-height: 3.18rem !important;
        touch-action: manipulation;
    }
}

/* Capitol Monkey newspaper glassmorphism theme */
:root {
  --cmfg-paper-glass: rgba(255, 253, 246, 0.76);
  --cmfg-paper-border: rgba(90, 75, 46, 0.18);
  --cmfg-ink: #17202a;
  --cmfg-newsprint: rgba(55, 47, 34, 0.115);
}

.public-shell,
.shell {
  position: relative;
  isolation: isolate;
  overflow-x: hidden;
  background:
    linear-gradient(135deg, rgba(255, 253, 246, 0.96), rgba(242, 238, 226, 0.94) 46%, rgba(232, 241, 239, 0.92));
}

.cmfg-news-watermark {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}

.cmfg-news-watermark::before {
  content: "CAPITOL MONKEY DAILY\A MARKETS  POLICY  FILINGS  SIGNALS\A SAMPLE NEWS WATERMARK";
  white-space: pre;
  position: absolute;
  left: 50%;
  top: 46%;
  width: min(78vw, 900px);
  transform: translate(-50%, -50%) rotate(-9deg);
  color: var(--cmfg-newsprint);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2.4rem, 6vw, 5.8rem);
  font-weight: 900;
  line-height: 1.08;
  text-align: center;
  letter-spacing: 0;
  animation: cmfgNewsprintDrift 22s ease-in-out infinite;
}

.cmfg-news-watermark::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    url('/images/newsMonkey.png') right 8% bottom 10% / min(32vw, 360px) no-repeat,
    repeating-linear-gradient(90deg, rgba(34, 30, 22, 0.035) 0 1px, transparent 1px 16px),
    repeating-linear-gradient(0deg, rgba(34, 30, 22, 0.025) 0 1px, transparent 1px 18px);
  opacity: 0.42;
}

.public-shell-header,
.shell-header,
.public-shell-content,
.shell main,
.shell-footer,
.paper-page,
.login-card,
.card,
.rich-card,
.table-responsive,
.dashboard-panel,
.market-board,
.news-masthead,
.login-passkey,
.login-mode-nav {
  position: relative;
  z-index: 1;
}

.public-shell-header,
.shell-header,
.shell-footer,
.paper-page,
.login-card,
.card,
.rich-card,
.table-responsive,
.dashboard-panel,
.market-board,
.news-masthead,
.login-passkey,
.login-mode-nav {
  background: var(--cmfg-paper-glass) !important;
  border-color: var(--cmfg-paper-border) !important;
  box-shadow: 0 18px 54px rgba(50, 43, 29, 0.12);
  backdrop-filter: blur(18px) saturate(1.08);
  -webkit-backdrop-filter: blur(18px) saturate(1.08);
}

.login-screen {
  position: relative;
  isolation: isolate;
  color: var(--cmfg-ink);
}

.login-screen::before {
  content: "THE CAPITOL MONKEY SAMPLE EDITION";
  position: fixed;
  left: 50%;
  top: 50%;
  width: min(88vw, 980px);
  transform: translate(-50%, -50%) rotate(-12deg);
  color: rgba(45, 38, 26, 0.105);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(3rem, 8vw, 7rem);
  font-weight: 900;
  line-height: 0.96;
  text-align: center;
  pointer-events: none;
  z-index: 0;
}

.login-screen .login-layout,
.login-screen .login-card {
  position: relative;
  z-index: 1;
}

@keyframes cmfgNewsprintDrift {
  0%, 100% { transform: translate(-50%, -50%) rotate(-9deg) scale(1); opacity: 0.78; }
  48% { transform: translate(-50%, -51.5%) rotate(-7deg) scale(1.025); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .cmfg-news-watermark::before { animation: none; }
}/* Base mobile geometry override: alert inbox becomes the only visible mobile layer. */
@media (max-width: 991.98px) {
  body:has(.alert-inbox-shell.open) .shell-header,
  body:has(.alert-inbox-shell.open) .shell-header-inner,
  body:has(.alert-inbox-shell.open) .shell-header-panel,
  body:has(.alert-inbox-shell.open) .shell-menu-backdrop,
  body:has(.alert-inbox-shell.open) .shell-mobile-bottom-nav {
    display: none !important;
  }
  .alert-inbox-shell.open {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483600 !important;
  }
  .alert-inbox-shell.open .alert-inbox-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483601 !important;
    opacity: 1 !important;
  }
  .alert-inbox-shell.open .alert-inbox-panel {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 2147483602 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    transform: none !important;
    overflow-y: auto !important;
    background: linear-gradient(180deg, var(--surface), var(--bg)) !important;
  }
  .alert-inbox-swipe-close,
  .alert-inbox-head,
  .alert-inbox-mailboxes,
  .alert-inbox-list,
  .alert-inbox-reader,
  .empty-state {
    margin-left: 16px !important;
    margin-right: 16px !important;
  }
}