#panel-research { padding-block:18px 36px; }
#research-root { --wb-ink:#182322; --wb-muted:#526360; --wb-accent:#08766c; --wb-green:#087548; --wb-blue:#53ded0; --wb-line:#c9d4d1; --wb-surface:#e6ece9; --wb-dark:#172220; --wb-citron:#e5ed7b; color:var(--wb-ink); min-width:0; }
#research-root :is(button,input,select) { font:inherit; }
#research-root :is(button,input,select):focus-visible { outline:2px solid var(--wb-accent); outline-offset:3px; }
.wb-workbar { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:16px; border-bottom:1px solid var(--wb-line); }
.wb-actions { display:flex; gap:6px; flex-shrink:0; }
.wb-icon-button { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; flex:0 0 40px; border:1px solid var(--wb-line); border-radius:4px; padding:0; background:#fff; color:var(--wb-muted); }
.wb-icon-button:hover:not(:disabled) { background:var(--wb-surface); color:var(--wb-accent); }
.wb-icon-button[aria-expanded=true] { background:#f6eaf0; border-color:#d9b6c3; color:var(--wb-accent); }
.wb-company-menu { position:relative; flex:0 1 440px; min-width:0; }
.wb-company-menu>summary { display:flex; align-items:center; gap:10px; padding:8px 12px; border:1px solid var(--wb-line); border-radius:4px; min-height:44px; list-style:none; font-size:12px; }
.wb-company-menu>summary::-webkit-details-marker { display:none; }
.wb-company-menu>summary>span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; min-width:0; }
.wb-company-menu>summary>.lucide:first-child { color:var(--wb-accent); }
.wb-company-menu>summary>.lucide:last-child { width:14px; height:14px; }
.wb-company-popup { position:absolute; top:calc(100% + 6px); inset-inline-start:0; width:min(440px,calc(100vw - 28px)); z-index:20; background:#fff; border:1px solid var(--wb-line); border-radius:4px; box-shadow:0 8px 24px #26262c14; padding:12px; }
.wb-company-popup input[type=search] { height:42px; border-color:var(--wb-line); }
.wb-company-popup select { height:210px; padding:4px; border-color:var(--wb-line); font-size:12px; }
.wb-company-popup option { padding:8px; }
.wb-check { display:flex; align-items:center; gap:7px; font-size:12px; padding-top:10px; white-space:nowrap; }
.wb-check input { width:17px; min-height:17px; height:17px; margin:0; accent-color:var(--wb-accent); }
.wb-catalog-count { color:var(--wb-muted); font-size:11px; padding:8px 0; }
.wb-identity { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 0 14px; }
.wb-company-name { min-width:0; padding-inline-start:16px; border-inline-start:3px solid var(--wb-accent); }
.wb-identity h1 { font-size:27px; line-height:1.5; font-weight:650; color:var(--wb-ink); }
.wb-company-meta { font-size:11px; color:var(--wb-muted); margin-top:3px; }
.wb-identity-meta { display:flex; flex-direction:column; align-items:flex-end; gap:5px; }
.wb-price-empty,.wb-snapshot { color:var(--wb-muted); font-size:10px; }
.wb-price { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:4px 10px; align-items:center; font-size:11px; }
.wb-price>.wb-number { color:var(--wb-ink); font-size:23px; font-weight:700; }
.wb-price>span,.wb-price small { color:var(--wb-muted); }
.wb-price small { flex-basis:100%; text-align:end; }
.wb-coverage { margin-block:0 16px; border-bottom:1px solid var(--wb-line); font-size:12px; line-height:1.8; }
.wb-coverage>summary { display:flex; align-items:center; gap:8px; min-height:48px; padding-block:6px; list-style:none; cursor:pointer; }
.wb-coverage>summary::-webkit-details-marker { display:none; }
.wb-coverage>summary:focus-visible { outline:2px solid var(--wb-accent); outline-offset:2px; }
.wb-coverage>summary>.lucide { width:16px; height:16px; flex:0 0 16px; color:var(--wb-muted); }
.wb-coverage-title { flex:1; min-width:0; font-weight:650; }
.wb-coverage-status { color:var(--wb-ink); background:var(--wb-citron); padding:0 6px; flex-shrink:0; font-size:11px; }
.wb-coverage[open]>summary>.lucide:last-child { transform:rotate(180deg); }
.wb-coverage-body { padding-block:4px 16px; overflow-wrap:anywhere; }
.wb-coverage-body p { margin:0; }
.wb-coverage-note,.wb-coverage-snapshot { color:var(--wb-muted); }
.wb-coverage-snapshot { display:flex; flex-wrap:wrap; gap:0 8px; margin-block:8px 12px!important; font-size:11px; }
.wb-coverage time { display:inline-block; direction:ltr; unicode-bidi:isolate; }
.wb-coverage-sections { margin:0; }
.wb-coverage-sections>div { display:grid; grid-template-columns:minmax(120px,1fr) minmax(0,2fr); gap:4px 16px; padding-block:10px; border-top:1px solid var(--wb-line); }
.wb-coverage-sections dt { font-weight:600; }
.wb-coverage-sections dd { min-width:0; margin:0; }
.wb-coverage-periods { display:block; }
.wb-coverage-range,.wb-coverage-kinds { display:flex; flex-wrap:wrap; gap:0 14px; color:var(--wb-muted); font-size:11px; }
.wb-coverage-range>span { display:inline-flex; flex-wrap:wrap; gap:0 5px; }
.wb-coverage-comparisons { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; border-block:1px solid var(--wb-line); margin-block:0 10px; padding-block:12px; }
.wb-coverage-comparisons dt { color:var(--wb-muted); }
.wb-coverage-comparisons dd { display:flex; flex-wrap:wrap; align-items:baseline; gap:0 6px; margin:2px 0 0; }
.wb-coverage-comparisons .wb-number { font-size:18px; font-weight:600; }
.wb-coverage-comparisons dd>span { color:var(--wb-muted); font-size:11px; }
.wb-coverage-gaps { display:flex; align-items:baseline; gap:8px 12px; margin-top:12px; }
.wb-coverage-gaps strong { font-weight:600; flex-shrink:0; }
.wb-coverage-gaps ul { display:flex; flex-wrap:wrap; gap:3px 18px; list-style:disc; padding-inline-start:16px; margin:0; color:var(--wb-muted); }
@media(max-width:700px) {
  .wb-coverage { margin-bottom:12px; }
  .wb-coverage>summary { gap:6px; }
  .wb-coverage-sections>div { grid-template-columns:minmax(0,1fr); gap:2px; }
  .wb-coverage-comparisons { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .wb-coverage-gaps { display:block; }
  .wb-coverage-gaps ul { margin-top:4px; }
}
.wb-tabs { display:flex; gap:32px; border-bottom:1px solid var(--wb-line); overflow-x:auto; scrollbar-width:thin; }
.wb-tabs button { flex:0 0 auto; padding:12px 0; min-height:46px; border:0; border-bottom:3px solid transparent; background:transparent; color:var(--wb-muted); font-size:13px; }
.wb-tabs button[aria-selected=true] { color:var(--wb-accent); border-bottom-color:var(--wb-accent); font-weight:650; }
#wb-financial-panel { padding:0; min-width:0; }
.wb-statement-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 18px; padding:16px 0 12px; }
.wb-statement-heading h2 { font-size:18px; font-weight:650; }
.wb-statement-unit { color:var(--wb-muted); font-size:11px; }
.wb-filters { display:flex; flex-wrap:wrap; align-items:end; gap:12px; padding-bottom:18px; }
.wb-period-modes { display:flex; flex-wrap:wrap; align-items:center; gap:3px; padding:3px; min-height:40px; background:var(--wb-surface); border:1px solid var(--wb-line); border-radius:4px; margin-inline-end:auto; }
.wb-period-modes button { border:0; background:transparent; color:var(--wb-muted); font-size:12px; min-height:34px; padding:5px 14px; border-radius:2px; }
.wb-period-modes button[aria-pressed=true] { background:var(--wb-accent); color:#fff; }
.wb-field { display:grid; gap:4px; flex:0 1 156px; min-width:0; }
.wb-field>span { color:var(--wb-muted); font-size:10px; }
.wb-field select { min-width:0; height:40px; min-height:40px; padding:6px 10px; border-color:var(--wb-line); color:var(--wb-ink); font-size:12px; }
.wb-number { font-family:Arial,sans-serif; font-variant-numeric:tabular-nums; white-space:nowrap; }
#research-root .wb-positive { color:var(--wb-green); }
#research-root .wb-negative { color:#b63443; }
.wb-section-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 16px; }
.wb-section-head h2 { font-size:14px; font-weight:600; color:var(--wb-ink); }
.wb-section-head>select { width:210px; min-width:0; min-height:38px; height:38px; border-color:var(--wb-line); font-size:12px; padding:6px 10px; }
.wb-details>.wb-section-head { padding:0 0 10px; }
.wb-count { font-size:11px; color:var(--wb-muted); }
.wb-statement-tools { display:flex; align-items:center; gap:6px; min-width:0; }
.wb-statement-tools .wb-check { padding:0; margin-inline-end:4px; font-size:11px; }
.wb-statement-tools select { width:auto; max-width:170px; min-height:36px; height:36px; padding:4px 8px; font-size:11px; border-color:var(--wb-line); }
.wb-statement-tools .wb-icon-button { height:36px; width:36px; flex-basis:36px; }
.wb-table-scroll { position:relative; width:100%; max-width:100%; max-height:650px; overflow:auto; border:1px solid var(--wb-line); overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#c6bcc1 var(--wb-surface); }
.wb-table { border-collapse:separate; border-spacing:0; width:max-content; min-width:100%; table-layout:fixed; font-size:12px; }
.wb-table :is(th,td) { text-align:center; border:0; border-bottom:1px solid var(--wb-line); padding:15px 12px; width:148px; min-width:148px; white-space:nowrap; background:#fff; }
.wb-table thead th { position:sticky; top:0; z-index:3; height:84px; color:var(--wb-ink); background:var(--wb-surface); font-weight:500; }
.wb-table tbody th { font-weight:400; }
.wb-table :is(th,td):first-child { position:sticky; inset-inline-start:0; z-index:2; width:230px; min-width:230px; max-width:230px; text-align:start; white-space:normal; border-inline-end:1px solid var(--wb-line); }
.wb-table thead th:first-child { z-index:4; }
.wb-table td { color:var(--wb-ink); font-size:14px; font-weight:400; }
.wb-table tbody tr:nth-child(even)>* { background:#fafafb; }
.wb-table tbody tr:hover>* { background:#f6f0f3; }
.wb-table .wb-total-row>* { font-weight:650; }
.wb-table .wb-section-row>* { border-top:2px solid #d5d4da; }
.wb-table tbody tr:last-child>* { border-bottom:0; }
.wb-table small { display:block; color:var(--wb-muted); font-size:10px; font-weight:400; }
.wb-table tbody tr>.is-selected { background:#fbf4f6; }
.wb-table thead th.is-selected { background:#f4e8ed; box-shadow:inset 0 3px var(--wb-accent); }
.wb-period-link { display:block; width:100%; padding:0; min-height:27px; border:0; background:transparent; color:inherit; text-align:center; font-size:12px; font-weight:600; white-space:normal; }
.wb-period-link:hover { color:var(--wb-accent); }
.wb-table th .wb-tooltip { margin-inline-start:3px; }
.wb-table thead .wb-tooltip { position:absolute; inset-inline-end:3px; bottom:4px; }
.wb-cell-growth { display:flex!important; justify-content:center; align-items:center; gap:4px; margin-top:4px; }
.wb-cell-growth .lucide { width:12px; height:12px; }
.wb-table-foot { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 16px; color:var(--wb-muted); font-size:10px; padding-top:10px; }
.wb-trend { padding:28px 0 10px; }
.wb-chart { margin:14px 0 0; min-width:0; border-bottom:1px solid var(--wb-line); }
.wb-chart figcaption { display:flex; flex-wrap:wrap; gap:4px 12px; font-size:10px; color:var(--wb-muted); padding-bottom:6px; }
.wb-chart figcaption bdi { margin-inline-start:auto; }
.wb-chart-svg { display:block; width:100%; max-width:1000px; height:auto; margin-inline:auto; direction:ltr; }
.wb-chart-grid { stroke:var(--wb-line); stroke-width:1; }
.wb-chart-label { fill:var(--wb-muted); font:11px Arial,sans-serif; }
.wb-chart-line { stroke:var(--wb-series-color,var(--wb-blue)); stroke-width:2; }
.wb-chart-point { fill:var(--wb-series-color,var(--wb-blue)); stroke:#fff; stroke-width:1.5; cursor:pointer; }
.wb-series-menu { position:relative; width:fit-content; margin-bottom:4px; }
.wb-series-menu>summary { display:flex; align-items:center; gap:5px; min-height:24px; list-style:none; color:var(--wb-muted); font-size:10px; }
.wb-series-menu>summary::-webkit-details-marker { display:none; }
.wb-series-menu>summary>.lucide { width:12px; height:12px; }
.wb-series-legend { position:absolute; top:100%; inset-inline-start:0; z-index:8; width:min(320px,calc(100vw - 28px)); max-height:160px; overflow:auto; display:flex; flex-wrap:wrap; gap:3px 12px; padding:8px 10px; background:#fff; border:1px solid var(--wb-line); border-radius:4px; color:var(--wb-muted); font-size:10px; }
.wb-series-key { display:inline-flex; align-items:center; gap:5px; }
.wb-series-swatch { width:12px; height:3px; }
.wb-chart-point.is-selected { fill:var(--wb-accent); stroke:var(--wb-accent); stroke-width:3; }
.wb-chart-point:is(:focus,:hover) { outline:none; stroke:var(--wb-ink); stroke-width:3; }
.wb-chart-readout { display:flex; flex-wrap:wrap; align-items:center; gap:4px 14px; min-height:52px; padding:8px 0; font-size:11px; }
.wb-chart-readout>.wb-number { color:var(--wb-ink); font-size:17px; font-weight:700; }
.wb-chart-readout>span { color:var(--wb-muted); }
.wb-tooltip { display:inline-flex; vertical-align:middle; flex:0 0 auto; }
.wb-info { display:inline-flex; align-items:center; justify-content:center; width:24px; min-height:24px; padding:4px; background:transparent; color:var(--wb-muted); border:0; }
.wb-info .lucide { width:13px; height:13px; }
.wb-tooltip-body { position:fixed; z-index:50; width:min(280px,calc(100vw - 24px)); padding:9px 12px; background:#fff; border:1px solid var(--wb-line); border-radius:4px; box-shadow:0 5px 18px #26262c14; font-size:11px; line-height:1.8; font-weight:400; color:var(--wb-ink); white-space:normal; }
.wb-unavailable { padding:30px 0; color:var(--wb-muted); font-size:12px; }
.wb-loading { display:flex; align-items:center; gap:10px; padding:40px 0; color:var(--wb-accent); font-size:12px; }
.wb-error { color:#b63443; font-size:12px; padding:10px 0; }
.directory-company a { color:var(--ink); text-decoration:none; }
.directory-company a:hover { color:var(--blue); text-decoration:underline; }
.wb-profile-section { padding:24px 0; border-bottom:1px solid var(--wb-line); }
.wb-profile-section h2 { font-size:15px; font-weight:650; margin-bottom:18px; }
.wb-general,.wb-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; margin:0; }
.wb-general { grid-template-columns:2fr 1fr 1fr; }
.wb-general dt,.wb-fact dt { display:flex; align-items:center; color:var(--wb-muted); font-size:12px; min-height:28px; }
.wb-general dd,.wb-fact dd { margin:6px 0 0; }
.wb-general dd { font-size:14px; font-weight:600; }
.wb-fact { min-width:0; padding-inline-end:16px; border-inline-end:1px solid var(--wb-line); }
.wb-fact:last-child { border:0; }
.wb-fact dd { display:flex; flex-wrap:wrap; align-items:baseline; gap:5px; }
.wb-fact .wb-number { font-size:24px; font-weight:650; }
.wb-fact-unit { color:var(--wb-muted); font-size:10px; }
.wb-fact small { display:block; flex:1 1 100%; font-size:10px; color:var(--wb-muted); margin-top:5px; line-height:1.8; }
.wb-return-scroll { overflow:auto; max-height:300px; scrollbar-width:thin; }
.wb-return-table { border-collapse:collapse; width:100%; font-size:12px; }
.wb-return-table :is(th,td) { text-align:start; padding:12px; border-bottom:1px solid var(--wb-line); }
.wb-return-table thead th { color:var(--wb-muted); background:var(--wb-surface); position:sticky; top:0; z-index:1; }
.wb-return-table tbody th { font-weight:400; }
.wb-return-table td:nth-child(2) { font-size:15px; }
.wb-return-table td:last-child { font-size:11px; color:var(--wb-muted); }
.wb-return-table small { display:block; font-size:10px; color:var(--wb-muted); }
.wb-profile-links { display:flex; flex-wrap:wrap; gap:28px; padding:20px 0; }
.wb-profile-link { display:flex; align-items:center; gap:10px; padding:8px 0; background:transparent; border:0; color:var(--wb-accent); font-size:12px; }
.wb-growth-controls { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:14px; margin-bottom:18px; }
.wb-growth-controls .wb-period-modes { margin:0; }
.wb-growth-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-block:1px solid var(--wb-line); padding:20px 0; margin-bottom:22px; }
.wb-growth-stat { display:grid; grid-template-columns:1fr auto; gap:6px 16px; padding-inline:22px; }
.wb-growth-stat:first-child { border-inline-end:1px solid var(--wb-line); }
.wb-growth-stat>span { font-size:13px; align-self:center; }
.wb-growth-stat>.wb-number { grid-row:span 2; font-size:28px; font-weight:650; align-self:center; }
.wb-growth-stat small { color:var(--wb-muted); font-size:10px; }
.wb-growth-charts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.wb-growth-figure { margin:0; min-width:0; }
.wb-growth-figure figcaption { display:flex; flex-wrap:wrap; justify-content:space-between; gap:4px 12px; padding:8px 0; }
.wb-growth-figure figcaption strong { font-size:13px; }
.wb-growth-figure figcaption span { font-size:10px; color:var(--wb-muted); }
.wb-growth-scroll { max-width:100%; overflow:auto; direction:ltr; scrollbar-width:thin; }
.wb-growth-scroll svg { display:block; min-width:100%; }
.wb-growth-bar { cursor:pointer; }
.wb-growth-bar.is-positive { fill:var(--wb-green); }
.wb-growth-bar.is-negative { fill:#b63443; }
.wb-growth-bar.is-missing { fill:#a6a6af; }
.wb-growth-bar:is(:hover,:focus) { stroke:var(--wb-ink); stroke-width:2; outline:none; }
.wb-growth-zero { stroke:#85858f; stroke-width:1; }
.wb-growth-figure .wb-chart-readout { border-bottom:1px solid var(--wb-line); }
.wb-heat { padding:22px 0; }
.wb-heat-table { border-spacing:5px; width:100%; table-layout:fixed; margin:12px 0 8px; }
.wb-heat-table th { font-weight:500; font-size:11px; color:var(--wb-muted); padding:10px 2px; }
.wb-heat-table :is(th,td):first-child { width:60px; }
.wb-heat-table td { text-align:center; padding:16px 4px; border-radius:3px; font-size:14px; background:var(--wb-surface); }
.wb-growth-note { font-size:10px; color:var(--wb-muted); }
.wb-growth-basis { flex:1 1 100%; font-size:10px; color:var(--wb-muted); line-height:1.7; }
.wb-tooltip-body { max-height:min(300px,60vh); overflow:auto; }
@media(max-width:700px) {
  .wb-general,.wb-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 14px; }
  .wb-general>div:first-child { grid-column:1/-1; }
  .wb-general dt,.wb-fact dt { font-size:11px; }
  .wb-fact { padding-inline-end:8px; }
  .wb-fact:nth-child(even) { border:0; }
  .wb-fact .wb-number { font-size:21px; }
  .wb-fact[data-metric$="shares"] .wb-number { font-size:18px; }
  .wb-fact small { font-size:9px; }
  .wb-profile-section { padding:20px 0; }
  .wb-return-table :is(th,td) { padding:10px 6px; }
  .wb-return-table tbody th { font-size:10px; }
  .wb-return-table td:last-child { font-size:9px; min-width:110px; }
  .wb-profile-links { gap:14px; }
  .wb-growth-charts { grid-template-columns:minmax(0,1fr); gap:16px; }
  .wb-growth-summary { gap:12px; padding:14px 0; }
  .wb-growth-stat { display:flex; flex-direction:column; gap:5px; padding-inline:4px; }
  .wb-growth-stat>span,.wb-growth-stat>.wb-number { align-self:flex-start; }
  .wb-growth-stat>span { font-size:11px; }
  .wb-growth-stat>.wb-number { font-size:24px; }
  .wb-heat-table { border-spacing:3px; }
  .wb-heat-table td { padding:14px 2px; font-size:11px; }
  .wb-heat-table :is(th,td):first-child { width:38px; }
  .wb-workbar { gap:8px; padding-bottom:12px; }
  .wb-company-menu { flex:1; }
  .wb-company-menu>summary { font-size:11px; padding:7px 8px; gap:6px; }
  .wb-actions { gap:4px; }
  .wb-actions .wb-icon-button { width:36px; flex-basis:36px; }
  .wb-identity { padding:14px 0 10px; align-items:flex-start; flex-direction:column; gap:6px; }
  .wb-company-name { padding-inline-start:11px; }
  .wb-identity h1 { font-size:22px; }
  .wb-company-meta { font-size:10px; }
  .wb-identity-meta { flex-direction:row; align-items:center; flex-wrap:wrap; gap:5px 12px; }
  .wb-price { justify-content:flex-start; }
  .wb-price small { text-align:start; }
  .wb-snapshot { font-size:9px; }
  .wb-tabs { gap:24px; }
  .wb-tabs button { font-size:12px; padding:9px 0; }
  .wb-statement-heading { padding:18px 0 12px; }
  .wb-statement-heading h2 { font-size:16px; }
  .wb-statement-unit { font-size:10px; }
  .wb-filters { gap:10px; padding-bottom:14px; }
  .wb-period-modes { flex:1 1 100%; margin:0; }
  .wb-period-modes button { flex:1; padding:5px 8px; font-size:11px; }
  .wb-field { flex:1 1 calc(50% - 6px); }
  .wb-field select { font-size:11px; }
  .wb-details>.wb-section-head { gap:8px; }
  .wb-statement-tools { flex-wrap:wrap; gap:4px; }
  .wb-statement-tools select { max-width:125px; }
  .wb-statement-tools .wb-check { font-size:10px; }
  .wb-count { font-size:10px; }
  .wb-table :is(th,td) { padding:12px 8px; width:116px; min-width:116px; }
  .wb-table :is(th,td):first-child { width:138px; min-width:138px; max-width:138px; font-size:11px; }
  .wb-table td { font-size:13px; }
  .wb-table thead th { height:78px; }
  .wb-period-link { font-size:11px; }
  .wb-table small { font-size:9px; }
  .wb-section-head>select { width:160px; font-size:11px; }
  .wb-chart-readout>span { flex-basis:100%; font-size:10px; }
}
/* Keep the private workspace shell consistent across its account and research views. */
body.analyst-portal[data-auth-state=authenticated] { background:#e8eeeb; --blue:#08766c; --line:#c9d4d1; --surface:#e0e8e4; }
body.analyst-portal[data-auth-state=authenticated] .site-header { position:relative; z-index:30; background:#172220; border-color:#36443f; color:#eef4f1; }
body.analyst-portal[data-auth-state=authenticated] .header-inner { min-height:68px; gap:20px; }
body.analyst-portal[data-auth-state=authenticated] .site-header :is(.brand,.portal-name,.account-toggle,#account-name,.icon-button) { color:#eef4f1; }
body.analyst-portal[data-auth-state=authenticated] .site-header .brand { text-transform:lowercase; font-size:30px; }
body.analyst-portal[data-auth-state=authenticated] .site-header .brand [lang=en]::after { color:#e5ed7b; }
body.analyst-portal[data-auth-state=authenticated] .portal-name { border-color:#53625c; color:#c3d1ca; font-size:12px; }
body.analyst-portal[data-auth-state=authenticated] .site-header :is(.account-toggle,.icon-button) { border-color:#53625c; }
body.analyst-portal[data-auth-state=authenticated] .site-header :is(.account-toggle,.icon-button):hover { background:#2b3a33; color:#eef4f1; }
body.analyst-portal[data-auth-state=authenticated] .account-avatar { background:#2b3a33; color:#e5ed7b; }
body.analyst-portal[data-auth-state=authenticated] .site-header :focus-visible { outline-color:#e5ed7b; }
body.analyst-portal[data-auth-state=authenticated] .account-menu { color:#182322; background:#f3f6f4; }
body.analyst-portal[data-auth-state=authenticated] .account-menu button:hover { background:#dce9e2; color:#07574f; }
body.analyst-portal[data-auth-state=authenticated] .account-menu :focus-visible { outline-color:#08766c; }
body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs { position:relative; isolation:isolate; min-height:54px; gap:28px; border:0; }
/* Extend the navigation band without widening the document or moving its controls. */
body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs::before { content:""; position:absolute; inset:0; z-index:-1; background:#172220; box-shadow:0 0 0 100vmax #172220; clip-path:inset(0 -100vmax); }
body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs button { min-height:54px; padding:12px 4px 9px; color:#b9c9c0; font-size:12px; }
body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs button[aria-selected=true] { color:#e5ed7b; border-bottom-color:#e5ed7b; }
body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs button:hover { color:#f3f7f0; }
body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs button:focus-visible { outline-color:#e5ed7b; outline-offset:-4px; }
#research-root { font-size:14px; }
#wb-financial-panel,#wb-statement-content { padding:0; }
#research-root :is(button,select,input) { letter-spacing:0; }
.wb-layout { display:grid; grid-template-columns:186px minmax(0,1fr); gap:26px; direction:inherit; align-items:start; }
.wb-main { min-width:0; }
.wb-cagr-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:16px 0; }
.wb-cagr-summary>div { border-top:1px solid var(--wb-line); padding-top:14px; }
.wb-cagr-summary dt { font-size:13px; color:var(--wb-muted); }
.wb-cagr-summary dd { margin:6px 0 0; font-size:22px; }
.wb-cagr-summary small { display:block; font-size:12px; line-height:1.7; color:var(--wb-muted); }
.wb-navigation { border-inline-end:1px solid var(--wb-line); padding:20px 0; position:sticky; top:12px; min-width:0; }
.wb-navigation>summary { display:none; list-style:none; }
.wb-navigation>summary::-webkit-details-marker { display:none; }
.wb-navigation .wb-tabs { display:flex; flex-direction:column; gap:4px; overflow:visible; border:0; }
.wb-navigation .wb-tabs button { display:flex; align-items:center; gap:12px; width:100%; padding:14px 12px; min-height:52px; color:var(--wb-muted); text-align:start; border:0; border-inline-start:3px solid transparent; border-radius:0; font-size:13px; white-space:normal; }
.wb-navigation .wb-tabs button>span { min-width:0; }
.wb-navigation .wb-tabs button .lucide { width:19px; height:19px; flex:0 0 19px; }
.wb-navigation .wb-tabs button[aria-selected=true] { color:var(--wb-ink); background:#d9e4df; border-inline-start-color:#08766c; font-weight:700; }
.wb-workbar { border-bottom:1px solid var(--wb-line); padding-block:0 18px; }
.wb-company-menu { flex-basis:420px; }
.wb-company-menu>summary { background:#f4f7f5; font-size:13px; min-height:44px; border-color:#afc3b8; }
.wb-company-menu[open]>summary { border-color:#08766c; }
.wb-company-popup { background:#f4f7f5; }
.wb-company-popup :is(input,select) { font-size:14px; }
.wb-icon-button { background:#eef3ef; color:var(--wb-ink); min-width:40px; }
.wb-actions .wb-icon-button { width:44px; height:44px; flex-basis:44px; }
.wb-icon-button[aria-expanded=true] { background:#d3e9df; color:#07574f; border-color:#7bb3a0; }
.wb-identity { padding-block:20px; align-items:center; border-bottom:1px solid var(--wb-line); margin-bottom:18px; }
.wb-company-name { border:0; padding:0; }
.wb-identity h1 { font-size:25px; font-weight:700; line-height:1.5; overflow-wrap:anywhere; }
.wb-company-meta { font-size:12px; }
.wb-identity-meta { border-inline-start:1px solid var(--wb-line); padding-inline-start:20px; text-align:end; }
.wb-snapshot,.wb-price-empty { font-size:11px; line-height:1.7; }
.wb-filters { gap:12px; padding-bottom:18px; }
.wb-period-modes { background:#dfe7e2; }
.wb-period-modes button { min-height:38px; font-size:13px; }
.wb-period-modes button[aria-pressed=true] { background:#172220; }
.wb-field>span { font-size:11px; }
.wb-field select { font-size:13px; background:#f2f6f3; }
.wb-statement-heading { padding-top:4px; }
.wb-statement-heading h2 { font-size:20px; }
.wb-statement-tabs { display:flex; border-bottom:1px solid var(--wb-line); margin-bottom:18px; gap:28px; }
.wb-statement-tabs button { flex:1; padding:12px 4px; min-height:48px; border:0; border-bottom:3px solid transparent; background:transparent; color:var(--wb-muted); border-radius:0; font-size:14px; }
.wb-statement-tabs button[aria-selected=true] { color:var(--wb-ink); border-bottom-color:#0b9e8c; font-weight:700; }
.wb-overview-period { font-size:12px; color:var(--wb-muted); padding-bottom:10px; }
.wb-metric-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; padding:20px 0; margin:0 0 26px; border-block:1px solid var(--wb-line); }
.wb-metric-strip>div { padding:0 16px; border-inline-end:1px solid var(--wb-line); min-width:0; }
.wb-metric-strip>div:first-child { padding-inline-start:0; }
.wb-metric-strip>div:last-child { border:0; }
.wb-metric-strip dt { font-size:12px; color:var(--wb-muted); min-height:38px; }
.wb-metric-strip dd { margin:0; font-size:27px; font-weight:700; }
.wb-metric-strip small { display:block; font-size:11px; margin-top:5px; }
.wb-financial-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-block:16px 24px; }
.wb-financial-figure { margin:0; padding:20px 16px 8px; border-radius:4px; background:#172220; color:#edf5f0; min-width:0; overflow:hidden; --wb-line:#3b4a43; --wb-muted:#b3c4bb; --wb-blue:#53ded0; }
.wb-financial-figure figcaption { display:flex; align-items:start; justify-content:space-between; gap:12px; }
.wb-financial-figure figcaption strong { font-size:16px; font-weight:650; }
.wb-financial-figure figcaption small { display:block; color:#b9c8c1; font-size:11px; margin-top:4px; }
.wb-figure-value { text-align:end; }
.wb-figure-value>.wb-number { font-size:22px; font-weight:700; }
.wb-cagr { display:flex; align-items:baseline; gap:8px; padding-top:12px; font:12px Arial,sans-serif; direction:ltr; justify-content:flex-end; }
.wb-cagr>.wb-number { color:#e5ed7b; font-size:20px; font-weight:700; }
.wb-value-svg,.wb-yoy-svg { display:block; width:100%; height:auto; direction:ltr; }
.wb-value-svg { margin-top:12px; }
.wb-financial-figure .wb-chart-label { fill:#b9c8c1; font:11px Arial,sans-serif; }
.wb-financial-figure .wb-chart-grid { stroke:#35463e; stroke-dasharray:3 3; }
.wb-financial-figure .wb-chart-line { stroke:#53ded0; stroke-width:2.5; }
.wb-value-point { fill:#53ded0; stroke:#172220; stroke-width:1.5; cursor:pointer; }
.wb-value-point:is(:focus,:hover) { fill:#e5ed7b; stroke:#fff; stroke-width:2; outline:none; }
.wb-cagr-path { stroke:#e5ed7b; stroke-width:2; stroke-dasharray:7 5; }
.wb-value-legend { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 18px; font-size:10px; padding:4px 0 10px; }
.wb-value-legend>span { display:flex; align-items:center; gap:6px; }
.wb-value-legend>span:before { content:""; display:block; width:22px; border-top:2px solid #53ded0; }
.wb-value-legend>.wb-legend-cagr:before { border-top:2px dashed #e5ed7b; }
.wb-figure-readout { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 12px; min-height:55px; padding:10px 0; border-top:1px solid #3b4a43; font-size:12px; }
.wb-figure-readout>.wb-number { font-size:18px; font-weight:650; }
.wb-figure-readout>small { width:100%; font-size:10px; color:#b9c8c1; }
.wb-yoy-title { border-top:1px solid #3b4a43; padding:12px 0 0; font-size:12px; }
.wb-financial-figure .wb-growth-bar.is-positive { fill:#72d991; }
.wb-financial-figure .wb-growth-bar.is-negative { fill:#ff9290; }
.wb-financial-figure .wb-growth-bar.is-missing { fill:#85958b; }
.wb-financial-figure .wb-growth-zero { stroke:#9bb0a3; }
.wb-financial-figure .wb-growth-bar:is(:focus,:hover) { stroke:#fff; }
.wb-financial-figure .wb-growth-note { display:block; color:#c1cec7; padding:16px 0; font-size:12px; }
.wb-financial-figure .wb-unavailable { color:#b9c8c1; }
.wb-cagr-section { border-block:1px solid var(--wb-line); padding:20px 0; margin:20px 0; }
.wb-cagr-section h2 { font-size:17px; margin-bottom:8px; }
.wb-cagr-section .wb-growth-note { font-size:12px; }
.wb-growth-controls .wb-field { min-width:210px; }
.wb-growth-controls .wb-field select { width:100%; }
.wb-overview-history { padding-block:10px 20px; }
.wb-summary-table { width:100%; border-collapse:collapse; margin-top:14px; table-layout:fixed; }
.wb-summary-table :is(th,td) { text-align:start; padding:14px 10px; border-bottom:1px solid var(--wb-line); font-size:13px; }
.wb-summary-table thead th { font-weight:500; color:var(--wb-muted); font-size:12px; }
.wb-summary-table tbody th { font-weight:400; }
.wb-summary-table td { font-size:16px; }
.wb-table-scroll { border:0; border-bottom:1px solid var(--wb-line); scrollbar-color:#8daca0 #dce6e0; }
.wb-table :is(th,td) { padding:15px 12px; background:#f0f5f1; }
.wb-table thead th { background:#172220; color:#eff6f0; height:82px; }
.wb-table thead :is(small,.wb-info) { color:#b6c8bc; }
.wb-table thead th.is-selected { background:#243a31; box-shadow:inset 0 3px #70d9c0; }
.wb-table tbody tr:nth-child(even)>* { background:#e7eeea; }
.wb-table tbody tr>.is-selected { background:#dcebe3; }
.wb-table tbody tr:hover>* { background:#d6e9df; }
.wb-table :is(th,td):first-child { width:230px; min-width:230px; max-width:230px; }
.wb-row-chart { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; padding:5px; margin-inline-start:4px; border:0; background:transparent; color:#08766c; vertical-align:middle; }
.wb-row-chart .lucide { width:15px; height:15px; }
.wb-table .wb-tooltip { display:inline-flex; }
.wb-table td.wb-negative { color:var(--wb-ink)!important; }
.wb-chart { padding:20px; background:#172220; border-radius:4px; --wb-ink:#f0f5f1; --wb-line:#3b4a43; --wb-muted:#b3c4bb; --wb-blue:#53ded0; }
.wb-chart .wb-chart-point { fill:#53ded0; stroke:#172220; }
.wb-chart .wb-chart-line { stroke:#53ded0; }
.wb-chart .wb-chart-point.is-selected { fill:#e5ed7b; stroke:#e5ed7b; }
.wb-chart .wb-chart-readout>.wb-number { color:#f0f5f1; }
.wb-profile-section h2 { font-size:18px; }
.wb-general dt,.wb-fact dt { font-size:13px; }
.wb-fact small { font-size:11px; }
.wb-return-table :is(th,td) { font-size:13px; }
.wb-return-table thead th { background:#d9e4dc; }
.wb-supplementary>h2 { font-size:20px; margin-block:4px 24px; }
.wb-empty-section { display:flex; align-items:center; gap:20px; padding:40px 0; color:var(--wb-muted); border-block:1px solid var(--wb-line); }
.wb-empty-section .lucide { width:32px; height:32px; flex-shrink:0; }
.wb-event-list { list-style:none; padding:0; }
.wb-event-list li { display:grid; grid-template-columns:24px 1fr auto; align-items:center; gap:8px 14px; border-bottom:1px solid var(--wb-line); padding:20px 0; }
.wb-event-list li>small { grid-column:2/-1; color:var(--wb-muted); font-size:12px; }
.wb-event-list li>span { color:var(--wb-muted); font-size:12px; }
@media(min-width:901px) { .wb-navigation:not([open])>.wb-tabs { display:flex; } }
@media(max-width:1100px) {
  .wb-layout { grid-template-columns:156px minmax(0,1fr); gap:18px; }
  .wb-navigation .wb-tabs button { padding-inline:8px; gap:8px; font-size:12px; }
  .wb-metric-strip dd { font-size:23px; }
  .wb-financial-grid { gap:12px; }
  .wb-financial-figure { padding-inline:12px; }
}
@media(max-width:900px) {
  .wb-layout { display:flex; flex-direction:column; gap:0; direction:inherit; }
  .wb-workbar { border-bottom:0; padding-bottom:8px; }
  .wb-navigation { position:relative; padding:0; border:0; width:100%; z-index:10; margin-top:0; }
  .wb-navigation>summary { display:flex; align-items:center; gap:12px; min-height:48px; border-block:1px solid var(--wb-line); font-weight:650; }
  .wb-navigation>summary>span { flex:1; }
  .wb-navigation[open]>.wb-tabs { display:flex; position:absolute; inset-inline:0; top:100%; background:#f0f5f1; padding:8px; border:1px solid var(--wb-line); box-shadow:0 10px 20px #17222018; }
  .wb-navigation:not([open])>.wb-tabs { display:none; }
  .wb-main { width:100%; }
  .wb-identity { padding-block:18px; margin-bottom:18px; }
}
@media(max-width:700px) {
  body.analyst-portal[data-auth-state=authenticated] :is(.container,.header-inner) { width:calc(100% - 24px); }
  body.analyst-portal[data-auth-state=authenticated] .header-inner { min-height:60px; gap:12px; }
  body.analyst-portal[data-auth-state=authenticated] .site-header .brand { font-size:27px; }
  body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; }
  body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs button { flex-direction:column; gap:3px; min-height:62px; padding:9px 2px 7px; font-size:11px; line-height:1.5; text-align:center; }
  body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs .lucide { width:17px; height:17px; flex-basis:17px; }
  #panel-research { padding-top:12px; }
  #research-root { font-size:14px; }
  .wb-workbar { padding-bottom:8px; }
  .wb-company-menu>summary { font-size:13px; min-height:44px; }
  .wb-company-popup { width:min(440px,calc(100vw - 40px)); }
  .wb-identity { align-items:flex-start; gap:5px; padding-block:12px; margin-bottom:10px; }
  .wb-identity h1 { font-size:23px; }
  .wb-company-meta { font-size:12px; }
  .wb-identity-meta { justify-content:space-between; width:100%; border:0; padding:0; text-align:start; }
  .wb-price-empty,.wb-snapshot { font-size:10px; }
  .wb-period-modes button { font-size:12px; min-height:38px; }
  .wb-field select { font-size:13px; height:42px; }
  .wb-metric-strip { grid-template-columns:repeat(2,minmax(0,1fr)); padding:0; margin-bottom:22px; }
  .wb-metric-strip>div { padding:16px 12px!important; border-bottom:1px solid var(--wb-line); }
  .wb-metric-strip>div:nth-child(even) { border-inline-end:0; }
  .wb-metric-strip>div:nth-last-child(-n+2) { border-bottom:0; }
  .wb-metric-strip dt { min-height:32px; font-size:12px; }
  .wb-metric-strip dd { font-size:25px; }
  .wb-metric-strip small { font-size:10px; }
  .wb-financial-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
  .wb-growth-controls .wb-field { min-width:0; width:100%; }
  .wb-financial-figure { padding:18px 14px 8px; }
  .wb-financial-figure figcaption strong { font-size:15px; }
  .wb-figure-value>.wb-number { font-size:21px; }
  .wb-value-legend { font-size:10px; }
  .wb-statement-tabs { gap:6px; margin-bottom:8px; }
  .wb-statement-tabs button { font-size:12px; padding:10px 2px; min-height:48px; }
  .wb-statement-heading h2 { font-size:18px; }
  .wb-details>.wb-section-head { align-items:center; }
  .wb-statement-tools { gap:5px; }
  .wb-statement-tools .wb-icon-button { width:38px; height:40px; }
  .wb-statement-tools .wb-check { font-size:11px; }
  .wb-table { width:100%; min-width:100%; }
  .wb-table :is(th,td) { width:auto; min-width:0; padding:14px 5px; }
  .wb-table :is(th,td):first-child { position:static; width:41%; min-width:0; max-width:none; font-size:12px; }
  .wb-table td { font-size:14px; }
  .wb-table thead th { height:90px; }
  .wb-table tbody th>.wb-tooltip { display:none; }
  .wb-row-chart { width:30px; height:30px; margin-inline-start:0; }
  .wb-table small { font-size:9px; }
  .wb-period-link { font-size:11px; }
  .wb-chart { padding:14px 8px; }
  .wb-summary-table :is(th,td) { padding:12px 5px; font-size:12px; white-space:normal; overflow-wrap:anywhere; }
  .wb-summary-table td { font-size:15px; }
  .wb-profile-section h2 { font-size:17px; }
  .wb-fact .wb-number { font-size:23px; }
  .wb-fact small { font-size:10px; }
  .wb-heat-table td { font-size:12px; }
  .wb-return-table :is(th,td) { font-size:12px; }
  .wb-event-list li { grid-template-columns:20px 1fr; }
  .wb-event-list li>span { grid-column:2; }
}
@media (max-width:700px) {
  body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; overflow:visible; }
  body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs button { display:flex; flex-direction:column; justify-content:center; gap:4px; min-width:0; min-height:68px; padding:8px 2px; font-size:10px; line-height:1.5; white-space:normal; text-align:center; }
  body.analyst-portal[data-auth-state=authenticated] #workspace-shell>.tabs .lucide { width:18px; height:18px; flex:0 0 18px; }
}
