.hub-panel{--hub-tint:208 60% 98%;--hub-tint-strong:208 55% 95%;--hub-line:208 42% 87%;--hub-bubble:0 0% 100%;--hub-bubble-mine:208 78% 94%;background:linear-gradient(180deg, hsl(var(--hub-tint)) 0%, hsl(var(--hub-tint-strong)) 100%);border-color:hsl(var(--hub-line))}.dark .hub-panel{--hub-tint:214 32% 13%;--hub-tint-strong:214 34% 11%;--hub-line:214 28% 24%;--hub-bubble:214 30% 16%;--hub-bubble-mine:210 55% 24%}.hub-panel .hub-line,.hub-panel .hub-line-b{border-color:hsl(var(--hub-line))}.hub-header{background:hsl(var(--hub-tint-strong) / .9)}.hub-aside{background:hsl(var(--hub-tint-strong) / .55)}.hub-bubble{background:hsl(var(--hub-bubble));border-color:hsl(var(--hub-line))}.hub-bubble-mine{background:hsl(var(--hub-bubble-mine));border-color:hsl(var(--hub-line))}.horizon-avatar{isolation:isolate;--hz-x:0;--hz-y:0;--hz-tilt-x:0deg;--hz-tilt-y:0deg;--hz-intensity:0;border-radius:9999px;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.horizon-avatar>*{pointer-events:none;transition:transform .26s cubic-bezier(.22,1,.36,1)}.horizon-svg{filter:drop-shadow(0 6px 14px #07111f8c);width:100%;height:100%;transform:translate3d(calc(var(--hz-x) * 3px), calc(var(--hz-y) * 3px), 0);position:relative;overflow:visible}.horizon-aura{filter:blur(10px);opacity:calc(.7 + var(--hz-intensity) * .2);transform:translate3d(calc(var(--hz-x) * -5px), calc(var(--hz-y) * -5px), 0);background:radial-gradient(circle,#2563eb6b 0%,#2563eb00 68%);border-radius:9999px;position:absolute;inset:-18%}.horizon-field{opacity:.55;background:radial-gradient(circle at 40% 35%,#123c7359 0%,#07111f00 70%);border:1px solid #60a5fa38;border-radius:9999px;position:absolute;inset:-4%}.horizon-field-1{transform:translate3d(calc(var(--hz-x) * 4px), calc(var(--hz-y) * 4px), 0)}.horizon-field-2{opacity:.4;transform:translate3d(calc(var(--hz-x) * 7px), calc(var(--hz-y) * 7px), 0);border-color:#2563eb2e;inset:-10%}.horizon-field-3{opacity:.3;transform:translate3d(calc(var(--hz-x) * 10px), calc(var(--hz-y) * 10px), 0);border-color:#123c7359;inset:-16%}.horizon-space{perspective:220px;transform-style:preserve-3d;transform:rotateX(var(--hz-tilt-x)) rotateY(var(--hz-tilt-y));transition:transform .22s cubic-bezier(.22,1,.36,1);position:absolute;inset:-10%}.horizon-avatar[data-focused=true] .horizon-space{filter:brightness(1.15)}.horizon-orbit{transform-style:preserve-3d;backface-visibility:visible;border:1px solid #60a5fa29;border-radius:9999px;transition:border-color .3s,opacity .3s,box-shadow .3s;position:absolute;inset:0}.horizon-orbit-1{transform:rotateX(72deg)rotateY(6deg)}.horizon-orbit-2{border-color:#2563eb33;inset:6%;transform:rotateX(64deg)rotate(58deg)}.horizon-orbit-3{border-color:#123c7373;inset:-6%;transform:rotateX(78deg)rotate(-42deg)}.horizon-orbit-inner{border-color:#60a5fa24;inset:24%;transform:rotateX(58deg)rotate(24deg)}.horizon-particle{width:6px;height:6px;transform-style:preserve-3d;background:radial-gradient(circle,#93c5fd 0%,#2563eb 60%,#2563eb00 100%);border-radius:9999px;margin-left:-3px;position:absolute;top:-3px;left:50%;box-shadow:0 0 8px #60a5fad9}.horizon-particle-b{top:auto;bottom:-3px}.horizon-particle-c{margin-top:-2px;margin-left:-2px;top:50%;left:0}.horizon-particle-sm{width:4px;height:4px;margin-left:-2px;top:-2px}.horizon-particle-sm.horizon-particle-b{top:auto;bottom:-2px}.horizon-core{transform-origin:50%}.horizon-glow{opacity:.6}.horizon-rim{opacity:.7}.horizon-pulse{opacity:.5;transform-origin:50%}.horizon-pulse-ring{opacity:0;transform-origin:50%}.horizon-filaments{opacity:.55;transform-origin:50%}.horizon-scan-beam{opacity:.85}.horizon-avatar[data-state=active] .horizon-orbit{border-color:#60a5fa57}.horizon-avatar[data-state=thinking] .horizon-orbit{border-color:#2563eb52}.horizon-avatar[data-state=notification] .horizon-orbit{border-color:#93c5fd8c;box-shadow:0 0 12px #60a5fa59}.horizon-avatar[data-state=notification] .horizon-particle{box-shadow:0 0 12px #93c5fdf2}.horizon-avatar[data-state=urgent] .horizon-orbit{border-color:#93c5fdb3;box-shadow:0 0 16px #2563eb80,inset 0 0 10px #60a5fa40}.horizon-avatar[data-state=urgent] .horizon-particle{box-shadow:0 0 14px #93c5fd}.horizon-avatar[data-state=urgent] .horizon-space,.horizon-avatar[data-state=notification] .horizon-space{filter:brightness(1.22)contrast(1.08)}@media (prefers-reduced-motion:no-preference){.horizon-core{animation:5.5s ease-in-out infinite horizon-breathe}.horizon-glow{animation:6.5s ease-in-out infinite horizon-glow}.horizon-aura{animation:7s ease-in-out infinite horizon-aura}.horizon-field-1{animation:9s ease-in-out infinite horizon-field}.horizon-field-2{animation:11s ease-in-out 1.4s infinite horizon-field}.horizon-field-3{animation:13s ease-in-out 2.9s infinite horizon-field}.horizon-scan-beam{will-change:transform;animation:8s cubic-bezier(.4,0,.2,1) infinite horizon-scan}.horizon-pulse{animation:4.5s ease-in-out infinite horizon-pulse}.horizon-filaments{animation:12s ease-in-out infinite horizon-filaments}.horizon-orbit-1{animation:14s linear infinite horizon-spin-1}.horizon-orbit-2{animation:19s linear infinite reverse horizon-spin-2}.horizon-orbit-3{animation:24s linear infinite horizon-spin-3}.horizon-orbit-inner{animation:9s linear infinite reverse horizon-spin-inner}.horizon-particle{will-change:opacity, transform;animation:14s ease-in-out infinite horizon-particle-drift}.horizon-particle-b{animation-delay:-7s}.horizon-particle-c{animation-delay:-3.5s}.horizon-orbit-2 .horizon-particle{animation-duration:19s}.horizon-orbit-3 .horizon-particle{animation-duration:24s}.horizon-orbit-inner .horizon-particle{animation-duration:9s}.horizon-avatar[data-state=active] .horizon-particle{animation-name:horizon-particle-sweep;animation-duration:6.5s;animation-timing-function:cubic-bezier(.36,0,.32,1)}.horizon-avatar[data-state=active] .horizon-orbit-1{animation-duration:9s}.horizon-avatar[data-state=active] .horizon-orbit-inner{animation-duration:6s}.horizon-avatar[data-state=thinking] .horizon-particle{animation-name:horizon-particle-think;animation-duration:2.8s;animation-timing-function:steps(12,end)}.horizon-avatar[data-state=thinking] .horizon-orbit-inner .horizon-particle{animation-duration:1.9s}.horizon-avatar[data-state=thinking] .horizon-orbit-inner{animation-duration:3.4s}.horizon-avatar[data-state=thinking] .horizon-orbit-2{animation-duration:11s}.horizon-avatar[data-state=notification] .horizon-particle{animation-name:horizon-particle-burst;animation-duration:1.6s;animation-timing-function:cubic-bezier(.16,1,.3,1)}.horizon-avatar[data-state=notification] .horizon-orbit-1{animation-duration:8s}.horizon-avatar[data-state=urgent] .horizon-particle{animation-name:horizon-particle-urgent;animation-duration:1.9s;animation-timing-function:ease-in-out}.horizon-avatar[data-state=urgent] .horizon-orbit-1,.horizon-avatar[data-state=urgent] .horizon-orbit-3{animation-duration:7s}.horizon-avatar[data-state=urgent] .horizon-orbit-inner{animation-duration:4.5s}.horizon-avatar[data-state=active] .horizon-scan-beam{animation-duration:5s}.horizon-avatar[data-state=active] .horizon-glow{opacity:.8}.horizon-avatar[data-state=active] .horizon-field-1{animation-duration:6s}.horizon-avatar[data-state=thinking] .horizon-pulse{animation-duration:2.2s}.horizon-avatar[data-state=thinking] .horizon-scan-beam{animation-duration:11s}.horizon-avatar[data-state=thinking] .horizon-filaments{animation-duration:6s}.horizon-avatar[data-state=notification] .horizon-pulse-ring{animation:1.1s ease-out 2 horizon-ping}.horizon-avatar[data-state=notification] .horizon-aura{animation-duration:2.6s}.horizon-avatar[data-state=urgent] .horizon-pulse-ring{animation:2.4s ease-out infinite horizon-ping}.horizon-avatar[data-state=urgent] .horizon-rim{animation:2.4s ease-in-out infinite horizon-rim}}.horizon-avatar[data-state=offline]{filter:saturate(.18)brightness(.82);opacity:.5}.horizon-avatar[data-state=offline] .horizon-aura,.horizon-avatar[data-state=offline] .horizon-scan-beam,.horizon-avatar[data-state=offline] .horizon-pulse,.horizon-avatar[data-state=offline] .horizon-pulse-ring{opacity:.08;animation:none}.horizon-avatar[data-state=offline] .horizon-space{filter:brightness(.7)contrast(.8)}.horizon-avatar[data-state=offline] .horizon-orbit{opacity:.14;box-shadow:none;border-color:#123c7380;animation:none}.horizon-avatar[data-state=offline] .horizon-particle{opacity:.1;box-shadow:none;background:radial-gradient(circle,#123c73 0%,#07111f00 100%);animation:none}@keyframes horizon-particle-drift{0%,to{opacity:.35;transform:translateZ(-14px)scale(.7)}50%{opacity:1;transform:translateZ(14px)scale(1.15)}}@keyframes horizon-particle-sweep{0%{opacity:.2;transform:translateZ(-20px)translate(-4px)scale(.6)}45%{opacity:1;transform:translateZ(18px)translate(0)scale(1.25)}to{opacity:.2;transform:translateZ(-20px)translate(4px)scale(.6)}}@keyframes horizon-particle-think{0%{opacity:.15;transform:translateZ(-10px)scale(.55)}40%{opacity:.9;transform:translateZ(6px)scale(1)}60%{opacity:.4;transform:translateZ(0)scale(.8)}to{opacity:.15;transform:translateZ(-10px)scale(.55)}}@keyframes horizon-particle-burst{0%{opacity:.5;transform:translateZ(0)scale(.8)}25%{opacity:1;transform:translateZ(22px)scale(1.5)}to{opacity:.5;transform:translateZ(0)scale(.8)}}@keyframes horizon-particle-urgent{0%,to{opacity:.7;transform:translateZ(-6px)scale(.9)}50%{opacity:1;transform:translateZ(10px)scale(1.35)}}@keyframes horizon-spin-1{0%{transform:rotateX(72deg)rotateY(6deg)rotate(0)}to{transform:rotateX(72deg)rotateY(6deg)rotate(360deg)}}@keyframes horizon-spin-2{0%{transform:rotateX(64deg)rotate(58deg)}to{transform:rotateX(64deg)rotate(418deg)}}@keyframes horizon-spin-3{0%{transform:rotateX(78deg)rotate(-42deg)}to{transform:rotateX(78deg)rotate(318deg)}}@keyframes horizon-spin-inner{0%{transform:rotateX(58deg)rotate(24deg)}to{transform:rotateX(58deg)rotate(384deg)}}@keyframes horizon-breathe{0%,to{transform:scale(.985)}50%{transform:scale(1.02)}}@keyframes horizon-glow{0%,to{opacity:.45}50%{opacity:.78}}@keyframes horizon-aura{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.85;transform:scale(1.05)}}@keyframes horizon-field{0%,to{opacity:.32;transform:scale(1)translate(0)}35%{opacity:.5;transform:scale(1.035)translate(.6%,-.8%)}70%{opacity:.4;transform:scale(.985)translate(-.7%,.6%)}}@keyframes horizon-scan{0%{opacity:0;transform:translate(0)}8%{opacity:.9}62%{opacity:.9;transform:translate(135px)}72%{opacity:0;transform:translate(148px)}to{opacity:0;transform:translate(148px)}}@keyframes horizon-pulse{0%,to{opacity:.35;transform:scale(.6)}50%{opacity:.85;transform:scale(1.35)}}@keyframes horizon-ping{0%{opacity:.8;transform:scale(.5)}to{opacity:0;transform:scale(2.6)}}@keyframes horizon-rim{0%,to{opacity:.5}50%{opacity:1}}@keyframes horizon-filaments{0%,to{opacity:.45;transform:translateY(.6%)}50%{opacity:.65;transform:translateY(-.8%)}}.horizon-fab{right:20px;bottom:calc(20px + env(safe-area-inset-bottom));background:0 0;border:0;width:62px;min-width:48px;height:62px;min-height:48px;padding:0;transition:transform .22s cubic-bezier(.4,0,.2,1),filter .22s}@media (width<=767px){.horizon-fab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));width:52px;height:52px}.horizon-fab .horizon-fab-avatar{width:52px!important;height:52px!important}}.horizon-fab:hover{filter:brightness(1.08);transform:translateY(-3px)scale(1.04)}.horizon-fab:active{transform:translateY(0)scale(.97)}
