/* ================= Static build =================
   This file contains no JavaScript. iOS Quick Look — the preview sheet you get
   when you tap an HTML file in Files or Mail — runs none, which is why every
   earlier version showed a black screen there. The markup below is the fully
   rendered page; the rules here replace the three things JS used to do. */

/* 1. Nav drawer: a checkbox and label instead of a click handler. */
#lb-nav-cb{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
label.lb-nav-toggle{display:none}
@media (max-width:860px){
  label.lb-nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:44px;height:48px;padding:0 10px;margin-right:-10px;cursor:pointer;flex:0 0 auto}
  label.lb-nav-toggle i{display:block;height:1.5px;background:var(--text-secondary);border-radius:1px;
    transition:transform var(--dur-fast) var(--ease-standard),opacity var(--dur-fast) var(--ease-standard)}
  #root header>#lb-nav-cb:checked~nav{display:flex!important;transform:none!important;opacity:1!important;pointer-events:auto!important}
  #root header>#lb-nav-cb:checked~label.lb-nav-toggle i:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  #root header>#lb-nav-cb:checked~label.lb-nav-toggle i:nth-child(2){opacity:0}
  #root header>#lb-nav-cb:checked~label.lb-nav-toggle i:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
}

/* 2. Hero ring stage. The interactive build sets its height in JS as
      width x 560/700, capped at 560 — which is precisely an aspect ratio, so
      CSS expresses it exactly and, unlike the baked pixel value, it stays right
      at every width. The min(80vw,560px) line is the fallback for engines
      without aspect-ratio; the chip layer is then squared off the height. */
#root [data-hero]>div:last-child{
  width:100%!important;height:min(80vw,560px)!important;max-height:560px;
  max-width:none!important;overflow:visible!important;
  margin-left:auto!important;margin-right:auto!important}
#root [data-hero]>div.lb-centered,
#root [data-hero]>div:last-child>div.lb-centered{
  width:min(80vw,560px)!important;height:min(80vw,560px)!important}
@supports (aspect-ratio:1/1){
  /* width must be explicit: this is a centre-aligned grid item, so with
     height:auto it would size from its content — and every child is
     absolutely positioned, making that zero. */
  #root [data-hero]>div:last-child{width:100%!important;height:auto!important;aspect-ratio:700/560}
  #root [data-hero]>div:last-child>div.lb-centered{
    height:100%!important;width:auto!important;aspect-ratio:1/1!important}
}

/* 3. Custody "settles back" loop. Its vertical offset is measured against the
      rendered node stack at runtime; with no JS it cannot be measured, and a
      baked value would point at the wrong node as soon as the copy rewraps.
      Hidden here — the node text states the same thing in words. */
#root #custody div.lb-custody-loop{display:none!important}

/* Stats band hover: the gradient fill is already painted behind each figure and
   caption, and the resting state simply covers it with a solid colour. Clearing
   that colour on hover reveals it — same effect the interactive build gets from
   React state, with no script. */
#root section.lb-stats-grid>div:hover span.lb-gradient-text{color:transparent!important}
/* Keep the 48px touch target the old button/#docs selectors used to provide. */
@media (max-width:860px){
  #root a[href^="https://app.liquidbots"],#root a[href^="https://docs.liquidbots"]{min-height:48px}
}

/* ---- Repair for React's font: shorthand ----
   React writes StatBlock's type as the `font` shorthand built from var()s, and
   sets font-variant-numeric alongside it. That combination cannot be serialised
   back to an HTML attribute: the browser emits the sub-properties EMPTY
   (`font-size: ;`), so the pre-rendered file lost the display face and fell
   back to 16px Figtree. The live app is unaffected because it keeps the value
   in the CSSOM rather than the attribute.
   Those emptied declarations are themselves an exact selector hook. Restating
   the shorthand here reinstates 40px/42px Open Sans Light. font-variant-numeric
   has to be repeated because the shorthand resets it. */
#root div.lb-stat-text,
#root span.lb-stat-text.lb-ls-display{
  font:var(--fw-light) var(--fs-h1)/1.05 var(--font-display)!important;
  font-variant-numeric:tabular-nums!important}
#root span.lb-stat-text:not(.lb-ls-display){
  font:var(--type-body-s)!important;font-variant-numeric:tabular-nums!important}

/* ---- Orbit chip type ----
   The interactive build sizes chips as max(11px, 13 * k), where k is the stage
   scale (column width / 700). Since the chip layer is a square whose side is
   the stage height, that works out to 2.32% of the square's own width — which a
   container query can state directly, so the chips track the rings at any
   width instead of sitting at the 11px floor. Letter-spacing is in em and
   follows automatically. Without container-query support the floor stands. */
