/* Sentico analytics: a quiet, data-first workspace in the brand's blue palette. */
body:has(.is-analytics) { background: #07111f; }
body:has(.is-analytics) .site-header { background: #081320; border-bottom: 1px solid #213047; }
.app-shell.is-analytics { max-width: 1536px; padding: 2.5rem clamp(1rem, 3.5vw, 3.5rem) 4rem; }
.an-workspace { --an-border: #223148; --an-muted: #8fa4bf; --an-panel: #0c192a; color: #e5edfa; font-size: 14px; }
.an-workspace *, .an-workspace *::before, .an-workspace *::after { box-sizing: border-box; }
.an-heading { display: flex; justify-content: space-between; align-items: center; gap: 2rem; margin-bottom: 2rem; }
.an-breadcrumb { color: #7e93af; font-size: .72rem; margin: 0 0 1.4rem; }
.an-workspace h1 { font-family: var(--font-sans); font-size: clamp(1.8rem, 3vw, 2.35rem); font-weight: 500; letter-spacing: -.04em; line-height: 1.2; margin: 0; }
.an-subtitle { color: #91a6c2; margin: .65rem 0 0; font-size: .87rem; line-height: 1.6; }
.an-connection { display: grid; justify-items: end; gap: .7rem; color: #7d93af; font-size: .68rem; }
.an-live { display: flex; align-items: center; gap: .5rem; background: #112b2b; border: 1px solid #244740; color: #9ce2c8; border-radius: 20px; padding: .4rem .7rem; }
.an-live i { height: 5px; width: 5px; background: currentColor; border-radius: 50%; }
.an-live.is-offline { background: #301d29; color: #efadb1; border-color: #563040; }
.an-live.is-connecting { background: #2a291e; color: #d6c28a; border-color: #494130; }
.an-navigation { display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--an-border); margin-bottom: 1.6rem; }
.an-navigation nav { display: flex; gap: 2rem; }
.an-navigation a { text-decoration: none; color: #91a6c2; font-size: .82rem; padding: .85rem .2rem 1rem; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.an-navigation a[aria-current] { color: #b6d0ff; border-bottom-color: #7ca8ff; }
.an-navigation > span { font-size: .7rem; color: #8298b5; }
.an-dot { margin: 0 .5rem; color: #536a87; }
.an-kpis { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); border: 1px solid var(--an-border); background: var(--an-panel); border-radius: 9px; margin-bottom: 1.5rem; }
.an-kpis-three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.an-kpi { min-width: 0; padding: 1.5rem 1.7rem; }
.an-kpi + .an-kpi { border-left: 1px solid var(--an-border); }
.an-kpi p { margin: 0 0 1rem; color: #a0b2ca; font-size: .77rem; }
.an-kpi strong { display: block; color: #ecf3ff; font-size: clamp(1.55rem,2.5vw,2.05rem); font-weight: 500; letter-spacing: -.04em; line-height: 1.15; font-variant-numeric: tabular-nums; }
.an-kpi > span { display: block; margin-top: .8rem; font-size: .67rem; color: #7e95b2; }
.an-primary-grid { display: grid; grid-template-columns: minmax(0,2.4fr) minmax(260px,1fr); gap: 1.5rem; margin-bottom: 1.5rem; align-items: stretch; }
.an-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; margin-bottom: 1.5rem; }
.an-panel { min-width: 0; background: var(--an-panel); border: 1px solid var(--an-border); border-radius: 9px; overflow: hidden; }
.an-panel-heading { display: flex; justify-content: space-between; align-items: start; gap: 1rem; padding: 1.4rem 1.5rem 1.2rem; }
.an-panel h2 { margin: 0; color: #e0eafa; font-size: .93rem; font-weight: 500; letter-spacing: -.012em; }
.an-panel-heading p { margin: .4rem 0 0; color: #7f97b5; font-size: .7rem; line-height: 1.5; }
.an-unit { color: #7891b1; font: .63rem var(--font-mono); padding-top: .2rem; }
.an-range { display: inline-flex; border: 1px solid #2d405a; padding: 3px; border-radius: 6px; gap: 2px; }
.an-workspace button { font-family: inherit; cursor: pointer; }
.an-range button { border: 0; color: #91a6c2; background: transparent; padding: .35rem .6rem; border-radius: 3px; font-size: .68rem; }
.an-range button[aria-pressed="true"] { background: #243c60; color: #dceaff; }
.an-chart-toolbar { padding: 0 1.5rem 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.an-metrics { display: flex; gap: 1rem; }
.an-metrics button { padding: .4rem 0; background: none; border: 0; color: #8097b6; font-size: .72rem; }
.an-metrics button[aria-pressed="true"] { color: #b5d0ff; }
.an-metrics button[aria-pressed="true"]::before { content: ''; display: inline-block; width: 5px; height: 5px; background: #7ca8ff; margin-right: .4rem; border-radius: 50%; vertical-align: middle; }
.an-chart-actions { display: flex; gap: .5rem; }
.an-chart-actions button { background: transparent; border: 1px solid #2a3b52; color: #a3b9d8; border-radius: 4px; font-size: .65rem; padding: .4rem .6rem; }
.an-chart-actions button:disabled { opacity: .4; cursor: default; }
.an-chart-actions button:not(:disabled):hover, .an-range button:hover { background: #1a2f4b; }
.an-plot { height: 260px; width: 100%; padding: 0 .35rem; }
.an-main-chart .an-plot { height: 300px; }
.an-chart-note { color: #869cbb; font-size: .72rem; }
.an-chart-bottom { display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: 1rem 1.5rem; color: #7f96b5; font-size: .65rem; }
.an-chart-bottom i { display: inline-block; width: 6px; height: 6px; background: #7ca8ff; border-radius: 2px; margin-right: .5rem; }
.an-data-table { border-top: 1px solid var(--an-border); }
.an-data-table summary { padding: .75rem 1.5rem; font-size: .7rem; color: #9fb6d6; cursor: pointer; }
.an-data-table .an-table-scroll { max-height: 240px; overflow-y: auto; }
.an-table-scroll { overflow-x: auto; }
.an-workspace table { width: 100%; border-collapse: collapse; font-size: .73rem; font-variant-numeric: tabular-nums; }
.an-workspace th { background: #0a1626; text-align: left; font-size: .64rem; font-weight: 400; color: #869fbe; padding: .85rem 1.2rem; border-block: 1px solid #213047; white-space: nowrap; }
.an-workspace td { color: #b6c9e3; padding: 1rem 1.2rem; border-bottom: 1px solid #1b2c42; }
.an-workspace tr:last-child td { border-bottom: 0; }
.an-workspace td:last-child, .an-workspace th:last-child { text-align: right; }
.an-ranking th:nth-child(3),.an-ranking td:nth-child(3) { text-align: right; white-space: nowrap; }
.an-ranking th:first-child, .an-ranking td:first-child { width: 32px; padding-right: 0; }
.an-ranking .an-rank { color: #617e9e; font: .65rem var(--font-mono); }
.an-market-symbol { display: block; max-width: 240px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #d5e1f5; }
.an-ranking small { display: inline-block; margin-top: .3rem; color: #89a1c0; font-size: .6rem; }
.an-share { height: 4px; width: 84px; background: #1c2e46; border-radius: 3px; overflow: hidden; margin-left: auto; }
.an-share span { display: block; height: 100%; background: #7ca8ff; border-radius: inherit; }
.an-ranking .an-positive { color: #8dd7bf; }
.an-ranking .an-negative { color: #eda3ad; }
.an-activity { display: flex; flex-direction: column; }
.an-network-icon { color: #799ed0; font-size: 1.25rem; }
.an-activity-total { margin: .2rem 1.5rem 1.5rem; }
.an-activity-total > span { font-size: .7rem; color: #8ba3c1; }
.an-activity-total strong { display: block; font-weight: 400; font-size: 3.1rem; letter-spacing: -.04em; margin-top: .4rem; font-variant-numeric: tabular-nums; }
.an-activity dl, .an-fee-list { padding: 0 1.5rem; margin: 0; }
.an-activity dl > div, .an-fee-list > div { display: flex; justify-content: space-between; gap: .75rem; padding: .8rem 0; border-top: 1px solid #213148; font-size: .72rem; }
.an-activity dt,.an-fee-list dt { color: #849dbc; }
.an-activity dd,.an-fee-list dd { margin: 0; color: #c7d8ed; font-variant-numeric: tabular-nums; }
.an-source-note { color: #7b94b4; font-size: .64rem; line-height: 1.7; padding: 1rem 1.5rem 0; margin-top: auto; }
.an-activity > a { color: #a4c6ff; text-decoration: none; padding: .3rem 1.5rem 1.4rem; font-size: .68rem; }
.an-section-title { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 2.1rem 0 1rem; }
.an-section-title h2 { font-size: .95rem; font-weight: 500; margin: 0; }
.an-section-title > span { color: #7189a8; font-size: .69rem; }
.an-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: .8rem; min-height: 240px; padding: 2rem; }
.an-main-chart .an-empty { min-height: 300px; }
.an-empty svg { color: #4b6d99; margin-bottom: .3rem; }
.an-empty strong { font-size: .82rem; color: #a7bdda; font-weight: 400; }
.an-empty p { color: #758dab; font-size: .72rem; line-height: 1.7; max-width: 38ch; margin: 0; }
.an-fee-ring { width: 170px; height: 170px; margin: 1rem auto 2rem; border-radius: 50%; background: conic-gradient(#7ca8ff 0 var(--maker), #50627f var(--maker) 100%); padding: 17px; }
.an-fee-ring > div { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; background: var(--an-panel); border-radius: 50%; }
.an-fee-ring strong { font-size: 1.6rem; font-weight: 500; }
.an-fee-ring span { margin-top: .5rem; font-size: .65rem; color: #8fa4bf; }
.an-footnote { display: flex; justify-content: space-between; gap: 1rem; margin-top: 2rem; color: #7189a8; font-size: .65rem; line-height: 1.6; }
.an-footnote a { color: #94aed0; text-decoration: none; }
.an-notice { padding: 1rem 1.2rem; margin-bottom: 1.5rem; border: 1px solid #654853; background: #291e2a; color: #ddb6c1; font-size: .75rem; line-height: 1.7; border-radius: 6px; }
@media (max-width: 1100px) {
  .an-primary-grid { grid-template-columns: minmax(0,2fr) minmax(230px,1fr); gap: 1rem; }
  .an-kpi { padding: 1.3rem; }
  .an-grid { gap: 1rem; }
  .an-market-symbol { max-width: 160px; }
  .an-workspace td,.an-workspace th { padding-inline: .85rem; }
}
@media (max-width: 800px) {
  .an-heading { align-items: start; }
  .an-connection { max-width: 150px; flex-shrink: 0; }
  .an-primary-grid,.an-grid { grid-template-columns: 1fr; }
  .an-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .an-kpi:nth-child(3) { border-left: 0; }
  .an-kpi:nth-child(n+3) { border-top: 1px solid var(--an-border); }
  .an-kpis-three .an-kpi:last-child { grid-column: 1 / -1; }
  .an-navigation > span { font-size: .6rem; }
  .an-dot { margin-inline: .2rem; }
  .an-market-symbol { max-width: 240px; }
  .an-activity-total strong { font-size: 2.2rem; }
}
@media (max-width: 520px) {
  .app-shell.is-analytics { padding-top: 1.5rem; }
  .an-heading { flex-direction: column; gap: 1rem; margin-bottom: 1rem; }
  .an-breadcrumb { margin-bottom: 1rem; }
  .an-connection { max-width: none; display: flex; align-items: center; gap: .8rem; }
  .an-navigation nav { gap: 1.2rem; }
  .an-navigation > span { display: none; }
  .an-kpi { padding: 1.1rem; }
  .an-kpi p { font-size: .7rem; }
  .an-kpi strong { font-size: 1.65rem; }
  .an-kpi > span { font-size: .6rem; line-height: 1.5; }
  .an-panel-heading { padding: 1.2rem 1rem; gap: .5rem; }
  .an-chart-toolbar { padding-inline: 1rem; gap: .7rem; }
  .an-range button { padding-inline: .4rem; }
  .an-chart-bottom { padding: .9rem 1rem; font-size: .58rem; }
  .an-main-chart .an-plot { height: 270px; }
  .an-section-title > span { display: none; }
  .an-ranking { min-width: 400px; }
  .an-footnote { flex-direction: column; }
}
