:root{--fh-bg:#fff;--fh-bg2:#fff;--fh-text:#0f172a;--fh-dim:#64748b;--fh-panel:#fff;--fh-panel2:#f8fafc;--fh-border:#e2e8f0;--fh-line:#f1f5f9;--fh-accent:#047857;--fh-accent2:#0e7490;--fh-live:#4d7c0f;--fh-warn:#dc2626;--fh-amber:#b45309;--fh-glow:none;--fh-blur:0px;--fh-radius:16px;--fh-e:cubic-bezier(.16, 1, .3, 1)}.fh-root{--fh-font-hud:var(--font-fh-hud,"Chakra Petch"), sans-serif;--fh-font-ui:var(--font-fh-ui,"Space Grotesk"), system-ui, sans-serif;--fh-font-mono:var(--font-fh-mono,"Space Mono"), ui-monospace, monospace;--fh-canvas:radial-gradient(1200px 800px at 20% -10%, #0b1630 0%, transparent 55%), radial-gradient(1000px 700px at 100% 10%, #0a1e1a 0%, transparent 50%);--fh-bg:#04060c;--fh-bg2:#080d18;--fh-text:#eaf1ff;--fh-dim:#eaf1ff8c;--fh-panel:#ffffff0b;--fh-panel2:#ffffff05;--fh-border:#ffffff1a;--fh-line:#ffffff0f;--fh-accent:#35e07f;--fh-accent2:#3fe0ff;--fh-live:#c6ff4d;--fh-warn:#ff5a52;--fh-amber:#ffc24b;--fh-glow:0 0 26px #35e07f52;--fh-blur:14px;--fh-radius:16px;--fh-e:cubic-bezier(.16, 1, .3, 1);color:var(--fh-text);font-family:var(--fh-font-ui), "Space Grotesk", system-ui, sans-serif;-webkit-font-smoothing:antialiased}.fh-root *,.fh-root :before,.fh-root :after{box-sizing:border-box}.fh-root[data-fh-theme=glass]{--fh-accent:#b98cff;--fh-accent2:#59e6ff;--fh-live:#59e6ff;--fh-glow:0 8px 40px #966eff4d;--fh-blur:26px;--fh-panel:#ffffff14;--fh-border:#ffffff2b}.fh-root[data-fh-theme=bento]{--fh-accent:#ffc24b;--fh-accent2:#35e07f;--fh-live:#35e07f;--fh-glow:0 6px 22px #00000080;--fh-blur:8px;--fh-panel:#ffffff0d;--fh-border:#ffffff17}.fh-root[data-fh-theme=minimal]{--fh-accent:#eaf1ff;--fh-accent2:#eaf1ff8c;--fh-live:#eaf1ff;--fh-glow:0 1px 0 #ffffff0f;--fh-blur:6px;--fh-panel:#ffffff08;--fh-border:#ffffff14}.fh-hud{font-family:var(--fh-font-hud), "Chakra Petch", sans-serif}.fh-mono{font-family:var(--fh-font-mono), "Space Mono", monospace}.fh-panel{border:1px solid var(--fh-border);background:var(--fh-panel);-webkit-backdrop-filter:blur(var(--fh-blur));border-radius:var(--fh-radius)}.fh-panel-flat{border:1px solid var(--fh-border);background:var(--fh-panel);border-radius:var(--fh-radius)}.fh-panel,.fh-panel-flat{transition:transform .18s var(--fh-e), border-color .2s var(--fh-e), box-shadow .2s var(--fh-e)}:is(a,button,[role=button],[role=link]):hover>.fh-panel,:is(a,button,[role=button],[role=link]):hover>.fh-panel-flat,a.fh-panel:hover,a.fh-panel-flat:hover,button.fh-panel:hover,button.fh-panel-flat:hover{border-color:#ffffff38;transform:translateY(-2px);box-shadow:0 12px 30px -14px #000000b3}:is(a,button):active>.fh-panel,:is(a,button):active>.fh-panel-flat,a.fh-panel:active,button.fh-panel:active{transform:translateY(0)scale(.99)}.fh-stagger>*{animation:fhIn .5s var(--fh-e) both}.fh-stagger>:first-child{animation-delay:30ms}.fh-stagger>:nth-child(2){animation-delay:70ms}.fh-stagger>:nth-child(3){animation-delay:.11s}.fh-stagger>:nth-child(4){animation-delay:.15s}.fh-stagger>:nth-child(5){animation-delay:.19s}.fh-stagger>:nth-child(6){animation-delay:.23s}.fh-stagger>:nth-child(7){animation-delay:.27s}.fh-stagger>:nth-child(8){animation-delay:.31s}.fh-stagger>:nth-child(n+9){animation-delay:.35s}.fh-cta{position:relative}.fh-cta:after{content:"";border:2px solid var(--fh-accent);opacity:0;pointer-events:none;border-radius:50%;width:60px;height:60px;margin:-30px 0 0 -30px;position:absolute;top:50%;left:50%;transform:scale(.2)}.fh-cta:active:after{animation:.6s ease-out fhBurst}.fh-float-glow{pointer-events:none;background:radial-gradient(circle, var(--fh-accent), transparent 70%);opacity:.18;filter:blur(10px);border-radius:50%;animation:5s ease-in-out infinite fhFloat;position:absolute}@keyframes fhOrb{to{transform:rotate(360deg)}}@keyframes fhDrift{to{background-position:64px 64px}}@keyframes fhScan{0%{transform:translateY(-10vh)}to{transform:translateY(120vh)}}@keyframes fhIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fhInR{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:none}}@keyframes fhPop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}@keyframes fhRise{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes fhLive{0%{box-shadow:0 0 #35e07f8c}70%{box-shadow:0 0 0 9px #35e07f00}to{box-shadow:0 0 #35e07f00}}@keyframes fhBase{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}@keyframes fhShim{to{background-position:220% 0}}@keyframes fhFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes fhBurst{0%{opacity:.9;transform:scale(.2)}to{opacity:0;transform:scale(2.6)}}@keyframes fhFeed{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}.fh-in{animation:fhIn .6s var(--fh-e) both}.fh-pop{animation:fhPop .7s var(--fh-e) both}.fh-feed-item{animation:.45s both fhFeed}.fh-live-dot{background:var(--fh-live);border-radius:50%;animation:1.8s ease-out infinite fhLive}@media (prefers-reduced-motion:no-preference){.fh-route-slide{will-change:transform, opacity;animation:.3s cubic-bezier(.2,.72,.2,1) both fhRouteSlide}.fh-route-slide.fh-route-fwd{animation-name:fhRouteSlide}.fh-route-slide.fh-route-back{animation-name:fhRouteSlideBack}}@keyframes fhRouteSlide{0%{opacity:.5;transform:translate(100%)}to{opacity:1;transform:translate(0,0)}}@keyframes fhRouteSlideBack{0%{opacity:.5;transform:translate(-100%)}to{opacity:1;transform:translate(0,0)}}.fh-root :is(input,select,textarea,button,a,[tabindex]):focus-visible{outline:2px solid var(--fh-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.fh-root *,.fh-root :before,.fh-root :after{transition:none!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