@supports (container-type:size){
  #root [data-hero]>div:last-child>div.lb-centered{container-type:size}
  #root [data-hero]>div:last-child>div.lb-centered>*{
    font-size:max(11px,2.32cqw)!important}
}

/* ---- Orbit chip hover ----
   OrbitChip drives this from React state, so the pre-render froze all three
   live chips in their resting state. Values are lifted verbatim from the
   component: scale 1.06, border alpha .45 -> .75, and the glow going from
   `0 0 18px a.34 / 0 0 0 a.22` to `0 0 34px a.55 / 0 0 70px a.22`.
   The 520ms transition and each chip's transform-origin are already inline, so
   the easing and the direction it grows from are untouched. Only the three grid
   chips get this; Margin health, Trigger entry and Every native market are
   non-interactive in the component and stay that way. */
#root [data-hero] a[href="#grid-bot"].lb-tint-cyan:hover{transform:translate(-50%,-50%) scale(1.06)!important;border-color:rgba(31,228,204,.75)!important;box-shadow:0 0 34px rgba(31,228,204,.55),0 0 70px rgba(31,228,204,.22)!important}
#root [data-hero] a[href="#grid-bot"].lb-tint-purple:hover{transform:translate(-50%,-50%) scale(1.06)!important;border-color:rgba(177,140,255,.75)!important;box-shadow:0 0 34px rgba(177,140,255,.55),0 0 70px rgba(177,140,255,.22)!important}
#root [data-hero] a[href="#grid-bot"].lb-tint-blue:hover{transform:translate(-50%,-50%) scale(1.06)!important;border-color:rgba(91,124,255,.75)!important;box-shadow:0 0 34px rgba(91,124,255,.55),0 0 70px rgba(91,124,255,.22)!important}

/* ================= State-driven interaction audit =================
   Every hover/press state in this page is React state in the components, so a
   pre-render with no JavaScript captures all of them at rest. Each block below
   restates one component's hover values verbatim from its source. Transitions
   and easings are already inline on the elements, so timing is untouched.
   Hover is desktop-only behaviour; on a phone none of this is reachable, which
   is why :has() is safe to use for the cases that need to match an accent. */

/* --- TopNav items (NavItem): gradient reveal on hover --- */
#root header nav a.lb-gradient-text:hover{color:transparent!important}

/* --- Button (all variants used here): hover fill + glow, and the press scale --- */
#root .lb-btn-primary:hover{
  background:var(--action-primary-hover)!important;box-shadow:var(--glow-teal)!important}
#root .lb-btn-secondary:hover{
  background:var(--action-secondary-hover)!important}
#root .lb-btn-primary:active,
#root .lb-btn-secondary:active{
  transform:scale(var(--press-scale))!important}

/* --- Card, glow variant with interactive=true: the strategy cards --- */
#root .lb-card-glow.lb-clickable:hover{
  box-shadow:0 0 0 1px rgba(31,228,204,.45),0 0 40px rgba(31,228,204,.2),0 24px 64px rgba(0,0,0,.6)!important}

/* --- Hero mark: lifts, tilts, brightens and starts breathing --- */
#root .lb-hero-mark:hover{
  transform:translate(-50%,-50%) scale(1.07) rotate(-1.6deg)!important}
#root .lb-hero-mark:hover>div.lb-round{
  background:radial-gradient(circle,rgba(31,228,204,.3) 0%,rgba(31,228,204,0) 68%)!important;
  animation:lbBreathe 3.4s ease-in-out infinite!important}
#root .lb-hero-mark:hover img{
  filter:brightness(1.2) saturate(1.16) drop-shadow(0 0 54px rgba(31,228,204,.5)) drop-shadow(0 0 98px rgba(177,140,255,.34))!important}
#root .lb-hero-mark:hover>div.lb-mark-tint{opacity:.42!important}

