/* Theme 2.0 follow prompt (traffic brief C/D), shared by manager and fund pages. Owner: Frontend Builder B. Tokens only; light and dark.
   Position: fixed above the AI bar. Pages with a sticky section nav or a different Ask bar offset can set --t2-follow-bottom on :root or the body. */
.t2-follow { position: fixed; right: 20px; bottom: var(--t2-follow-bottom, calc(var(--askbar-h, 96px) + 12px)); z-index: 50; width: min(400px, calc(100vw - 40px)); box-sizing: border-box; padding: 16px 44px 16px 16px; border-radius: 16px; background: color-mix(in srgb, var(--panelsolid) 92%, transparent); border: 1px solid var(--pbd); backdrop-filter: blur(24px); box-shadow: var(--shadow); display: flex; flex-direction: column; gap: 12px; opacity: 0; transform: translateY(12px); pointer-events: none; transition: opacity 0.18s cubic-bezier(0.16, 1, 0.3, 1), transform 0.18s cubic-bezier(0.16, 1, 0.3, 1); }
.t2-follow.is-open { opacity: 1; transform: none; pointer-events: auto; }
.t2-follow-txt { display: flex; flex-direction: column; gap: 4px; }
.t2-follow-title { font-size: 15px; font-weight: 500; line-height: 1.3; color: var(--tx); }
.t2-follow-sub { font-size: 13px; line-height: 1.5; color: var(--t2); }
.t2-follow-go { align-self: flex-start; }
.t2-follow-go[aria-pressed="true"] { background: var(--seg); color: var(--tx); border: 1px solid var(--pbd); }
.t2-follow-up { font-size: 13px; font-weight: 500; color: var(--tx); text-decoration: underline; }
.t2-follow-x { position: absolute; top: 10px; right: 10px; width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 9px; background: transparent; color: var(--td); cursor: pointer; }
.t2-follow-x:hover { background: var(--ghost); color: var(--tx); }
.t2-follow-x svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; }
.t2-follow :is(button, a):focus-visible { outline: 2px solid var(--r3); outline-offset: 2px; }
/* the drawer line that restates what will be followed */
.t2-follow-ctx { display: flex; flex-direction: column; gap: 4px; margin: 8px 0 4px; padding: 12px 14px; border-radius: 10px; background: var(--ghost); border: 1px solid var(--pbd); font-size: 13px; line-height: 1.5; color: var(--t2); }
.t2-follow-ctx strong { color: var(--tx); font-weight: 600; }
/* cfg.position 'top-right': clears the header on desktop; phones keep the bottom bar */
.t2-follow--top { top: var(--t2-follow-top, 96px); bottom: auto; transform: translateY(-12px); }
.t2-follow--top.is-open { transform: none; }
@media (max-width: 899px) {
  .t2-follow { left: 12px; right: 12px; width: auto; bottom: var(--t2-follow-bottom, calc(var(--askbar-h, 92px) + 12px)); box-sizing: border-box; padding: 14px 52px 14px 14px; border-radius: 14px; max-height: 60vh; overflow: auto; }
  .t2-follow--top { top: auto; bottom: var(--t2-follow-bottom, calc(var(--askbar-h, 92px) + 12px)); transform: translateY(12px); }
  .t2-follow--top.is-open { transform: none; }
  .t2-follow-title { font-size: 16px; }
  .t2-follow-sub { font-size: 16px; }
  .t2-follow-go { min-height: 44px; align-self: stretch; }
  .t2-follow-x { top: 4px; right: 4px; width: 44px; height: 44px; }
  .t2-follow-up { display: inline-flex; align-items: center; min-height: 44px; font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .t2-follow { transition: none; } }

/* Cookie banner open: hide the Track card until the visitor chooses (consent.js sets --t2-follow-bottom on <html> only while the banner is visible; no effect when the banner is off) */
html[style*="--t2-follow-bottom"] .t2-follow { display: none !important; }
