/* Built by app/utils/bundles.py from the files named below. Edit those; never this file. */
/* ==== css/aiq-attio-classic.css ==== */
/* DRAFT (2026-10-25): "Attio + classic shell" (?tbl=attio-classic, js/aiq-attio-classic.js). The Attio draft builds
   sidebar pieces that the old shell already has elsewhere — they go: Ask AI (rail), the Alerts button by search (rail),
   the Tabs section (bottom tab bar), the plan foot, the "open sidebar" button. */
html.at-classic :is(.at-sb-quick, .at-sb-inbox, .at-tabs-sec, .at-sb-fixed, .at-sb-open) { display: none !important; }
html.at-classic #app-sidebar .sb-section-label > i.ph-caret-down { display: none !important; }

/* search at the top of the old sidebar, in the sidebar's own colours */
html.at-classic .at-sb-search { padding: 4px 12px 8px; }
html.at-classic body.sb-collapsed .at-sb-search { display: none; }

/* Help / full screen / theme / account sit in the header row, clear of the rail */
html.at-classic.aiq-shell:not(.is-popout) .at-top-tools { right: calc(var(--sh-rail, 48px) + 12px); }

/* the header row (page name) in the sidebar's navy, like the old top bar (user, 2026-10-25) */
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) :is(.at-pagebar, #scx-head, .ins-top):not(#_) {
  background: var(--sh-bg) !important; border-bottom-color: var(--sh-line) !important; color: var(--sh-ink) !important; }
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) :is(.at-pagebar, #scx-head, .ins-top):not(#_) :is(h1, .at-pb-name, .at-pb-crumb) { color: var(--sh-ink) !important; }
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) .at-pagebar:not(#_) .at-pb-name:has(+ .at-pb-sep),
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) .at-pagebar:not(#_) .at-pb-sep { color: var(--sh-dim) !important; }
html.at-classic .at-top-tools :is(#fullscreen-toggle, #theme-toggle, #aiq-help-btn) { color: var(--sh-dim) !important; }
html.at-classic .at-top-tools :is(#fullscreen-toggle, #theme-toggle, #aiq-help-btn):hover { background: rgba(255,255,255,.08) !important; color: var(--sh-ink) !important; }
/* the rail's account slot sat under the old top bar, which stays collapsed here: the account is in the top-right tools */
html.at-classic #aiq-acct { display: none !important; }
html.at-classic.aiq-shell[data-theme]:root .at-sb-search #nav-global-search:not(#_):not(#_) { background: rgba(255,255,255,.07) !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.10) !important; }
html.at-classic.aiq-shell[data-theme]:root .at-sb-search:not(#_):not(#_) :is(#nav-search-input, #nav-global-search > svg, #nav-cmdk-key) { color: rgba(255,255,255,.72) !important; }
html.at-classic.aiq-shell[data-theme]:root .at-sb-search:not(#_):not(#_) #nav-search-input::placeholder { color: rgba(255,255,255,.72) !important; }
/* small switches inside the header row (Financials Nav / Original | Draft) on the navy */
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) .at-pagebar:not(#_) :is(button, .at-nav-l) { color: var(--sh-dim) !important; background: transparent !important; box-shadow: none !important; }
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) .at-pagebar:not(#_) button:hover { color: var(--sh-ink) !important; }
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) .at-pagebar:not(#_) button.on { background: rgba(255,255,255,.10) !important; color: var(--sh-ink) !important; }
/* the panel's top corners curve under the navy header row, like the bottom ones above the tab bar (user, 2026-10-25).
   The Attio sheet hides the corner masks; the classic script drops that rule, so they're back — moved down to the
   header's bottom edge (49px: 48px row + 1px rule; the header row is sticky, so it never scrolls out from above them). */
html.at-classic.aiq-shell:not(.is-popout) #aiq-corners :is(.tl, .tr, .frame) { top: 49px !important; }
html.at-classic.aiq-shell:is(:not(.is-popout), .is-tab) :is(.at-pagebar, #scx-head, .ins-top):not(#_) { border-bottom-color: var(--sh-bg) !important; }

/* "New + bottom tabs" (?tbl=attio-full-bt): the open tabs live in the bottom bar again, not in the sidebar */
html.at-btabs .at-tabs-sec { display: none !important; }
/* room for the top-right cluster (Help / full screen / theme / account, ~120px) in the header row, so the page's own
   buttons (Ask AI, Report…) sit left of it. A tab's page is an iframe and can't see the parent's cluster. Admin View as
   lives in the account menu (2026-10-25) except when viewing as Signed out, where it joins the cluster (~370px). */
html.at-shell:is(:not(.is-popout), .is-tab) .at-pagebar { padding-right: 140px !important; }
html.at-shell.va-top:is(:not(.is-popout), .is-tab) .at-pagebar { padding-right: 384px !important; }
/* the bar keeps classic's 34px; the sidebar's fixed foot (Pro plan / Upgrade row) shrinks to the same 34px so the two
   line up (user 2026-10-25: "same size as classic and then shrink the pro plan section") */
html.at-btabs.aiq-shell[data-theme]:root #aiq-tabbar:not(#_) { box-shadow: inset 0 1px 0 var(--a-line) !important; }
html.at-btabs.aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab { border-top: 1px solid transparent !important; }
html.at-btabs .at-sb-fixed:not(#_) .at-sb-fixed-r { height: 34px; box-sizing: border-box; padding: 0 8px; display: flex; align-items: center; border-top: 1px solid var(--a-line); }
html.at-btabs .at-sb-fixed:not(#_) .at-plan-row { height: 26px; min-height: 0; flex: 1 1 auto; padding-top: 0; padding-bottom: 0; }
html.at-btabs .at-sb-fixed:not(#_) .at-plan-btn { height: 22px; line-height: 20px; }
/* the open tab in the buttons' blue (Attio primary, as .at-btn.at-pri) */
html.at-btabs.aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on { background: #266DF0 !important; color: #FFFFFF !important; }
html.at-btabs.aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on * { color: #FFFFFF !important; }
html.at-btabs.aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on .aiq-tab-x:hover { background: rgba(255,255,255,.18) !important; }

/* ══ Colour schemes for "Bottom tabs" (js/aiq-attio-classic.js sets html[data-cs]; user 2026-10-25). Each scheme sets
   a few --cs-* colours; the rules after them hand those to the Attio sheet's own variables, scoped to the sidebar, the
   and the tab bar, so every rule that reads --a-side / --sh-ink / --a-bg there recolours.
   Neutral = the New look as it is. The page itself keeps Attio's surface in every scheme. ══ */
/* soft tints only (user, 2026-10-25: Navy / Ink "harsh" → removed; "subtle like the green"). Each: a pale sidebar +
   tab bar tint, text in a deep shade of the same hue, a muted accent; dark = a faint tint of the same hue. */
html.at-btabs[data-cs="mint"] { --cs-side:#EDF8F4; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(13,138,102,.06); --cs-on:rgba(13,138,102,.12); --cs-line:color-mix(in srgb, #EDF8F4 88%, #12372C); --cs-field:#FFFFFF; --cs-accent:#0D8A66; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="mint"][data-theme="dark"] { --cs-side:#0F1A17; --cs-ink:#DDF3EB; --cs-dim:color-mix(in srgb, #DDF3EB 58%, transparent); --cs-hover:rgba(67,209,167,.07); --cs-on:rgba(67,209,167,.14); --cs-line:color-mix(in srgb, #0F1A17 85%, #DDF3EB); --cs-field:rgba(255,255,255,.05); --cs-accent:#43D1A7; --cs-accent-ink:#0F1115; }
html.at-btabs[data-cs="sage"] { --cs-side:#F1F4EF; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(79,107,74,.06); --cs-on:rgba(79,107,74,.12); --cs-line:color-mix(in srgb, #F1F4EF 88%, #26331F); --cs-field:#FFFFFF; --cs-accent:#4F6B4A; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="sage"][data-theme="dark"] { --cs-side:#141813; --cs-ink:#E2E9DE; --cs-dim:color-mix(in srgb, #E2E9DE 58%, transparent); --cs-hover:rgba(160,190,150,.07); --cs-on:rgba(160,190,150,.14); --cs-line:color-mix(in srgb, #141813 85%, #E2E9DE); --cs-field:rgba(255,255,255,.05); --cs-accent:#8DAA84; --cs-accent-ink:#0F1115; }
html.at-btabs[data-cs="sky"] { --cs-side:#EEF5FB; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(43,120,194,.06); --cs-on:rgba(43,120,194,.12); --cs-line:color-mix(in srgb, #EEF5FB 88%, #163049); --cs-field:#FFFFFF; --cs-accent:#2B78C2; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="sky"][data-theme="dark"] { --cs-side:#111820; --cs-ink:#DCEAF6; --cs-dim:color-mix(in srgb, #DCEAF6 58%, transparent); --cs-hover:rgba(110,170,230,.07); --cs-on:rgba(110,170,230,.14); --cs-line:color-mix(in srgb, #111820 85%, #DCEAF6); --cs-field:rgba(255,255,255,.05); --cs-accent:#5A9FE0; --cs-accent-ink:#0F1115; }
html.at-btabs[data-cs="indigo"] { --cs-side:#F0F2FD; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(69,93,220,.06); --cs-on:rgba(69,93,220,.12); --cs-line:color-mix(in srgb, #F0F2FD 88%, #1E2554); --cs-field:#FFFFFF; --cs-accent:#455DDC; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="indigo"][data-theme="dark"] { --cs-side:#15182A; --cs-ink:#E4E7FB; --cs-dim:color-mix(in srgb, #E4E7FB 58%, transparent); --cs-hover:rgba(111,131,234,.07); --cs-on:rgba(111,131,234,.14); --cs-line:color-mix(in srgb, #15182A 85%, #E4E7FB); --cs-field:rgba(255,255,255,.05); --cs-accent:#6F83EA; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="lavender"] { --cs-side:#F4F1FB; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(122,85,214,.06); --cs-on:rgba(122,85,214,.12); --cs-line:color-mix(in srgb, #F4F1FB 88%, #2E2350); --cs-field:#FFFFFF; --cs-accent:#7A55D6; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="lavender"][data-theme="dark"] { --cs-side:#17141F; --cs-ink:#EAE4F8; --cs-dim:color-mix(in srgb, #EAE4F8 58%, transparent); --cs-hover:rgba(160,130,240,.07); --cs-on:rgba(160,130,240,.14); --cs-line:color-mix(in srgb, #17141F 85%, #EAE4F8); --cs-field:rgba(255,255,255,.05); --cs-accent:#9B7FEA; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="sand"] { --cs-side:#F7F4EE; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(160,99,58,.06); --cs-on:rgba(160,99,58,.12); --cs-line:color-mix(in srgb, #F7F4EE 88%, #3A2C1E); --cs-field:#FFFFFF; --cs-accent:#A0633A; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="sand"][data-theme="dark"] { --cs-side:#1A1714; --cs-ink:#F1E9DE; --cs-dim:color-mix(in srgb, #F1E9DE 58%, transparent); --cs-hover:rgba(210,160,110,.07); --cs-on:rgba(210,160,110,.14); --cs-line:color-mix(in srgb, #1A1714 85%, #F1E9DE); --cs-field:rgba(255,255,255,.05); --cs-accent:#C98B5C; --cs-accent-ink:#0F1115; }
html.at-btabs[data-cs="rose"] { --cs-side:#FBF2F4; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(184,71,95,.06); --cs-on:rgba(184,71,95,.12); --cs-line:color-mix(in srgb, #FBF2F4 88%, #47202B); --cs-field:#FFFFFF; --cs-accent:#B8475F; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="rose"][data-theme="dark"] { --cs-side:#1C1416; --cs-ink:#F6E3E8; --cs-dim:color-mix(in srgb, #F6E3E8 58%, transparent); --cs-hover:rgba(235,130,155,.07); --cs-on:rgba(235,130,155,.14); --cs-line:color-mix(in srgb, #1C1416 85%, #F6E3E8); --cs-field:rgba(255,255,255,.05); --cs-accent:#E07C94; --cs-accent-ink:#0F1115; }
html.at-btabs[data-cs="slate"] { --cs-side:#F0F2F5; --cs-ink:#101112; --cs-dim:rgba(0,0,0,.55); --cs-hover:rgba(61,71,96,.06); --cs-on:rgba(61,71,96,.12); --cs-line:color-mix(in srgb, #F0F2F5 88%, #1D2433); --cs-field:#FFFFFF; --cs-accent:#3D4760; --cs-accent-ink:#FFFFFF; }
html.at-btabs[data-cs="slate"][data-theme="dark"] { --cs-side:#16181D; --cs-ink:#E6E9EF; --cs-dim:color-mix(in srgb, #E6E9EF 58%, transparent); --cs-hover:rgba(160,170,195,.07); --cs-on:rgba(160,170,195,.14); --cs-line:color-mix(in srgb, #16181D 85%, #E6E9EF); --cs-field:rgba(255,255,255,.05); --cs-accent:#8D9AB8; --cs-accent-ink:#0F1115; }

/* sidebar + tab bar take the scheme; the header row stays the page colour */
html.at-btabs[data-cs]:not([data-cs="neutral"]) :is(#app-sidebar, #aiq-tabbar) {
  --a-side: var(--cs-side); --a-side-hover: var(--cs-hover); --a-side-on: var(--cs-on); --a-bg: var(--cs-field);
  --a-ink: var(--cs-ink); --a-mute: var(--cs-dim); --a-label: var(--cs-dim); --a-line: var(--cs-line); --a-hover: var(--cs-hover);
  --a-fill: var(--cs-hover); --sh-ink: var(--cs-ink); --sh-dim: var(--cs-dim); --sh-hi: var(--cs-ink); --sh-line: var(--cs-line);
  --sh-field-line: var(--cs-line); --sh-active: var(--cs-on); }
html.at-btabs[data-cs]:not([data-cs="neutral"]).aiq-shell[data-theme]:root #app-sidebar:not(#_) { background: var(--cs-side) !important; border-right-color: var(--cs-line) !important; }
html.at-btabs[data-cs]:not([data-cs="neutral"]) #app-sidebar .sb-logo-wordmark :first-child:not(#_) { color: var(--cs-ink) !important; }
html.at-btabs[data-cs]:not([data-cs="neutral"]) #app-sidebar .at-sb-fixed:not(#_) { background: var(--cs-side); }
html.at-btabs[data-cs]:not([data-cs="neutral"]).aiq-shell[data-theme]:root #aiq-tabbar:not(#_) { background: var(--cs-side) !important; box-shadow: inset 0 1px 0 var(--cs-line) !important; }
html.at-btabs[data-cs]:not([data-cs="neutral"]).aiq-shell[data-theme]:root #aiq-tabbar:not(#_) :is(.aiq-tab, .aiq-tab *, button) { color: var(--cs-dim) !important; }
/* the open tab and the primary buttons stay the New look's blue in every scheme (user, 2026-10-25: "the buttons were
   best as blue how they were before"); the --cs-accent colours above are kept for trying again */
html.at-btabs[data-cs]:not([data-cs="neutral"]).aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on,
html.at-btabs[data-cs]:not([data-cs="neutral"]).aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on :is(*, i, span) { color: #FFFFFF !important; }
/* …except Mint, which keeps its own green (user, 2026-10-25: "the original mint is the best") */
html.at-btabs[data-cs="mint"].aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on { background: var(--cs-accent) !important; }
html.at-btabs[data-cs="mint"].aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on,
html.at-btabs[data-cs="mint"].aiq-shell[data-theme]:root #aiq-tabbar:not(#_) .aiq-tab.is-on :is(*, i, span) { color: var(--cs-accent-ink) !important; }
html.at-btabs[data-cs="mint"] .at-btn.at-pri:not(#_):not(#_) { background: var(--cs-accent) !important; color: var(--cs-accent-ink) !important; }
html.at-btabs[data-cs="mint"] .at-btn.at-pri:not(#_):not(#_) :is(i, svg) { color: var(--cs-accent-ink) !important; }
/* …but the top-right + on the My pages stays blue in every scheme (user, 2026-10-31): My stocks, My screens, My reports
   and the Superinvestors "Add investors" under the list (My dashboards' .ws-ix-new and My models' .mw-btn.pri never take the accent) */
html.at-btabs[data-cs="mint"] :is(#msa-new, #msa-new2, #scx-new, .at-btn.at-pri[data-new], .ra-btn.pri.at-pri, .at-btn.at-pri.si-home-add2, .at-btn.at-pri.mkad-gear):not(#_):not(#_):not(#_) { background: #455DDC !important; color: #FFFFFF !important; }
html.at-btabs[data-cs="mint"] :is(#msa-new, #msa-new2, #scx-new, .at-btn.at-pri[data-new], .ra-btn.pri.at-pri, .at-btn.at-pri.si-home-add2, .at-btn.at-pri.mkad-gear):not(#_):not(#_):not(#_):hover { background: #3A50C4 !important; }
html.at-btabs[data-cs="mint"] :is(#msa-new, #msa-new2, #scx-new, .at-btn.at-pri[data-new], .ra-btn.pri.at-pri, .at-btn.at-pri.si-home-add2, .at-btn.at-pri.mkad-gear):not(#_):not(#_):not(#_) :is(i, svg) { color: #FFFFFF !important; }
/* …and so does the + New under a short list (the "more" block) on every page (user, 2026-10-31: "should always be blue"; Financial charts missed it) */
html.at-btabs[data-cs="mint"] .aiq-more-cta .aiq-more-b.pri:not(#_):not(#_) { background: #455DDC !important; color: #FFFFFF !important; }
html.at-btabs[data-cs="mint"] .aiq-more-cta .aiq-more-b.pri:not(#_):not(#_):hover { background: #3A50C4 !important; }

/* ══ Dark theme for "Bottom tabs" (html[data-csd="house-soft"], set by js/aiq-attio-classic.js; user 2026-10-25). Each sets the page
   surface (Attio's --a-* tokens) and Mint's dark sidebar / tab-bar tint; the green accent stays. "night" = as it was. ══ */
/* Our own dark: the old layout's navy shell (_shell.html dark: sidebar #0F1320, page #1C1F25) two steps lighter —
   picked over the exact original and a middle step ("#3", 2026-10-25). The sidebar + tab bar are a navy step darker than the page, so the two belong
   together; buttons and the open tab go brand blue #455DDC in dark (user: "the buttons should maybe be a blue"). */
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] {
  --a-bg:#252933; --a-line:#313644; --a-ring:#3B4150; --a-hover:#2B303A; --a-sorted:color-mix(in srgb, #455DDC 7%, #252933); --a-fill:rgba(255,255,255,.04);
  --a-ink:#E8ECF3; --a-mute:rgba(232,236,243,.60); --sh-bed:#252933; --sh-tile:#2C313B; --sh-line:#313644;
  --cs-side:#1C2130; --cs-line:#313644; --cs-ink:rgba(232,236,243,.86); --cs-dim:rgba(232,236,243,.50); --cs-hover:rgba(255,255,255,.05); --cs-on:#2B3244;
  --cs-field:#252933; --cs-accent:#455DDC; --cs-accent-ink:#FFFFFF; }
/* pop-ups (menus, dropdowns, dialogs, ⌘K) a navy step lighter than the page, not the Attio sheet's near-black #18191B
   (user: "dropdown color isn't good"); a row hover inside them is a light wash so it still shows on that surface */
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] { --at-pop-bg:#2C313B; --at-pop-ring:rgba(255,255,255,.07);
  --at-pop-sh:0 0 0 1px rgba(255,255,255,.07), 0 4px 8px -4px rgba(0,0,0,.35), 0 8px 24px -4px rgba(0,0,0,.40); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] :is(.aiq-menu, .aiq-dlg, .cmdk, [role="menu"], [role="listbox"], .aiq-pop) { --a-hover:rgba(255,255,255,.06); }
/* the sidebar's search field + Alerts button on the soft navy: a light wash with a hairline ring, no drop shadow
   (the Attio sheet's dark shadow + page-colour fill looked muddy on the sidebar; user: "search bar doesn't look good") */
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-sb-search #nav-global-search:not(#_):not(#_),
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-sb-inbox:not(#_):not(#_) {
  background: rgba(255,255,255,.05) !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.08) !important; }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-sb-search #nav-global-search:not(#_):not(#_):hover,
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-sb-inbox:not(#_):not(#_):hover { background: rgba(255,255,255,.08) !important; }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-sb-search:not(#_) :is(#nav-global-search > svg, .at-sb-inbox i) { color: var(--cs-dim) !important; }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-sb-search:not(#_) #nav-search-input::placeholder { color: var(--cs-dim) !important; }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-sb-search:not(#_) #nav-cmdk-key > span {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.10) !important; color: rgba(232,236,243,.45) !important; background: none !important; }
/* page buttons (All screens, Sorted by, Filter…) on the soft navy: a light hairline ring, no near-black ring or drop
   shadow (the Attio sheet's dark --a-btn #222326 + shadow looked muddy here; user: "button color … doesn't look great") */
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] {
  --a-btn: inset 0 0 0 1px rgba(255,255,255,.09); --a-btn-shadow: 0 0 0 transparent; --a-ring: rgba(255,255,255,.09); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] main :is(.at-btn, .scx-hbtn, .scx-btn, .scx-dd, .ins-hbtn, .ins-fbtn, .ins-dd, .ins-search):not(.at-pri):not(#_) {
  background: rgba(255,255,255,.035) !important; }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] main :is(.at-btn, .scx-hbtn, .scx-btn, .scx-dd, .ins-hbtn, .ins-fbtn, .ins-dd):not(.at-pri):not(#_):hover {
  background: rgba(255,255,255,.07) !important; }
/* tinted icon squares + tag pills (.at-t-<tone>: Screener list icons, criteria tags…) muted for the soft navy — pale,
   lower-saturation inks on a faint wash instead of the saturated violet / blue (user: "neon icons colour doesn't work") */
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] {
  --at-tone-a: .13; }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-violet:not(#_) { --tn:#B9A6E6; --tb:rgba(185,166,230,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-blue:not(#_)   { --tn:#A3B3EE; --tb:rgba(163,179,238,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-amber:not(#_)  { --tn:#E1C08A; --tb:rgba(225,192,138,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-green:not(#_)  { --tn:#93D4BE; --tb:rgba(147,212,190,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-teal:not(#_)   { --tn:#8FCBD4; --tb:rgba(143,203,212,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-rose:not(#_)   { --tn:#E3A3B1; --tb:rgba(227,163,177,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-orange:not(#_) { --tn:#E3B08C; --tb:rgba(227,176,140,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-slate:not(#_)  { --tn:#B3BCCD; --tb:rgba(179,188,205,var(--at-tone-a)); }
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] .at-t-grey:not(#_)   { --tn:rgba(232,236,243,.65); --tb:rgba(255,255,255,.06); }
/* the fixed backdrop behind the panel (inline #1F1F1F in base.html) */
html.at-btabs.aiq-shell[data-theme="dark"][data-csd="house-soft"] #app-bg:not(#_) { background: #252933 !important; }

/* ==== css/vs-std-draft.css ==== */
/* View settings at the far right of the view row (user picked 2026-10-29; js/vs-std-draft.js, html.vs-std).
   The :not(#_) runs beat aiq-table-attio.css's own orders on the Financials rows. */

/* Comparables: [View ▾] [Peers] [Show ▾] … [View settings ▾] [CSV] */
html.vs-std #comp-root .at-row3 > .at-row3-grow:not(#_):not(#_) { order: 2; }
html.vs-std #comp-root .at-row3 > #cmp-ind-btn:not(#_):not(#_) { order: 3; }
html.vs-std #comp-root .at-row3 > #cmp-csv-btn:not(#_):not(#_) { order: 4; }

/* Markets: [Today ▾] … [1Y ▾] [View settings ▾] [Ask AI] */
html.vs-std .mkad-vrow > .sp:not(#_) { order: 1; }
html.vs-std .mkad-vrow > [data-menu="prng"]:not(#_) { order: 2; }
html.vs-std .mkad-vrow > [data-menu="vset"]:not(#_) { order: 3; }
html.vs-std .mkad-vrow > .mkad-pri:not(#_) { order: 4; }

/* Earnings: the ⋯ became a labelled button */
html.vs-std .ec-more > #ec-more-btn:not(#_) { width: auto; display: inline-flex; align-items: center; gap: 6px; }

/* Statements: [Income | Balance | Cash flow] [Period] … [USD millions · …] [View settings ▾] [Download Excel] */
html.vs-std .lkl-fin #stmts-toolbar #stmt-unit-note:not(#_):not(#_):not(#_):not(#_) { order: 8; margin-left: auto !important; }
html.vs-std .lkl-fin #stmts-toolbar #stmts-controls:not(#_):not(#_):not(#_):not(#_) { order: 9; margin-left: 4px !important; }
/* Revenue breakdown builds its own View settings ▾ (segFold): same spot */
html.vs-std .lkl-fin #stmts-toolbar > .at-vs:not(#_):not(#_):not(#_):not(#_) { order: 9; margin-left: 4px !important; }
html.vs-std .lkl-fin #stmts-toolbar > .at-r2:not(#_):not(#_):not(#_):not(#_) { order: 10; margin-left: 8px !important; }
html.vs-std .lkl-fin #stmts-toolbar #stmt-opt-menu:not(#_):not(#_) { left: auto !important; right: 0 !important; }

/* Charts: [Presets ▾] [+ Metrics] … [View settings ▾] [Download PNG] */
html.vs-std .lkl-fin #ch-bar > .ct-group:has(> #ch-disp):not(#_):not(#_):not(#_):not(#_) { margin-left: auto !important; }
html.vs-std .lkl-fin #ch-bar > .ct-group:has(> #ch-disp) ~ .at-r2:not(#_):not(#_):not(#_):not(#_) { margin-left: 8px !important; }
html.vs-std .lkl-fin #ch-disp .ch-disp-menu:not(#_):not(#_) { left: auto !important; right: 0 !important; }

/* ==== css/aiq-col-menu.css ==== */
/* Column heading menu — DRAFT (2026-10-25, Attio draft only; js/aiq-col-menu.js). A small ⌄ on each heading, shown on
   hover (space reserved so nothing shifts), opening Attio's column menu. */
html.at-done .aiq-tbl .atc-hid { display: none !important; }
html.at-done .aiq-tbl thead th .atc-btn:not(#_) {
  display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; margin: 0 0 0 4px; padding: 0;
  border: 0; border-radius: 5px; background: none; color: var(--a-mute, #727C94); cursor: pointer; vertical-align: middle;
  opacity: 0; }
html.at-done .aiq-tbl thead th:hover .atc-btn:not(#_), html.at-done .aiq-tbl thead th.atc-open .atc-btn:not(#_),
html.at-done .aiq-tbl thead th .atc-btn:focus-visible { opacity: 1; }
html.at-done .aiq-tbl thead th .atc-btn:not(#_):hover, html.at-done .aiq-tbl thead th.atc-open .atc-btn:not(#_) {
  background: var(--a-fill, rgba(15,17,21,.04)); color: var(--a-ink, #1D2025); }
html.at-done .aiq-tbl thead th .atc-btn svg { color: inherit !important; }
/* right-aligned (number) headings: the ⌄ floats over the cell's left edge instead of holding a slot after the label, so
   the label ends where the numbers end (it ended 22px short: "Last", "Market cap", "P/E" in a list; 2026-11-07) */
html.at-done .aiq-tbl thead th.atc-r > .atc-btn:not(#_) { position: absolute; left: 4px; top: 50%; margin: -9px 0 0; }   /* .atc-r / .atc-pos: set by js/aiq-col-menu.js */
html.at-done .aiq-tbl thead th.atc-r.atc-pos { position: relative; }
.atc-menu { min-width: 200px; }
.atc-menu .aiq-mi { display: flex; align-items: center; gap: 8px; }
.atc-menu .atc-i { width: 16px; display: inline-flex; justify-content: center; color: var(--a-mute, #727C94); }
.atc-menu .aiq-mi.atc-off { opacity: .4; cursor: default; pointer-events: none; }
/* Delete column (a table that owns its columns, e.g. My stocks): the kit's red row, above the Attio menu ink */
html.at-shell .atc-menu .aiq-mi.red:not(#_):not(#_):not(#_):not(#_), html.at-shell .atc-menu .aiq-mi.red:not(#_):not(#_):not(#_):not(#_) .atc-i { color: var(--pop-red, #E5484D) !important; }
/* the Screener's older ⋯ heading menu: its items live in this menu now */
html.at-done #screener-table thead th .th-menu:not(#_) { display: none !important; }
.atc-menu .atc-n { margin-left: auto; padding-left: 16px; color: var(--a-mute, #727C94); font-variant-numeric: tabular-nums; }

/* ==== css/aiq-addcol.css ==== */
/* DRAFT 2026-10-25 (html.at-done): Attio's "+ Add column" (static/js/aiq-addcol.js). Measured from app.attio.com:
   the blank last column's header holds a 28px button (padding 4 8 4 6, 14/500 grey .55, + icon) that greys on hover;
   the menu = Attio's attribute picker (white, 12px corners, layered shadow, search row + rule, 32px rows, 8px row
   corners, # / › counts, rule + footer action). Uses Attio's radii, so scripts/square_corners.py skips this file. */
html.at-done table.has-addcol th.aiq-addcol-th { width:160px; min-width:160px; padding:0 6px !important; text-align:left; vertical-align:middle;
  position:static !important; cursor:default; }
html.at-done table.has-addcol th.aiq-addcol-th::after, html.at-done table.has-addcol th.aiq-addcol-th::before { display:none !important; }
html.at-done table.has-addcol .aiq-addcol-td { width:160px; min-width:160px; padding:0 !important; background:transparent; }
html.at-done .aiq-addcol-btn { all:unset; box-sizing:border-box; display:inline-flex; align-items:center; gap:6px; height:28px; padding:4px 8px 4px 6px;
  border-radius:8px; font:500 14px/20px Inter, system-ui, sans-serif; letter-spacing:-0.07px; color:var(--a-mute, rgba(0,0,0,.55)); cursor:pointer; white-space:nowrap; }
html.at-done .aiq-addcol-btn svg { flex:none; }
html.at-done .aiq-addcol-btn:hover, html.at-done .aiq-addcol-btn.is-open { background:color-mix(in srgb, var(--a-ink, #101112) 5%, transparent); color:var(--a-ink, #101112); }
html.at-done .aiq-addcol-btn:focus-visible { outline:0; box-shadow:inset 0 0 0 1px var(--a-blue, #266DF0); }

.aiq-addcol-menu { position:fixed; z-index:var(--z-pop, 1000); width:274px; max-height:min(440px, 70vh); display:flex; flex-direction:column;
  background:var(--a-bg, #fff); color:var(--a-ink, #101112); border-radius:12px; overflow:hidden;
  box-shadow:inset 0 0 0 1px transparent, 0 0 0 1px rgba(28,40,64,.04), 0 4px 8px -4px rgba(28,40,64,.12), 0 4px 12px -2px rgba(24,41,75,.16);
  font:500 14px/20px Inter, system-ui, sans-serif; letter-spacing:-0.07px; animation:aiqPopRise .12s ease-out; }
html[data-theme="dark"] .aiq-addcol-menu { box-shadow:0 0 0 1px rgba(255,255,255,.08), 0 8px 24px rgba(0,0,0,.5); }
.aiq-addcol-menu .q { flex:none; padding:8px 12px; border-bottom:1px solid var(--a-line, #EEEFF1); }
.aiq-addcol-menu .q input { all:unset; box-sizing:border-box; width:100%; height:22px; font:inherit; color:inherit; }
.aiq-addcol-menu .q input::placeholder { color:var(--a-faint, rgba(0,0,0,.5)); }
.aiq-addcol-menu .ls { flex:1 1 auto; overflow-y:auto; padding:4px; overscroll-behavior:contain; }
.aiq-addcol-menu .ft { flex:none; padding:4px; border-top:1px solid var(--a-line, #EEEFF1); }
.aiq-addcol-menu .it { all:unset; box-sizing:border-box; display:flex; align-items:center; gap:8px; width:100%; height:32px; padding:6px 8px;
  border-radius:8px; cursor:pointer; white-space:nowrap; }
.aiq-addcol-menu .it.hv { background:color-mix(in srgb, var(--a-ink, #101112) 4%, transparent); }
.aiq-addcol-menu .it > svg { flex:none; color:var(--a-label, rgba(0,0,0,.63)); }
.aiq-addcol-menu .it > svg:last-child:not(:first-child) { margin-left:4px; }
.aiq-addcol-menu .it .nm { flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }
.aiq-addcol-menu .it .ct { flex:none; max-width:96px; overflow:hidden; text-overflow:ellipsis; font-size:12px; color:var(--a-label, rgba(0,0,0,.63)); font-variant-numeric:tabular-nums; }
.aiq-addcol-menu .it.back .nm { color:var(--a-label, rgba(0,0,0,.63)); }
.aiq-addcol-menu .hr { height:1px; margin:4px -4px; background:var(--a-line, #EEEFF1); }
.aiq-addcol-menu .none { padding:10px 8px; color:var(--a-faint, rgba(0,0,0,.5)); white-space:normal; }
@media (prefers-reduced-motion: reduce) { .aiq-addcol-menu { animation:none; } }

/* ==== css/aiq-hovercard-attio.css ==== */
/* Stock hover card (_ticker_card.html: Screener, Insiders, Earnings, Watchlist) in Attio's look — DRAFT 2026-10-25,
   only under html.at-shell (?tbl=attio-full). User: "fix the popups, restyle them". Attio's record preview: 12px corners,
   hairline ring + soft shadow, sentence-case 12px labels (no tracked caps), tag pills, rows without rules. */
html.at-shell #sc-hover-card:not(#_) {
  width: 360px; padding: 16px; border: 0; border-radius: 12px; background: var(--at-pop-bg, var(--a-bg));
  box-shadow: 0 0 0 1px var(--a-line), 0 12px 32px rgba(15,17,21,.12), 0 2px 6px rgba(15,17,21,.06);
  color: var(--a-ink); font: 500 13px/18px Inter, system-ui, sans-serif; letter-spacing: -0.05px; }
html.at-shell[data-theme="dark"] #sc-hover-card:not(#_) { box-shadow: 0 0 0 1px var(--a-line), 0 16px 40px rgba(0,0,0,.5); }

/* header: logo tile · ticker / name / place · price + change pill */
html.at-shell #sc-hover-card .schc-hd { gap: 12px; align-items: center; }
html.at-shell #sc-hover-card .schc-logo { width: 36px; height: 36px; border-radius: 9px; background: var(--a-bg); box-shadow: inset 0 0 0 1px var(--a-line); padding: 3px; }
html.at-shell #sc-hover-card .schc-tkr { font-size: 15px; line-height: 20px; font-weight: 600; }
html.at-shell #sc-hover-card .schc-name { font-size: 13px; line-height: 18px; color: var(--a-mute); margin: 0; max-width: 200px; }
html.at-shell #sc-hover-card .schc-meta { font-size: 12px; line-height: 16px; color: var(--a-faint); text-transform: none; letter-spacing: 0; margin: 0; }
html.at-shell #sc-hover-card .schc-px-val { font-size: 15px; line-height: 20px; font-weight: 600; }
html.at-shell #sc-hover-card .schc-px-chg { display: inline-flex; margin-top: 4px; height: 20px; padding: 0 6px; border-radius: 6px; align-items: center;
  font-size: 12px; font-weight: 500; }
html.at-shell #sc-hover-card .schc-px-chg.schc-up { background: var(--a-pos-bg); color: var(--a-pos-ink); }
html.at-shell #sc-hover-card .schc-px-chg.schc-down { background: var(--a-neg-bg); color: var(--a-neg-ink); }
html.at-shell #sc-hover-card .schc-px-chg.schc-flat { background: var(--a-fill); color: var(--a-mute); }

/* labels: sentence case, 12px, muted */
html.at-shell #sc-hover-card :is(.schc-range-top, .schc-chart-hd, .schc-col-title, .schc-class-k) {
  text-transform: none; letter-spacing: 0; font-size: 12px; line-height: 16px; font-weight: 500; color: var(--a-mute); }
html.at-shell #sc-hover-card .schc-range { margin: 16px 0 0; }
html.at-shell #sc-hover-card .schc-range-top { margin-bottom: 8px; }
html.at-shell #sc-hover-card .schc-range-top b { color: var(--a-ink); font-weight: 600; }
html.at-shell #sc-hover-card .schc-track { height: 4px; border-radius: 4px; background: var(--a-fill); box-shadow: inset 0 0 0 1px var(--a-line); }
html.at-shell #sc-hover-card .schc-dot { width: 10px; height: 10px; background: var(--a-blue, #266DF0); box-shadow: 0 0 0 2px var(--at-pop-bg, var(--a-bg)); }
html.at-shell #sc-hover-card .schc-range-lbl { font-size: 12px; color: var(--a-mute); margin-top: 6px; }
html.at-shell #sc-hover-card .schc-chart-hd { margin: 16px 0 6px; }
html.at-shell #sc-hover-card #schc-chart-slot .skel { border-radius: 8px !important; }

/* sector / industry as Attio tag pills, side by side */
html.at-shell #sc-hover-card .schc-class { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--a-line); gap: 0 12px; }
html.at-shell #sc-hover-card .schc-class-k { margin-bottom: 6px; }
html.at-shell #sc-hover-card .schc-class-v { display: inline-block; vertical-align: top; box-sizing: border-box; max-width: 100%; height: 22px; padding: 0 7px;   /* inline-block: an inline-flex box never draws the … (long industries were sliced, 2026-11-07) */
  border-radius: 6px;
  background: var(--a-fill); box-shadow: inset 0 0 0 1px var(--a-line); font-size: 12px; font-weight: 500; line-height: 22px;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* metrics: two columns, 26px rows, no rules */
html.at-shell #sc-hover-card .schc-cols { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--a-line); gap: 0 20px; }
html.at-shell #sc-hover-card .schc-cols > div + div { padding-left: 0; border-left: 0; }
html.at-shell #sc-hover-card .schc-col-title { margin-bottom: 4px; }
html.at-shell #sc-hover-card .schc-row { height: 26px; padding: 0; align-items: center; border-bottom: 0; font-size: 13px; }
html.at-shell #sc-hover-card .schc-k { color: var(--a-mute); }
html.at-shell #sc-hover-card .schc-v { font-weight: 500; color: var(--a-ink); }
html.at-shell #sc-hover-card .schc-row.is-plotted { margin: 0 -6px; padding: 0 6px; border-radius: 6px; background: rgba(38,109,240,.08); }
html.at-shell #sc-hover-card .schc-row.is-plotted :is(.schc-k, .schc-v) { color: var(--a-blue, #266DF0); }

/* ==== css/aiq-tf-menu.css ==== */
/* Time-frame dropdown (js/aiq-tf-menu.js, user picked 2026-11-10), menu sizes measured from rallies.ai.
   Only acts under html.tfm-on (desktop layout; not /chart). */
html.tfm-on .tfm-src, html.tfm-on .tfm-inl > .tfm-opt, html.tfm-on .tfm-inl > .at-segpill { display: none !important; }
/* the stock page's Attio layer hides everything but its own pill inside .at-segp (4 × #_ there) */
html.tfm-on .tfm-inl > .at-segpill:not(#_):not(#_):not(#_):not(#_) { display: none !important; }
html.tfm-on .at-segp > .tfm-trig:not(#_):not(#_):not(#_):not(#_) {
  display: inline-flex !important; height: var(--tfm-h) !important; padding: 0 8px !important; margin: 0 !important; border: 0 !important;
  border-radius: 8px !important; background: var(--tfm-bg) !important; box-shadow: var(--tfm-btn) !important; color: var(--tfm-ink) !important;
  font: 500 var(--tfm-fs)/20px Inter, system-ui, sans-serif !important; opacity: 1 !important; }
html.tfm-on .at-segp > .tfm-trig:hover:not(#_):not(#_):not(#_):not(#_) { background: var(--tfm-bg-h) !important; }
/* the switch kept beside it (Overview's "S&P 500") takes the same button look; it stays grey text when off */
html.tfm-on .tfm-inl > .at-keep:not(#_):not(#_):not(#_):not(#_):not(#_) {
  --tfm-bg: var(--a-bg, #fff); --tfm-bg-h: var(--a-hover, #F7F7F8);
  --tfm-btn: var(--a-btn, inset 0 0 0 1px rgba(0, 0, 0, 0), 0 0 2px 0 rgba(28, 40, 64, .18), 0 1px 3px 0 rgba(0, 0, 0, .04));
  height: 26px !important; padding: 0 8px !important; margin-left: 8px !important; border: 0 !important; border-radius: 8px !important;
  background: var(--tfm-bg) !important; box-shadow: var(--tfm-btn) !important; font: 500 13px/20px Inter, system-ui, sans-serif !important; }
html.tfm-on .tfm-inl > .at-keep:hover:not(#_):not(#_):not(#_):not(#_):not(#_) { background: var(--tfm-bg-h) !important; }

/* the button: the shape of the page's own buttons (Lists / Notes / Alerts, S&P 500): white,
   8px corners, Attio's ring shadow, 500 weight; 26px / 13px inside cards like S&P 500 (user, 2026-11-10) */
.tfm-trig {
  --tfm-bg: var(--a-bg, #fff); --tfm-bg-h: var(--a-hover, #F7F7F8); --tfm-ink: var(--a-ink, #101112);
  --tfm-btn: var(--a-btn, inset 0 0 0 1px rgba(0, 0, 0, 0), 0 0 2px 0 rgba(28, 40, 64, .18), 0 1px 3px 0 rgba(0, 0, 0, .04));
  --tfm-h: 28px; --tfm-fs: 14px;
  position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 4px;
  height: var(--tfm-h); padding: 0 8px; border: 0; border-radius: 8px;
  background: var(--tfm-bg); color: var(--tfm-ink); box-shadow: var(--tfm-btn);
  font: 500 var(--tfm-fs)/20px Inter, system-ui, sans-serif; font-variant-numeric: tabular-nums;
  cursor: pointer; white-space: nowrap; flex: 0 0 auto; vertical-align: middle;
  outline: none;
}
:is(.card, .cg-card, .kd-card, .stx-card, .fx-card, .cmp-card, .cap-card, .stmt-seg-chartcard, .at-segp) .tfm-trig { --tfm-h: 26px; --tfm-fs: 13px; }
.tfm-trig:hover { background: var(--tfm-bg-h); }
.tfm-trig:active { transform: scale(.98); }
.tfm-trig:focus-visible { box-shadow: var(--tfm-btn), 0 0 0 2px #6B97FF; }
.tfm-trig .tfm-chev { stroke-width: 1.5; flex: 0 0 auto; }
.tfm-trig:hover .tfm-chev, .tfm-trig[aria-expanded="true"] .tfm-chev { stroke-width: 2; }
.tfm-trig:disabled { opacity: .5; pointer-events: none; }

.tfm-menu {
  --tfm-ink: #0A0A0A; --tfm-menu: #fff; --tfm-hover: rgba(0, 0, 0, .06); --tfm-sel: rgba(0, 0, 0, .08);
  --tfm-ring: 0 0 0 1px rgba(0, 0, 0, .06), 0 1px 1px -.5px rgba(0, 0, 0, .06), 0 3px 3px -1.5px rgba(0, 0, 0, .06);
  position: fixed; z-index: 10050; min-width: 112px;
  animation: tfm-in .15s ease-out;
}
.tfm-menu.is-down { transform-origin: top left; }
.tfm-menu.is-up { transform-origin: bottom left; }
@keyframes tfm-in { from { opacity: 0; transform: scale(.95); } to { opacity: 1; transform: none; } }
.tfm-in {
  position: relative; display: flex; flex-direction: column; gap: 2px; padding: 4px;
  background: var(--tfm-menu); border-radius: 14px; box-shadow: var(--tfm-ring);
  user-select: none;
}
.tfm-hl {
  position: absolute; left: 4px; right: 4px; top: 0; height: 36px; border-radius: 10px;
  background: var(--tfm-hover); opacity: 0; pointer-events: none;
  transition: transform .15s ease, height .15s ease, opacity .1s;
}
.tfm-row {
  position: relative; z-index: 1; display: flex; align-items: center; gap: 8px;
  height: 36px; box-sizing: border-box; padding: 8px; border-radius: 10px;
  color: var(--tfm-ink); font: 400 13px/20px Inter, system-ui, sans-serif; font-variant-numeric: tabular-nums;
  cursor: pointer; outline: none;
}
.tfm-row.is-on { background: var(--tfm-sel); font-weight: 550; }
.tfm-rl { flex: 1 1 auto; min-width: 0; white-space: nowrap; }
.tfm-ck { flex: 0 0 auto; }

/* dark theme: same shapes on the app's dark card colours */
html[data-theme="dark"] .tfm-trig { --tfm-bg: var(--a-bg, #292929); --tfm-bg-h: var(--a-hover, #333333); --tfm-ink: var(--a-ink, #F2F2F2);
  --tfm-btn: var(--a-btn, inset 0 0 0 1px rgba(255, 255, 255, .1)); }
html[data-theme="dark"] .tfm-menu {
  --tfm-ink: #F2F2F2; --tfm-menu: #292929; --tfm-hover: rgba(255, 255, 255, .07); --tfm-sel: rgba(255, 255, 255, .1);
  --tfm-ring: 0 0 0 1px rgba(255, 255, 255, .08), 0 4px 12px -2px rgba(0, 0, 0, .5);
}

/* ── Year-range buttons (stock page Charts tab "10Y ▾", Graphs / focus charts "5 years ▾"; built by
   aiq-attio-draft.js from drag sliders): the time-frame button's look, no clock icon (user, 2026-11-10) ── */
html.tfm-on :is(.at-rangepill, .at-segrange):not(#_):not(#_):not(#_):not(#_) {
  display: inline-flex !important; align-items: center; gap: 4px !important; height: 26px !important; padding: 0 8px !important;
  border: 0 !important; border-radius: 8px !important; background: var(--a-bg, #fff) !important; color: var(--a-ink, #101112) !important;
  box-shadow: var(--a-btn, inset 0 0 0 1px rgba(0, 0, 0, 0), 0 0 2px 0 rgba(28, 40, 64, .18), 0 1px 3px 0 rgba(0, 0, 0, .04)) !important;
  font: 500 13px/20px Inter, system-ui, sans-serif !important; font-variant-numeric: tabular-nums; }
html.tfm-on :is(.at-rangepill, .at-segrange):hover:not(#_):not(#_):not(#_):not(#_) { background: var(--a-hover, #F7F7F8) !important; }
html.tfm-on :is(.at-rangepill, .at-segrange) > i:not(.at-car):not(#_):not(#_) { display: none !important; }
html.tfm-on :is(.at-rangepill, .at-segrange) .at-car:not(#_):not(#_) { font-size: 12px !important; color: var(--a-ink, #101112) !important; }

/* ── Pick-one menus opened from the stock pages' pills (js pickMenu adds .tfm-pm): the time-frame menu's look ── */
html.tfm-on .aiq-menu.at-menu.tfm-pm:not(#_):not(#_):not(#_) {
  --tfm-ink: #0A0A0A; --tfm-hover: rgba(0, 0, 0, .06); --tfm-sel: rgba(0, 0, 0, .08);
  display: flex !important; flex-direction: column; gap: 2px; min-width: 112px; margin-top: 2px;
  padding: 4px !important; border: 0 !important; border-radius: 14px !important; background: #fff !important;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, .06), 0 1px 1px -.5px rgba(0, 0, 0, .06), 0 3px 3px -1.5px rgba(0, 0, 0, .06) !important;
  -webkit-backdrop-filter: none !important; backdrop-filter: none !important; user-select: none;
  transform-origin: top left; animation: tfm-in .15s ease-out; }
html.tfm-on .aiq-menu.at-menu.tfm-pm > .aiq-mi:not(#_):not(#_):not(#_) {
  position: relative; z-index: 1; display: flex; align-items: center; gap: 8px; width: 100%;
  height: 36px; min-height: 36px; box-sizing: border-box; padding: 8px !important; border-radius: 10px !important;
  background: transparent !important; color: var(--tfm-ink) !important;
  font: 400 13px/20px Inter, system-ui, sans-serif !important; letter-spacing: 0 !important; text-align: left; white-space: nowrap; }
html.tfm-on .aiq-menu.at-menu.tfm-pm > .aiq-mi.on:not(#_):not(#_):not(#_) { background: var(--tfm-sel) !important; font-weight: 550 !important; }
html.tfm-on .aiq-menu.at-menu.tfm-pm > .aiq-mi::after { content: none !important; display: none !important; }
html.tfm-on .aiq-menu.at-menu.tfm-pm > .aiq-mi > i:not(#_):not(#_) { margin-right: 0 !important; color: var(--tfm-ink) !important; opacity: .55; font-size: 15px; }
html.tfm-on .aiq-menu.at-menu.tfm-pm > .aiq-mi > .tfm-ck { margin-left: auto; padding-left: 0; color: var(--tfm-ink); }
html.tfm-on .aiq-menu.at-menu.tfm-pm > .tfm-hl { left: 4px; right: 4px; background: var(--tfm-hover); }
html[data-theme="dark"].tfm-on .aiq-menu.at-menu.tfm-pm:not(#_):not(#_):not(#_) {
  --tfm-ink: #F2F2F2; --tfm-hover: rgba(255, 255, 255, .07); --tfm-sel: rgba(255, 255, 255, .1);
  background: #292929 !important; box-shadow: 0 0 0 1px rgba(255, 255, 255, .08), 0 4px 12px -2px rgba(0, 0, 0, .5) !important; }

/* ── Stock pages: Period and View settings sit in the same button as the time-frame / range pills
   (user, 2026-11-10: "the view settings and the period are also placed into pills") — white, 8px,
   Attio ring shadow, header size 28px / 14px. Replaces the plain-word look there (2026-10-30). ── */
html.at-nav-h :is(.lkl-fin, .at-ft) :is(.at-period, .at-vs-btn, #stmt-opt-btn, [data-vs-std], #ch-disp > button):not(#_):not(#_):not(#_):not(#_):not(#_):not(#_):not(#_):not(#_):not(#_) {
  align-items: center; gap: 6px; height: 28px !important; padding: 0 8px !important;
  border: 0 !important; border-radius: 8px !important; background: var(--a-bg, #fff) !important; color: var(--a-ink, #101112) !important;
  box-shadow: var(--a-btn, inset 0 0 0 1px rgba(0, 0, 0, 0), 0 0 2px 0 rgba(28, 40, 64, .18), 0 1px 3px 0 rgba(0, 0, 0, .04)) !important;
  font: 500 14px/20px Inter, system-ui, sans-serif !important; }
html.at-nav-h :is(.lkl-fin, .at-ft) :is(.at-period, .at-vs-btn, #stmt-opt-btn, [data-vs-std], #ch-disp > button):hover:not(#_):not(#_):not(#_):not(#_):not(#_):not(#_):not(#_):not(#_):not(#_) { background: var(--a-hover, #F7F7F8) !important; }