/* --- StepCard: lifts 3px, accent border and glow, hairline and rule extend --- */
#root div.lb-step-card:has(span.lb-accent-cyan):hover{border-color:rgba(31,228,204,.24)!important;transform:translateY(-3px)!important;box-shadow:0 22px 46px -30px rgba(31,228,204,.6)!important}
#root div.lb-step-card:has(span.lb-accent-cyan):hover>div.lb-hairline{opacity:1!important}
#root div.lb-step-card:has(span.lb-accent-cyan):hover span.lb-accent-cyan{text-shadow:0 0 18px rgba(31,228,204,.45)!important}
#root div.lb-step-card:has(span.lb-accent-cyan):hover span.lb-step-rule{transform:scaleX(1)!important}
#root div.lb-step-card:has(span.lb-accent-cyan):hover span.lb-uppercase.lb-text-tertiary{color:rgba(31,228,204,.75)!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover{border-color:rgba(91,124,255,.24)!important;transform:translateY(-3px)!important;box-shadow:0 22px 46px -30px rgba(91,124,255,.6)!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover>div.lb-hairline{opacity:1!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover span.lb-accent-blue{text-shadow:0 0 18px rgba(91,124,255,.45)!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover span.lb-step-rule{transform:scaleX(1)!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover span.lb-uppercase.lb-text-tertiary{color:rgba(91,124,255,.75)!important}
#root div.lb-step-card:has(span.lb-accent-purple):hover{border-color:rgba(177,140,255,.24)!important;transform:translateY(-3px)!important;box-shadow:0 22px 46px -30px rgba(177,140,255,.6)!important}
#root div.lb-step-card:has(span.lb-accent-purple):hover>div.lb-hairline{opacity:1!important}
#root div.lb-step-card:has(span.lb-accent-purple):hover span.lb-accent-purple{text-shadow:0 0 18px rgba(177,140,255,.45)!important}
#root div.lb-step-card:has(span.lb-accent-purple):hover span.lb-step-rule{transform:scaleX(1)!important}
#root div.lb-step-card:has(span.lb-accent-purple):hover span.lb-uppercase.lb-text-tertiary{color:rgba(177,140,255,.75)!important}

/* --- RoadMilestone: accent top edge, tinted fill, badge scale, halo pulse --- */
#root [data-road-card].lb-edge-cyan:hover{border-top-color:rgba(31,228,204,.5)!important;background:rgba(244,244,245,.035)!important;box-shadow:0 0 34px -14px rgba(31,228,204,.5)!important}
#root [data-road-card].lb-edge-cyan:hover [data-road-badge]{transform:translateX(-50%) scale(1.08)!important;border-color:rgba(31,228,204,.85)!important;box-shadow:0 0 28px rgba(31,228,204,.45)!important}
#root [data-road-card].lb-edge-cyan:hover [data-road-halo]{opacity:1!important;animation:lbSoonPulse 2.2s var(--ease-standard) infinite!important}
#root [data-road-card].lb-edge-blue:hover{border-top-color:rgba(91,124,255,.5)!important;background:rgba(244,244,245,.035)!important;box-shadow:0 0 34px -14px rgba(91,124,255,.5)!important}
#root [data-road-card].lb-edge-blue:hover [data-road-badge]{transform:translateX(-50%) scale(1.08)!important;border-color:rgba(91,124,255,.85)!important;box-shadow:0 0 28px rgba(91,124,255,.45)!important}
#root [data-road-card].lb-edge-blue:hover [data-road-halo]{opacity:1!important;animation:lbSoonPulse 2.2s var(--ease-standard) infinite!important}
#root [data-road-card].lb-edge-indigo:hover{border-top-color:rgba(123,132,255,.5)!important;background:rgba(244,244,245,.035)!important;box-shadow:0 0 34px -14px rgba(123,132,255,.5)!important}
#root [data-road-card].lb-edge-indigo:hover [data-road-badge]{transform:translateX(-50%) scale(1.08)!important;border-color:rgba(123,132,255,.85)!important;box-shadow:0 0 28px rgba(123,132,255,.45)!important}
#root [data-road-card].lb-edge-indigo:hover [data-road-halo]{opacity:1!important;animation:lbSoonPulse 2.2s var(--ease-standard) infinite!important}
#root [data-road-card].lb-edge-purple:hover{border-top-color:rgba(177,140,255,.5)!important;background:rgba(244,244,245,.035)!important;box-shadow:0 0 34px -14px rgba(177,140,255,.5)!important}
#root [data-road-card].lb-edge-purple:hover [data-road-badge]{transform:translateX(-50%) scale(1.08)!important;border-color:rgba(177,140,255,.85)!important;box-shadow:0 0 28px rgba(177,140,255,.45)!important}
#root [data-road-card].lb-edge-purple:hover [data-road-halo]{opacity:1!important;animation:lbSoonPulse 2.2s var(--ease-standard) infinite!important}

