@keyframes pulseRing{0%{stroke-width:6;opacity:.1}to{stroke-width:12;opacity:.3}}@keyframes pulseBorder{0%{box-shadow:0 0 10px #7b5ea70d}to{box-shadow:0 0 30px #7b5ea733}}@keyframes alertPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes ambientGlow{0%,to{background-position:0% 0%}50%{background-position:100% 100%}}.hover-lift{transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s cubic-bezier(.34,1.56,.64,1)!important;cursor:default}.hover-lift:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 32px #0000004d,inset 0 1px #ffffff14!important}.chart-tab{padding:5px 12px;border-radius:20px;border:none;font-size:10px;font-weight:700;cursor:pointer;letter-spacing:.05em;text-transform:uppercase;transition:all .2s;white-space:normal;line-height:1.2}.chart-tab:focus-visible{outline:3px solid var(--accent-primary, #7B5EA7);outline-offset:2px}.chart-tab-active{background:var(--accent-primary, #7B5EA7);color:#fff;box-shadow:0 2px 8px #7b5ea766}.chart-tab-inactive{color:var(--text-dim, #475569)}.alert-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:24px;white-space:nowrap;flex-shrink:0;animation:slideInRight .4s ease-out both}.alert-strip::-webkit-scrollbar{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.a11y-hit-target{position:relative}.a11y-hit-target:after{content:"";position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-50%)}@keyframes skeletonShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-loader{display:flex;flex-direction:column;gap:12px;padding:20px}.skeleton-block{border-radius:12px;background:linear-gradient(90deg,#ffffff08 25%,#ffffff0f,#ffffff08 75%);background-size:200% 100%;animation:skeletonShimmer 1.5s ease-in-out infinite}
