.volu-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-weight:500;font-size:.95rem;padding:11px 26px;letter-spacing:.02em;border:1.5px solid transparent;border-radius:var(--ui-radius-pill);cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .25s var(--ui-ease),box-shadow .25s var(--ui-ease),background .25s var(--ui-ease),border-color .25s var(--ui-ease),color .25s var(--ui-ease)}.volu-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.volu-button--small{font-size:.82rem;padding:7px 16px;font-weight:400}.volu-button--large{font-size:1.05rem;font-weight:500;padding:16px 40px;letter-spacing:.04em}.volu-button--solid{color:var(--ui-color-on-accent);background:linear-gradient(135deg,var(--ui-color-accent),var(--ui-color-accent-deep));box-shadow:0 8px 24px -8px var(--ui-color-accent-shadow)}.volu-button--solid:hover{background:linear-gradient(135deg,var(--ui-color-accent-hover),var(--ui-color-accent-deep));transform:translateY(-2px);box-shadow:0 12px 30px -8px var(--ui-color-accent-shadow)}.volu-button--outline{color:var(--ui-color-text-strong);background:transparent;border-color:var(--ui-border-strong)}.volu-button--outline:hover{background:var(--ui-overlay-hover);border-color:var(--ui-color-text-strong);transform:translateY(-2px)}.volu-button--text{color:var(--ui-color-highlight);background:transparent;padding-left:12px;padding-right:12px}.volu-button--text:hover{color:var(--ui-color-highlight-hover);background:var(--ui-overlay-faint)}.volu-button--shine{position:relative;overflow:hidden}.volu-button--shine:before{content:"";position:absolute;top:-180px;left:0;width:34px;height:100%;background:var(--ui-shine-color);transform:scale(0) rotate(45deg);animation:volu-button-shine 3s ease-in-out infinite;pointer-events:none}.volu-button--shine:active{box-shadow:inset 4px 4px 8px rgba(0,0,0,.28),inset -3px -3px 8px rgba(255,255,255,.25)}@keyframes volu-button-shine{0%{transform:scale(0) rotate(45deg);opacity:0}80%{transform:scale(0) rotate(45deg);opacity:.5}81%{transform:scale(4) rotate(45deg);opacity:1}to{transform:scale(50) rotate(45deg);opacity:0}}@media (prefers-reduced-motion:reduce){.volu-button--shine:before{animation:none}}