/* --- StepCard artwork (StepArt): the panel behind each step also responds --- */
#root div.lb-step-card:has(span.lb-accent-cyan):hover div.lb-step-art{background:rgba(244,244,245,.035)!important;border-color:rgba(31,228,204,.18)!important}
#root div.lb-step-card:has(span.lb-accent-cyan):hover span.lb-inset-0.lb-pulse-cyan{opacity:1!important;animation:lbStepPulse 2.2s var(--ease-standard) infinite!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover div.lb-step-art{background:rgba(244,244,245,.035)!important;border-color:rgba(91,124,255,.18)!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover span.lb-inset-0.lb-pulse-blue{opacity:1!important;animation:lbStepPulse 2.2s var(--ease-standard) infinite!important}
#root div.lb-step-card:has(span.lb-accent-purple):hover div.lb-step-art{background:rgba(244,244,245,.035)!important;border-color:rgba(177,140,255,.18)!important}

/* Step 02's funding bar fills and its knob slides, both once per hover. */
#root div.lb-step-card:has(span.lb-accent-blue):hover div.lb-fund-bar{
  box-shadow:0 0 12px rgba(91,124,255,.5)!important;animation:lbFundFill 1200ms var(--ease-standard)!important}
#root div.lb-step-card:has(span.lb-accent-blue):hover span.lb-fund-knob{
  box-shadow:0 0 10px rgba(91,124,255,.7)!important;animation:lbFundKnob 1200ms var(--ease-standard)!important}

/* Step 03's price line redraws on a loop, its tip fading out as the line runs. */
#root div.lb-step-card:has(span.lb-accent-purple):hover path.lb-draw-line{
  animation:lbDrawLine 3.4s var(--ease-standard) infinite!important}
#root div.lb-step-card:has(span.lb-accent-purple):hover circle.lb-opaque{
  opacity:0!important;animation:lbDrawTip 3.4s var(--ease-standard) infinite!important}

/* ================= Chip -> stage response =================
   Hovering a grid chip doesn't only light the chip: in the interactive build it
   also draws a trend line behind the rings (climbing for long, falling for
   short, oscillating inside a marked range for neutral), re-tints all five
   rings, and lights the logo mark.
   I previously called this script-only. It isn't. Two things make it work
   without JS:
     1. :has() lets a chip's :hover be read from the stage, which is an ancestor
        of both the chip and the rings — so a later sibling can style earlier ones.
     2. The trend line is three different SVG paths, which CSS cannot swap. So
        all three ship in the markup at opacity 0 and the matching one is
        revealed. Paths are generated by the same seeded walk the component
        uses, so the shapes are identical.
   Every value below is the component's own. */

/* cyan */
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) svg[data-ghost="cyan"]{opacity:1!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-ring-1{border-color:rgba(31,228,204,.6)!important;box-shadow:0 0 26px rgba(31,228,204,.18),inset 0 0 26px rgba(31,228,204,.08)!important;transform:translate(-50%,-50%) scale(1.055)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-ring-2{border-color:rgba(31,228,204,.518)!important;box-shadow:0 0 26px rgba(31,228,204,.18),inset 0 0 26px rgba(31,228,204,.08)!important;transform:translate(-50%,-50%) scale(1.067)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-ring-3{border-color:rgba(31,228,204,.42)!important;box-shadow:0 0 26px rgba(31,228,204,.18),inset 0 0 26px rgba(31,228,204,.08)!important;transform:translate(-50%,-50%) scale(1.079)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-ring-4{border-color:rgba(31,228,204,.322)!important;box-shadow:0 0 26px rgba(31,228,204,.18),inset 0 0 26px rgba(31,228,204,.08)!important;transform:translate(-50%,-50%) scale(1.091)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-ring-5{border-color:rgba(31,228,204,.224)!important;box-shadow:0 0 26px rgba(31,228,204,.18),inset 0 0 26px rgba(31,228,204,.08)!important;transform:translate(-50%,-50%) scale(1.103)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-hero-mark{transform:translate(-50%,-50%) scale(1.07) rotate(-1.6deg)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-hero-mark>div.lb-round{background:radial-gradient(circle,rgba(31,228,204,.3) 0%,rgba(31,228,204,0) 68%)!important;animation:lbBreathe 3.4s ease-in-out infinite!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-hero-mark img{filter:brightness(1.2) saturate(1.16) drop-shadow(0 0 54px rgba(31,228,204,.5)) drop-shadow(0 0 98px rgba(177,140,255,.34))!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-cyan:hover) div.lb-hero-mark>div.lb-mark-tint{opacity:.42!important;background:rgb(31,228,204)!important}

/* purple */
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) svg[data-ghost="purple"]{opacity:1!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-ring-1{border-color:rgba(177,140,255,.6)!important;box-shadow:0 0 26px rgba(177,140,255,.18),inset 0 0 26px rgba(177,140,255,.08)!important;transform:translate(-50%,-50%) scale(1.055)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-ring-2{border-color:rgba(177,140,255,.518)!important;box-shadow:0 0 26px rgba(177,140,255,.18),inset 0 0 26px rgba(177,140,255,.08)!important;transform:translate(-50%,-50%) scale(1.067)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-ring-3{border-color:rgba(177,140,255,.42)!important;box-shadow:0 0 26px rgba(177,140,255,.18),inset 0 0 26px rgba(177,140,255,.08)!important;transform:translate(-50%,-50%) scale(1.079)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-ring-4{border-color:rgba(177,140,255,.322)!important;box-shadow:0 0 26px rgba(177,140,255,.18),inset 0 0 26px rgba(177,140,255,.08)!important;transform:translate(-50%,-50%) scale(1.091)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-ring-5{border-color:rgba(177,140,255,.224)!important;box-shadow:0 0 26px rgba(177,140,255,.18),inset 0 0 26px rgba(177,140,255,.08)!important;transform:translate(-50%,-50%) scale(1.103)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-hero-mark{transform:translate(-50%,-50%) scale(1.07) rotate(-1.6deg)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-hero-mark>div.lb-round{background:radial-gradient(circle,rgba(177,140,255,.3) 0%,rgba(177,140,255,0) 68%)!important;animation:lbBreathe 3.4s ease-in-out infinite!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-hero-mark img{filter:brightness(1.2) saturate(1.16) drop-shadow(0 0 54px rgba(177,140,255,.5)) drop-shadow(0 0 98px rgba(177,140,255,.34))!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-purple:hover) div.lb-hero-mark>div.lb-mark-tint{opacity:.42!important;background:rgb(177,140,255)!important}

/* blue */
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) svg[data-ghost="blue"]{opacity:1!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-ring-1{border-color:rgba(91,124,255,.6)!important;box-shadow:0 0 26px rgba(91,124,255,.18),inset 0 0 26px rgba(91,124,255,.08)!important;transform:translate(-50%,-50%) scale(1.055)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-ring-2{border-color:rgba(91,124,255,.518)!important;box-shadow:0 0 26px rgba(91,124,255,.18),inset 0 0 26px rgba(91,124,255,.08)!important;transform:translate(-50%,-50%) scale(1.067)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-ring-3{border-color:rgba(91,124,255,.42)!important;box-shadow:0 0 26px rgba(91,124,255,.18),inset 0 0 26px rgba(91,124,255,.08)!important;transform:translate(-50%,-50%) scale(1.079)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-ring-4{border-color:rgba(91,124,255,.322)!important;box-shadow:0 0 26px rgba(91,124,255,.18),inset 0 0 26px rgba(91,124,255,.08)!important;transform:translate(-50%,-50%) scale(1.091)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-ring-5{border-color:rgba(91,124,255,.224)!important;box-shadow:0 0 26px rgba(91,124,255,.18),inset 0 0 26px rgba(91,124,255,.08)!important;transform:translate(-50%,-50%) scale(1.103)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-hero-mark{transform:translate(-50%,-50%) scale(1.07) rotate(-1.6deg)!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-hero-mark>div.lb-round{background:radial-gradient(circle,rgba(91,124,255,.3) 0%,rgba(91,124,255,0) 68%)!important;animation:lbBreathe 3.4s ease-in-out infinite!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-hero-mark img{filter:brightness(1.2) saturate(1.16) drop-shadow(0 0 54px rgba(91,124,255,.5)) drop-shadow(0 0 98px rgba(177,140,255,.34))!important}
#root [data-hero]>div:last-child:has(a[href="#grid-bot"].lb-tint-blue:hover) div.lb-hero-mark>div.lb-mark-tint{opacity:.42!important;background:rgb(91,124,255)!important}

/* ---------- Keyframes used by the components ---------- */
@keyframes lbSheen{0%{transform:translateX(-60%) rotate(14deg)}100%{transform:translateX(300%) rotate(14deg)}}@keyframes lbBreathe{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.08);opacity:1}}
@keyframes lbLineDraw{to{stroke-dashoffset:0}}
@keyframes lbMarkIn{0%{opacity:0;transform:scale(.2)}60%{opacity:1;transform:scale(1.35)}100%{opacity:1;transform:scale(1)}}
@keyframes lbFadeIn{to{opacity:1}}
@keyframes lbHeadFade{0%{opacity:0}8%{opacity:1}90%{opacity:1}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){
  [data-chart] *{animation:none!important;opacity:1!important;stroke-dashoffset:0!important;transform:none!important}
  [data-chart-head]{display:none!important}
}
@keyframes lbAlertPulse{0%,100%{transform:scale(1);opacity:.55}50%{transform:scale(2.1);opacity:0}}
